Принимайте баги, господин разработчик. Я всё время двигался, а секунды то шли, потом меня кикнуло.
Открыть/закрыть
PHP код:
public AFKCheck()
{
new Float:Pos[3], string[100];
for(new i,zx = GetMaxPlayers( ); i < zx; i++)
{
GetPlayerPos(i,Pos[0],Pos[1],Pos[2]);
if(IsPlayerInRangeOfPoint(i,2,Pos[0],Pos[1],Pos[2]))
{
AFK[i]++;
format(string,sizeof(string), "%d сек.",AFK[i]);
SendClientMessage(i,COLOR_YELLOW,string);
}
if(AFK[i] == 10)
{
AFK[i] = 0;
format(string,sizeof(string), "Игрок %s кикнут сервером, причина: AFK более 10 секунд.",pNick(i));
SendClientMessageToAll(COLOR_WHITE,string);
SKick(i);
}
}
return true;
}
PHP код:
public OnPlayerConnect(playerid)
{
RemovePlayerInfo(playerid);
GetPlayerName(playerid,pInfo[playerid][pName],MAX_PLAYER_NAME);
AFKTime[playerid] = SetTimer("AFKCheck",1000,1);
new account[37];
format(account,sizeof(account),"users/%s.ini",pNick(playerid));
if(!fexist(account)) ShowRegisterDialog(playerid);
else if(fexist(account)) ShowLoginDialog(playerid);
return true;
}