Jest to poradnik dla ludzi którzy raczej nie są specjalistami w nowym codzie i się im to przyda. Poradnik opiera się na moim eksperymencie
Zaczynamy.
Otwórz plik z rozszerzeniem .sma klasy która ma mieć nieskończoną amunicję np. codclass_kozak.sma
Do :
#include <amxmodx> #include <codmod>
Dodaj:
#include <fakemeta> #define DMG_BULLET (1<<1) new bool:ma_klase[33];
Ta część ma wyglądać tak:
#include <amxmodx> #include <codmod> #include <fakemeta> #define DMG_BULLET (1<<1) new bool:ma_klase[33]; new const nazwa[] = "Kozak"; new const opis[] = "Nieskonczona amunicja"; new const bronie = 1<<CSW_MP5NAVY | 1<<CSW_FIVESEVEN; new const zdrowie = 10; new const kondycja = -40; new const inteligencja = 0; new const wytrzymalosc = 0;
Teraz zajmijmy się kodem w publicu "plugin_init()":
Do tego kodu:
{ register_plugin(nazwa, "1.0", "QTM_Peyote"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); }
Dodajemy:
register_event("CurWeapon","CurWeapon","be", "1=1");
Aby wyglądało to tak:
public plugin_init() { register_plugin(nazwa, "1.0", "QTM_Peyote"); cod_register_class(nazwa, opis, bronie, zdrowie, kondycja, inteligencja, wytrzymalosc); register_event("CurWeapon","CurWeapon","be", "1=1"); }
Teraz wystarczy tylko wkleić te public'i:
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; }
Nasza klasa gotowa, oczywiście klasa może mieć jeszcze inną moc.
Poradnik by BliBs_Pl, kopiowanie za zgodą