1.Widzialność "niewidzialnych":
Spoiler
Wymagane moduły:
Wymagane moduły:
#include <amxmodx> #include <fakemeta> #include <codmod>Nad public plugin_init() dodajemy:
new ma_klase[33];Do Public plugin_init() dodajemy:
register_forward(FM_AddToFullPack, "FwdAddToFullPack", 1)Cod_class_enabled(id) oraz Cod_class_enabled(id) edytujemy, aby otrzymać:
public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; }na końcu dodajemy:
public FwdAddToFullPack(es_handle, e, ent, host, hostflags, player, pSet) { if(!is_user_connected(host) || !is_user_connected(ent)) return; if(!ma_klase[host]) return; set_es(es_handle, ES_RenderAmt, 255.0); }
2. Szybkostrzelnosc:
Spoiler
Wymagane moduły:
Wymagane moduły:
#include <amxmodx> #include <engine> #include <fakemeta_util> #include <codmod>Nad public plugin_init() dodajemy:
static const g_szWpnEntNames[] = { "", "weapon_p228", "", "weapon_scout", "weapon_hegrenade", "weapon_xm1014", "weapon_c4", "weapon_mac10", "weapon_aug", "weapon_smokegrenade", "weapon_elite", "weapon_fiveseven", "weapon_ump45", "weapon_sg550", "weapon_galil", "weapon_famas", "weapon_usp", "weapon_glock18", "weapon_awp", "weapon_mp5navy", "weapon_m249", "weapon_m3", "weapon_m4a1", "weapon_tmp", "weapon_g3sg1", "weapon_flashbang", "weapon_deagle", "weapon_sg552", "weapon_ak47", "weapon_knife", "weapon_p90" }Do public plugin_init() dodajemy:
register_event("CurWeapon","CurWeapon","be", "1=1");Cod_class_enabled(id) oraz Cod_class_disabled edytujemy tak, aby otrzymać:
public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; }Na końcu dodajemy:
public CurWeapon(id) { if(!is_user_connected(id) || !is_user_alive(id) || !ma_klase[id]) return PLUGIN_CONTINUE; new iEnt; static Float:fSpeedMultiplier; fSpeedMultiplier = floatdiv(1.0, 1.0+(float(X)/100.0)); // LICZBĘ "X" ZMIENIAMY NA SWOJĄ. (ja ustawiam 50 i jest około 2x szybciej) for (new i = 1; i < sizeof g_szWpnEntNames; i++) { iEnt = fm_find_ent_by_owner(-1, g_szWpnEntNames[i], id) if(iEnt) { set_pdata_float( iEnt, 46, ( get_pdata_float(iEnt, 46, 4) * fSpeedMultiplier), 4 ); set_pdata_float( iEnt, 47, ( get_pdata_float(iEnt, 47, 4) * fSpeedMultiplier), 4 ); } } return PLUGIN_CONTINUE; }
3. "Twardy baniak":
Spoiler
Wymagane moduły:
Wymagane moduły:
#include <amxmodx> #include <fakemeta> #include <codmod>Pod modułami dopisujemy:
#define DMG_BULLET (1<<1)Pod spodem:
new ma_klase[33]Cod_class_enabled(id) oraz Cod_class_disabled edytujemy tak, aby otrzymać:
public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; }Do public plugin_init() dopisujemy:
register_forward(FM_TraceLine, "TraceLine");Na końcu dodajemy:
public TraceLine(Float:start[3], Float:end[3], conditions, id, trace) { if(get_tr2(trace, TR_iHitgroup) != HIT_HEAD) return FMRES_IGNORED; new iHit = get_tr2(trace, TR_pHit); if(!is_user_connected(iHit)) return FMRES_IGNORED; if(!ma_klase[iHit]) return FMRES_IGNORED; set_tr2(trace, TR_iHitgroup, 8); return FMRES_IGNORED; }
4.Odporność na dynamity, miny i rakiety:
Spoiler
Wymagane moduły:
Wymagane moduły:
#include <amxmodx> #include <codmod> #include <hamsandwich> #include <fakemeta>na public plugin_init() dodajemy:
new ma_klase[33];Do public plugin_init() dodajemy:
RegisterHam(Ham_TakeDamage, "player", "TakeDamage")Cod_class_enabled(id) oraz Cod_class_disabled(id) edytujemy tak, aby otrzymać:
public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; }Na końcu dodajemy:
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!ma_klase[this]) return HAM_IGNORED; new classname[10] pev(idinflictor, pev_classname, classname, 9); if(equal(classname, "mine") || equal(classname, "rocket") || equal(classname, "dynamite")) return HAM_SUPERCEDE; return HAM_IGNORED; }
5.Odporność na perki i moce klas:
Spoiler
Wymagane moduły:
Wymagane moduły:
#include <amxmodx> #include <codmod> #include <hamsandwich> #include <fakemeta>Nad public plugin_init() dodajemy:
RegisterHam(Ham_TakeDamage, "player", "TakeDamage")Cod_class_enabled(id) oraz Cod_class_disabled(id) edytujemy tak, aby otrzymać:
public cod_class_enabled(id) { ma_klase[id] = true; } public cod_class_disabled(id) { ma_klase[id] = false; }Na końcu dodajemy:
public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits) { if(!is_user_connected(idattacker)) return HAM_IGNORED; if(!ma_klase[this]) return HAM_IGNORED; if(damagebits & DMG_CODSKILL) return HAM_SUPERCEDE; return HAM_IGNORED; }