←  Pluginy AMXX

AMXX.pl: Support AMX Mod X i SourceMod

»

[DeathRun] DeathOrFree by SeeK

  • +
  • -
SeeK - zdjęcie SeeK 08.07.2011

Dołączona grafika
Posiadając własny serwer DeathRun zapewne często musiałeś zmagać się z nieprzestrzeganiem przez graczy zasad modu FreeRun. Jak sądzę, posiadasz plugin "Use Button Once", aczkolwiek terrorysta może tutaj wpisać komendę: "/free" w dowolnym momencie(np. pod koniec rundy, gdy każdy już przeszedł mape, a pułapki zostały włączone). A nawet gdy wpisze ją na samym początku, to nie pozwoli odebrać sobie życia do wartości przybliżonej 25hp. Jeżeli borykasz się z takim oto problemem, to ten plugin jest dla Ciebie.

Na czym polega zasada działania tego dodatku? Na początku każdej rundy, na ekranie terrorysty wyświetla się menu z wyborem:

1. DeathRun
2. FreeRun

Jeżeli gracz wybierze opcję pierwszą, plugin wyświetli tylko informacje ">>>Gramy normalny DeathRun<<<". Natomiast gdy wybierze opcję drugą, plugin zablokuje możliwość użycia pułapek, podnoszenia/używania broni, a także ustawi wartość życia terrorysty na 25HP. Blokowane jest także włączenie modu Free, jeżeli została już użyta pułapka.

Dołączona grafika
Dołączona grafika Dołączona grafika

Dołączona grafika Dołączona grafika

Dołączona grafika
DeathOrFree działa w oparciu o plugin "Free++" autorstwa R3X+G[o]Q.
Dlatego, żeby wszystko poprawnie się sprawowało, trzeba wgrać na serwer obydwa dodatki.
Plugin "Free+" zawiera kilka niepotrzebnych rzeczy, które można usunąć, aczkolwiek nie chciałem ingerować w czyjąś pracę.

Dołączona grafika
Przedstawię tutaj cvary zarówno z pluginu DeathOrFree jak i Free++.
dr_free_onof 1/0 // Włącz/Wyłącz możliwość gry rundy Free (domyślnie: 1)
dr_frmenu_time <sec> // Czas terrorysty na wybranie modu Free(domyślnie: 20)
dr_thunder 1/0 // Włącz/Wyłącz grafikę pioruna podczas śmierci gracz
dr_auto_resp 1/0 // Włącz/Wyłącz respienie się gracza po śmierci

Dołączona grafika
Załączony plik  DeathOrFree.rar   21,5 KB   884 Ilość pobrań
Załączony plik  DeathOrFree.amxx   7,97 KB   54 Ilość pobrań
Załączony plik  DeathOrFree.sma   2,96 KB   519 Ilość pobrań
Użytkownik SeeK edytował ten post 09.07.2011 14:50
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 09.07.2011

hmm a po co t aki plugin skoro moj dziala tak samo i te niepotrzebne rzeczy sie cvarami wylacza ??
pozatym ustawianie hp jest lipne bo gosc moze przejsc mape ze 100 hp lepszym rozwiazaniem bylo by np sprawdzenie odleglosci graczy od siebie i jak sa blisko i nie ma miedzy nimi przeszkod to ustawic im po 100 hp :D
Odpowiedz

  • +
  • -
SeeK - zdjęcie SeeK 09.07.2011

Jak działa tak samo? Masz gdzieś menu z wyborem rudny Death albo Free? Rundę Freerun można w Twoim pluginie włączyć w każdym momencie gry, nie ma żadnych ograniczeń czasowych. Mod DeathRun polega na tym, że terrorysta ma 100hp, tylko jeżeli jest runda free to ma 25.

Zresztą ten plugin, jest taką otoczką wokół Twojego. Dodaje nowe funkcje, których "Free++" nie zawiera. Tak jakby kontroluje Twój plugin
Użytkownik SeeK edytował ten post 09.07.2011 14:56
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 20.07.2011

powiedz mi jakich funkcji moj plugin nie ma ?

-menu ? :zbedne
-jak uzyjesz pulapki to free juz nie włączysz proste :D
Odpowiedz

  • +
  • -
SeeK - zdjęcie SeeK 24.07.2011

Nie ustawia życia terrorysty podczas rundy free na wartość 25hp. A żeby takie coś mogło zaistnieć potrzebne jest menu na początku rundy. Zawsze można też sprawdzać, czy któryś z CT przeszedł mapę i czy w tym czasie nie została włączona żadna pułapka, ale to by było bardziej skomplikowane.
Odpowiedz

ogury - zdjęcie ogury 27.08.2011

A gdzie plugin free++ znajdę?
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 27.08.2011

pod koniec tematu use button once nie chcialem plagiatu R3X'owi robic to zostal tam :D
Odpowiedz

  • +
  • -
Hiroshima - zdjęcie Hiroshima 27.08.2011

cvary tutaj: http://amxx.pl/topic...ie-button-once/
plugin tutaj: http://amxx.pl/topic...post__p__281869

uzywalem tego przez pol roku i nie mialem nigdy zadnych problemow.
Odpowiedz

  • +
  • -
SeeK - zdjęcie SeeK 28.08.2011

Jest także wrzucony w paczce w tym temacie ; )
Odpowiedz

  • +
  • -
kubq - zdjęcie kubq 26.12.2011

dasz podstawowe 100 hp pls bo ja to na dr xp moda chciałem wgrać a co do pluginu spoko
Odpowiedz

  • +
  • -
SAL - zdjęcie SAL 26.02.2012

@UP nie wiem czy dobrze ale chyba tak - podstawa 101hp
#include <amxmodx>
#include <fun>
#include <fakemeta>
#include <colorchat>
#include <hamsandwich>
#include <cstrike>
#define PLUGIN "DeathOrFree"
#define VERSION "2.1"
#define AUTHOR "SeeK"
new a
new c = 0
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar("dr_frmenu_time","20");
register_cvar("dr_free_onof","1");
register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
register_forward(FM_PlayerPreThink, "MAX_HP")
RegisterHam(Ham_Use, "func_button","Dotyk_buttona");
RegisterHam(Ham_Use, "func_rot_button","Dotyk_buttona");
RegisterHam(Ham_Use, "button_target","Dotyk_buttona");
RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1)
}
public Poczatek_Rundy()
{
c = 0
}

public MAX_HP(id){
new Float:Health;
pev(id, pev_health, Health);

if(Health < 101) return;

set_pev(id, pev_health, 100.0);
}
public Dotyk_buttona(this, idcaller, idactivator, use_type, Float:value){
c = 1
}

public fwHamPlayerSpawnPost(id){
if (!is_user_alive(id))
return;

new CsTeams:name
name = cs_get_user_team(id)
if ( name == CS_TEAM_CT )
set_user_health(id, 101)

if(cs_get_user_team(id) == CS_TEAM_T)
{
menu(id)
}
}
public menu(id)
{
a = get_systime()
new menu = menu_create("\yWybierz mod:", "wybieranie")
new Szare = menu_makecallback("zablokowane")
menu_additem(menu, "\rDeathRun", "1", 0,Szare)
menu_additem(menu, "\wFreeRun", "2", 0,Szare)

menu_setprop(menu, MPROP_EXIT, MEXIT_NEVER)
menu_setprop(menu, MPROP_NUMBER_COLOR, "\y")

menu_display(id, menu, 0)
}
public wybieranie(id, menu, item)
{
new Czas = get_cvar_num("dr_frmenu_time"); // Ustawienie długości czasu - w sekundach - do wpisania FreeRun
new data[6], iName[64]
new acces, callback

menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback)

new key = str_to_num(data)

switch(key)
{
case 1:{
ColorChat(0, RED, "Gramy normalny >>DeathRun<<")
menu_destroy(menu)
return PLUGIN_CONTINUE
}

case 2:{
new b = get_systime()
if(b - a < Czas)
{
if(c == 0)
{
ColorChat(0, GREY, "Gramy mod >>FreeRun<<")
client_cmd(id, "say /plugindeathorfree")
set_user_health(id, 101)
}
else
{
ColorChat(0, RED, "Gramy normalny >>DeathRun<<")
client_print(id, print_chat, "Nacisnales juz przycisk")
}
}
else
{
ColorChat(0, RED, "Gramy normalny >>DeathRun<<")
client_print(id, print_chat, "Czas wyboru minal")
}
menu_destroy(menu)
return PLUGIN_CONTINUE
}
}
menu_destroy(menu)
return PLUGIN_CONTINUE
}
public zablokowane(id, menu, item){
if(item==1)
{
if(get_cvar_num("dr_free_onof") == 0)
{
return ITEM_DISABLED;
}
}
return ITEM_ENABLED;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Odpowiedz