PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <zombieplague>
#include <amxmodx>
new const zclass10_name[] = { "Admin Zombie" }
new const zclass10_info[] = { "(So para Admins)" }
new const zclass10_model[] = { "adm_mendez" }
new const zclass10_clawmodel[] = { "v_knife_nemesisR3.mdl" }
const zclass10_health = 2000
const zclass10_speed = 450
const Float:zclass10_gravity = 0.6
const Float:zclass10_knockback = 0.0
new const zname2[] = { "Noob Zombie" }
new const zinfo2[] = { "(Feito para voce !)" }
new const zmodel2[] = { "zombie_source" }
new const zweapmodel2[] = { "v_knife_zombie.mdl" }
const zhealth2 = 1;
const zspeed2 = 1;
const Float:zgravity2 = 10.0;
const Float:zknockback2 = 20.9;
new g_zclass10_noclip, g_zclass_noclip_cooldown, g_zclass_noclip_long
new Float:g_zclass_noclip_time[33]
new g_normal
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_cvar("zp_zclass_noclip_zombie",VERSION,FCVAR_SERVER|FCVAR_EXTDLL|FCVAR_UNLOGGED|FCVAR_SPONLY)
register_concmd("+noclip","cmd_noclip", ADMIN_USER, "bind SHIFT +noclip")
register_clcmd("-noclip","cmd_off")
g_zclass_noclip_cooldown = register_cvar("zp_noclip_cooldown", "0.0")
g_zclass_noclip_long = register_cvar("zp_noclip_long", "999.0")
}
public plugin_precache()
{
g_zclass10_noclip = zp_register_zombie_class(zclass10_name, zclass10_info, zclass10_model, zclass10_clawmodel, zclass10_health, zclass10_speed, zclass10_gravity, zclass10_knockback)
g_normal = zp_register_zombie_class(zname2, zinfo2, zmodel2, zweapmodel2, zhealth2, zspeed2, zgravity2, zknockback2);
}
public zp_user_infected_post(id, infector)
{
if (zp_get_user_zombie_class(id) == g_zclass10_noclip)
{
if (!is_user_admin(id))
{
zp_set_user_zombie_class(id, g_normal)
client_print(id, print_chat, "[ZP] Sua classe e [Noob Zombie] porque voce nao e Admin.")
}
else {
client_print(id, print_chat, "[ZP] Voce selecionou [Admin Zombie]")
}
}
}
public cmd_noclip(id)
{
if (!is_user_alive(id) || !zp_get_user_zombie(id))
return PLUGIN_HANDLED
if (zp_get_user_zombie_class(id) != g_zclass10_noclip)
return PLUGIN_CONTINUE
fm_set_user_noclip(id, 1)
g_zclass_noclip_time[id] = get_gametime()
if (get_gametime() - g_zclass_noclip_time[id] < get_pcvar_float(g_zclass_noclip_cooldown))
return PLUGIN_HANDLED
return PLUGIN_CONTINUE
}
public cmd_off(id)
{
if (!is_user_alive(id) || !zp_get_user_zombie(id))
return PLUGIN_HANDLED
if (zp_get_user_zombie_class(id) != g_zclass10_noclip)
return PLUGIN_CONTINUE
fm_set_user_noclip(id, 0)
set_task(get_pcvar_float(g_zclass_noclip_long), "cmd_off", id)
if (get_gametime() - g_zclass_noclip_time[id] < get_pcvar_float(g_zclass_noclip_cooldown))
return PLUGIN_HANDLED
return PLUGIN_CONTINUE
}
stock fm_set_user_noclip(index, noclip = 0)
{
set_pev(index, pev_movetype, noclip == 1 ? MOVETYPE_NOCLIP : MOVETYPE_WALK);
return 1;
}
public check(id)
{
if (zp_get_user_zombie_class(id) == g_zclass10_noclip)
{
new name[32]
get_user_name(id, name, 31)
set_hudmessage(255, 0, 0, 0.05, 0.45, 1, 0.0, 5.0, 1.0, 1.0, -1)
show_hudmessage(0, "%s virou Admin Zombie !!!", name)
}
}
Credits: