zuero tabule seus cуdigos para deixa-los organizados. aqui tabulei para melhor entendimento dos scripters,
pawn Код:
public Atualizar(playerid)
{
SetTimerEx("Atualizar", 1000, false, "i", playerid);
if(PlayerAFK[playerid] != 1)
{
GetPlayerPos(playerid, PosAfk[playerid][0], PosAfk[playerid][1], PosAfk[playerid][2]);
if(PosAfk[playerid][0] != PosAfk[playerid][3] && PosAfk[playerid][1] != PosAfk[playerid][4] && PosAfk[playerid][2] != PosAfk[playerid][5])
{
TempoAFK[playerid] = 0;
PosAfk[playerid][3] = PosAfk[playerid][0];
PosAfk[playerid][4] = PosAfk[playerid][1];
PosAfk[playerid][5] = PosAfk[playerid][2];
}
else
{
TempoAFK[playerid]++;
if(60*2 == TempoAFK[playerid])
{
PlayerAFK[playerid] = 1;
GetPlayerPos(playerid, PlayerPos[0][playerid], PlayerPos[1][playerid], PlayerPos[2][playerid]);
GetPlayerFacingAngle(playerid, PlayerPos[3][playerid]);
Interior[playerid] = GetPlayerInterior(playerid);
TogglePlayerControllable(playerid, 0);
for(new i = 0; i < 13; i++)
GetPlayerWeaponData(playerid, i, Weapon[i][0], Weapon[i][1]);
ResetPlayerWeapons(playerid);
new rand = random(100) - random(10);
SetPlayerPos(playerid, -1079.99+rand, 1061.58, 1343.04);
SetPlayerInterior(playerid, 10);
format(Str, sizeof(Str), "%s [ID: %i] esta em modo afk !", nome(playerid), playerid);
SendClientMessageToAll(Amarelo, Str);
SendClientMessage(playerid, Amarelo, "Use: /afk para voltar ao jogo.");
new mul = 60*TempoKick;
mul = mul -= 120;
AFKKick[playerid] = gettime() + mul;
}
}
}
else
{
if(gettime() >= AFKKick[playerid])
{
format(Str, sizeof(Str), "%s [ID: %i] foi kickado por ficar de AFK durante 30 minutos.", nome(playerid), playerid);
SendClientMessageToAll(Amarelo, Str);
SendClientMessage(playerid, Vermelho, "Voce foi kickado por ficar de AFK durante 30 minutos.");
SetTimerEx("KickPlayer", 1000, false, "i", playerid);
}
}
return 1;
}
se quiser subistituir o cуdigo da sua gamemode por esse para ver se tira algum erro, fica a sua escolha
.