#include <amxmodx>
new player_origin[33][3]
public round_start()
{
if (!task_exists(1234)){
new players[32], num
get_players(players,num)
for (new i = 0; i < num; ++i)
get_user_origin(players[i],player_origin[players[i]])
set_task(get_cvar_float("afk_checktime"),"check_afk",1234,"",0,"b")
}
return PLUGIN_CONTINUE
}
public check_afk()
{
new players[32], num
new curr_origin[3]
new name[32]
get_players(players,num)
new immunity = get_cvar_num("afk_admin_immunity")
for (new i = 0; i < num; ++i)
{
if ( immunity && (get_user_flags(players[i]) & ADMIN_IMMUNITY) )
continue
else
{
get_user_origin(players[i],curr_origin)
if ( curr_origin[0]==player_origin[players[i]][0] && curr_origin[1]==player_origin[players[i]][1] && curr_origin[2] < (player_origin[players[i]][2] + 50) && curr_origin[2] > (player_origin[players[i]][2] - 50) )
{
get_user_name(players[i],name,31)
client_cmd(players[i],"echo [ADMIN] Kirugva AFK miatt.;disconnect")
client_print(0,print_chat,"[ADMIN] %s kirugva AFK miatt",name)
log_message("[ADMIN] %s Kirugva AFK miatt", name)
}
else
player_origin[players[i]]=curr_origin
}
}
return PLUGIN_CONTINUE
}
public respawn_msg(id)
{
player_origin[id][0] = 0
return PLUGIN_CONTINUE
}
public weapon_fired(id)
{
player_origin[id][0] = 0
return PLUGIN_CONTINUE
}
public HandleSay(id)
{
player_origin[id][0] = 0
return PLUGIN_CONTINUE
}
public client_connect(id)
{
player_origin[id][0] = 0
return PLUGIN_CONTINUE
}
public plugin_init()
{
register_plugin("DoD AFK Kicker","0.9.4","Fractal")
register_event("RoundState", "round_start","a","1=1")
register_event("ResetHUD", "respawn_msg","b")
register_event("CurWeapon", "weapon_fired", "b","1=1")
register_clcmd("say","HandleSay")
register_clcmd("say_team","HandleSay")
register_cvar("afk_checktime","240")
register_cvar("afk_admin_immunity","1")
return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1038{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/