13.03.2015, 14:31
(
Последний раз редактировалось Sc0pion; 15.03.2015 в 17:27.
)
Fixed!
new AFKTimer[MAX_PLAYERS] = -1;
public OnPlayerUpdate(playerid)
{
KillTimer(AFKTimer[playerid]);
AFKTimer[playerid]=SetTimerEx("KickPlayer", 60000, false, "i", playerid);
return 1;
}
forward KickPlayer(playerid);
public KickPlayer(playerid)
{
Kick(playerid);
}
AFKTimer[playerid]=-1;
public OnPlayerPause(playerid)
{
AFKTimer[playerid]=SetTimerEx("KickPlayer", 60000, false, "i", playerid);
return 1;
}
public OnPlayerResume(playerid)
{
KillTimer(AFKTimer[playerid]);
return 1;
}
forward AFKTimer(playerid);
public AFKTimer(playerid)
{
Kick(playerid);
return 1;
}
#include <a_samp>
new g_iAFK[MAX_PLAYERS];
new g_Timer[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
g_Timer[playerid] = SetTimerEx("UpdatePlayerAFK", 1000, true, "i", playerid);
g_iAFK[playerid] = 0;
return 1;
}
public OnPlayerUpdate(playerid) {
g_iAFK[playerid] = 1;
return 1;
}
forward UpdatePlayerAFK(playerid);
public UpdatePlayerAFK(playerid) {
g_iAFK[playerid]++;
if(g_iAFK[playerid] >= 60)
{
g_isAFK[playerid] = 1;
CallLocalFunction("OnPlayerPause", "d", playerid);
}
if(g_AFK[playerid] < 60 && g_isAFK[playerid])
{
g_isAFK[playerid] = 0;
CallLocalFunction("OnPlayerResume", "d", playerid);
}
return 1;
}
forward OnPlayerPause(playerid);
forward OnPlayerResume(playerid);