[ZP] Class: Sniper Zombie
This class is a zombie AWP with 10 bullet.
When hitting a bullet into the man he becomes a zombie too.
PHP Code:
#include <amxmodx>
#include <fakemeta>
#include <zombieplague>
#include <cstrike>
#include <fun>
new g_zclassid1, cvar_ammo, cvar_fov
new const model_weapon_mac10[] = "models/v_mac10.mdl"
new g_zombies_fov
public plugin_init()
{
register_plugin("[ZP] Class: Sniper Zombie", "0.3", "Zombie-rus")
cvar_ammo = register_cvar("zp_ammo_bullets", "0")
cvar_fov = register_cvar("zp_class_fov", "135")
}
public plugin_precache()
{
g_zclassid1 = zp_register_zombie_class("Sniper Zombie", "has mac10+", "zombie_source", "v_knife_zombie.mdl", 1200, 220, 1.0, 1.0)
engfunc(EngFunc_PrecacheModel, model_weapon_mac10)
}
public plugin_cfg()
{
g_zombies_fov = get_cvar_pointer("zp_zombie_fov")
}
public zp_user_infected_post(id, infector)
{
if (zp_get_user_zombie_class(id) == g_zclassid1)
{
strip_user_weapons(id)
give_item(id, "weapon_mac10")
cs_set_user_bpammo(id, CSW_MAC10, get_pcvar_num(cvar_ammo))
new weapon = get_user_weapon(id)
if (weapon == CSW_MAC10)
{
set_pev(id, pev_viewmodel2, model_weapon_mac10)
}
msg_one_unreliable(id)
}
}
public msg_one_unreliable(id)
{
if (zp_get_user_zombie_class(id) == g_zclassid1)
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SetFOV"), {0,0,0}, id)
write_byte(get_pcvar_num(cvar_fov))
message_end()
}
else
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SetFOV"), {0,0,0}, id)
write_byte(g_zombies_fov) // fov angle
message_end()
}
}