AFK Kick istek
Moderatör: Moderatörler
-
Konu Sahibi - Mesajlar: 216
- Kayıt: Çrş Oca 23, 2019 10:03 pm
- Server Ip/DNS: 213.238.173.12
- Clan İsmi: Nostalji Gamers
- İletişim:
AFK Kick istek
Merhabalar, serverim deathmatch'dir. Oyuncular 60 saniye afk kaldıklarında otomatik kick atılsın istiyorum. Kick atıldığında reason olarak "Serverde AFK olduğunuz için atıldınız. Tekrardan bağlanmak için RETRY yazınız." şeklinde olursa sevinirim. Eğer olursa REAPI yazılırsa sevinirim şimdiden yapan arkadaşa teşekkür ediyorum.
Link: | |
Linklerini gizle |
-
- Mesajlar: 29
- Kayıt: Pzr Ağu 11, 2019 1:27 am
AFK Kick istek
Kod: Tümünü seç
#include <amxmodx>
#include <reapi>
#define TIME 60.0 // Süre
new Float:player_origin[33][3], g_afk[33]
public plugin_init()
{
register_plugin("AFK Kick", "1.0", "AhmetBey*")
RegisterHookChain(RG_CBasePlayer_Spawn, "Player_Spawn", 1)
}
public client_putinserver(id)
{
g_afk[id] = 0;
}
public Player_Spawn(id)
{
remove_task(id)
if(is_user_alive(id))
{
set_task(1.0, "get_spawn", id);
}
}
public get_spawn(id)
{
get_entvar(id, var_origin, player_origin[id])
set_task(TIME, "check_afk", id);
}
public check_afk(id)
{
if(is_user_alive(id))
{
if(same_origin(id))
{
new name[33];
get_user_name(id, name, 32);
if(g_afk[id] == 5) // Kac Tur AFK Kalinca Atilacak
{
client_print(0, print_chat, "%s 5 Round AFK oldugu icin sunucudan atildi", name)
server_cmd("kick #%d ^"5 Serverde AFK olduğunuz için atıldınız. Tekrardan bağlanmak için RETRY yazınız..^"", get_user_userid(id));
}
else
{
g_afk[id]++;
user_silentkill(id);
}
}
}
}
public same_origin(id)
{
new Float:origin[3];
get_entvar(id, var_origin, origin);
for(new i = 0; i < 3; i++)
if(origin[i] != player_origin[id][i])
return 0;
return 1;
}
Link: | |
Linklerini gizle |