Code:
#include <amxmodx>
#include <amxmisc>
#include <fun>
new Float:g_flSpeed[33]
public plugin_init()
{
register_plugin("Test","1.0","Hawk552")
register_concmd("amx_speed","fnCmdSpeed",ADMIN_KICK,"<target> <speed> - sets speed")
register_event("ResetHUD","fnEventCatch","be")
register_event("CurWeapon","fnEventCatch","be")
// ...
}
public client_disconnect(id)
g_flSpeed[id] = 0.0
public fnCmdSpeed(id,level,cid)
{
if(!cmd_access(id,level,cid,3))
return PLUGIN_HANDLED
new szArg1[33], szArg2[8]
read_argv(1,szArg1,32)
read_argv(2,szArg2,7)
new iTarget = cmd_target(id,szArg1)
g_flSpeed[iTarget] = str_to_float(szArg2)
if(!iTarget || !g_flSpeed[iTarget])
return PLUGIN_HANDLED
new szTargetName[33], szAdminName[33], szAdminAuth[36], szTargetAuth[36]
get_user_name(id,szAdminName,32)
get_user_name(iTarget,szTargetName,32)
get_user_authid(id,szAdminAuth,35)
get_user_authid(iTarget,szTargetAuth,35)
log_amx("Cmd: %s<%s><%i> set speed to %f on %s<%s><%i>",szAdminName,szAdminAuth,get_user_userid(id),g_flSpeed[iTarget],szTargetName,szTargetAuth,get_user_userid(iTarget))
switch(get_cvar_num("amx_show_activity"))
{
case 1:
client_print(0,print_chat,"ADMIN: set speed on %s to %f",szTargetName,g_flSpeed[iTarget])
case 2:
client_print(2,print_chat,"ADMIN %s: set speed on %s to %f",szAdminName,szTargetName,g_flSpeed[iTarget])
}
fnEventCatch(iTarget)
return PLUGIN_HANDLED
}
public fnEventCatch(id)
if(g_flSpeed[id])
set_user_maxspeed(id,g_flSpeed[id])