example:
PHP Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"
#if AMXX_VERSION_NUM < 183
new Ham:Ham_Player_ResetMaxSpeed = Ham_Item_PreFrame
#endif
new g_frozen[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
RegisterHam(Ham_Player_ResetMaxSpeed, "player", "fw_Player_ResetMaxSpeed", 1)
register_forward(FM_CmdStart, "fw_Start")
RegisterHam(Ham_Spawn, "player", "fw_PlayerSpawn_Post", 1)
// Add your code here...
}
public client_putinserver(id)
{
g_frozen[id] = false
}
public fw_PlayerSpawn_Post(id)
{
// Not alive or didn't join a team yet
if(!is_user_alive(id))
return;
set_task(5.0, "block_speed", id)
}
public block_speed(id)
{
if(!is_user_alive(id))
return;
g_frozen[id] = true
ExecuteHamB(Ham_Player_ResetMaxSpeed, id)
}
public fw_Player_ResetMaxSpeed(id)
{
if(!is_user_alive(id))
return;
new Float:current_maxspeed
pev(id, pev_maxspeed, current_maxspeed)
if (g_frozen[id])
{
set_pev( id, pev_maxspeed, 1.0 )
entity_set_vector(id, EV_VEC_velocity, Float:{0.0,0.0,0.0})
}
}
public fw_Start(id, uc_handle, seed)
{
static button ; button = get_uc ( uc_handle, UC_Buttons )
static oldbutton ; oldbutton = entity_get_int ( id, EV_INT_oldbuttons )
if(!is_user_alive(id))
return
if (g_frozen[id])
{
if(button & IN_ATTACK || button & IN_ATTACK2)
{
set_uc(uc_handle,UC_Buttons,(button & ~IN_ATTACK) & ~IN_ATTACK2)
}
else if( !(oldbutton & IN_JUMP) )
{
entity_set_int(id, EV_INT_oldbuttons, oldbutton | IN_JUMP)
}
}
}
__________________