Try this :
PHP Code:
#include < amxmodx >
#include < fakemeta >
#include < hamsandwich >
#include < zombieplague >
#define VERSION "1.0"
#define TASK_GODMODE 6654684848
new name[ ] = "Last Chance"
new info[ ] = "Godmode when low hp"
new model[ ] = "zombie_source"
new clawmodel[ ] = "v_knife_zombie.mdl"
new health = 1500
new speed = 240
new Float: gravity = 0.9
new Float: knockback = 1.0
new zmClass
new pcvarHp, pcvarGodModeDuration
new Float: cvarHp, Float: cvarGodModeDuration
new botHam
new bool: hadGodMode[ 33 ]
public plugin_init( )
{
register_plugin( "[ZP] Zombie Class: Last Chance", VERSION, "Bboy Grun" )
zmClass = zp_register_zombie_class( name, info, model, clawmodel, health, speed, gravity, knockback )
register_event( "HLTV", "Event_RoundBegin", "a", "1=0", "2=0" )
pcvarHp = register_cvar( "zp_HpLimit", "500" )
pcvarGodModeDuration = register_cvar( "zp_GodModeDuration", "500" )
RegisterHam( Ham_TakeDamage, "player", "Fw_TakeDamage", 1 )
RegisterHam( Ham_Spawn, "player", "Fw_Spawn", 1 )
}
public plugin_init_bots( id )
{
RegisterHamFromEntity( Ham_TakeDamage, id, "Fw_TakeDamage", 1 )
RegisterHamFromEntity( Ham_Spawn, id, "Fw_Spawn", 1 )
}
public client_putinserver( id )
{
hadGodMode[ id ] = false
if( !botHam && is_user_bot( id ) && get_cvar_num( "bot_quota" ) > 0 )
{
set_task( 0.4, "plugin_init_bots", id )
botHam = 1
}
}
public Event_RoundBegin( )
{
cvarHp = get_pcvar_float( pcvarHp )
cvarGodModeDuration = get_pcvar_float( pcvarGodModeDuration )
}
public Fw_TakeDamage( victim, inflictor, attacker, Float: damage, damagebits )
{
if( !hadGodMode[ victim ] && zp_get_user_zombie( victim ) && zp_get_user_zombie_class( victim ) == zmClass )
{
if( ( pev( victim, pev_health ) - damage ) <= cvarHp )
{
set_pev( victim, pev_takedamage, DAMAGE_NO )
set_task( cvarGodModeDuration, "stopGodMode", victim + TASK_GODMODE )
hadGodMode[ victim ] = true
}
}
}
public Fw_Spawn( id )
{
if( is_user_alive( id ) )
{
if( zp_get_user_zombie_class( id ) == zmClass )
{
hadGodMode[ id ] = false
}
else
{
hadGodMode[ id ] = true
// i set hadGodMode on true --> takedamage will not have to check zp_get_user_zombie & user class
}
}
}
public zp_user_infected_post( id )
{
if( zp_get_user_zombie_class( id ) == zmClass )
{
hadGodMode[ id ] = false
}
else
{
hadGodMode[ id ] = true
// i set hadGodMode on true --> takedamage will not have to check zp_get_user_zombie & user class
}
}
public stopGodMode( Taskid )
{
set_pev( Taskid - TASK_GODMODE, pev_takedamage, DAMAGE_YES )
}
__________________