Witam, napisałem klasę która ma bezlik ammo (powklejane, przerobione gotowce) i dodałem do niego również task na 5sek jednakże bezlik ammo zamiast działać po użyciu skilla działa cały czas i po naciśnięciu E pasek leci a bezlik sie nie wyłącza potem
Prośba moja taka, żeby ktoś poprawił tak, żeby:
Na początku nie było bezliku ammo
Po naciśnięciu E (tak jak np. niewidka przy predatorze czy nieśmiertelność) był ten pasek który jest i przez ten czas działał bezlik ammo
Po skończeniu normalnie traci amunicje
Klasa:
#include <amxmodx> #include <amxmisc> #include <codmod> #include <fun> #include <ColorChat> #include <fakemeta> #define CZAS_BEZLIK 5 #pragma tabsize 0 new const nazwa[] = "Szturmowiec"; new const opis[] = "Bezlik ammo na 5 sekund"; new const bronie = (1<<CSW_SMOKEGRENADE)|(1<<CSW_M4A1)|(1<<CSW_DEAGLE); new const zdrowie = 0; new const kondycja = 0; new const inteligencja = 0; new const wytrzymalosc = 0; new const pancerz = 20; new bool:wykorzystal[33]; new bool:ma_klase[33]; new msg_bartime; public plugin_init() { register_plugin(nazwa, "1.0", "amxx.pl"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc, pancerz); msg_bartime = get_user_msgid("BarTime"); register_event("ResetHUD", "ResetHUD", "abe"); register_event("CurWeapon","CurWeapon","be", "1=1"); } public cod_class_enabled(id) { ma_klase[id] = true; ResetHUD(id); give_item(id, "weapon_smokegrenade"); } public cod_class_disabled(id) ma_klase[id] = false; public CurWeapon(id) { if(!is_user_connected(id)) return; if(!ma_klase[id]) return; set_user_clip(id, 2); } stock set_user_clip(id, ammo) { new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _); get_weaponname(weapon, weaponname, 31); while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0) if (pev(weaponid, pev_owner) == id) { set_pdata_int(weaponid, 51, ammo, 4); return weaponid; } return 0; } public cod_class_skill_used(id) { if(!is_user_alive(id)) return; if(wykorzystal[id]) { ColorChat(id, RED, "Wykorzystales juz bezlik ammo."); return; } wykorzystal[id] = true; set_user_clip(id, 1); set_user_rendering(id, kRenderFxGlowShell, 255, 0, 0); set_task(CZAS_BEZLIK.0, "WylaczBezlik", id); message_begin(MSG_ONE, msg_bartime, _, id) write_short(CZAS_BEZLIK) message_end() } public WylaczBezlik(id) { if(!is_user_connected(id)) return; set_user_clip(id, 0); set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0); } public ResetHUD(id) wykorzystal[id] = false;