[Ajuda]Uma ajudinha aki - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (
https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda]Uma ajudinha aki (
/showthread.php?tid=249022)
[Ajuda]Uma ajudinha aki -
Vinicius DarK - 16.04.2011
Ola Galera.
Eu queria saber Como Faz pra Chamar Uma Funзгo quando O Player Fica Certo Tempo sem se mecher.
Vlw.
Re: [Ajuda]Uma ajudinha aki -
Diogo_Bras - 16.04.2011
Topo do gamemode:
pawn Код:
#include <a_samp>
#define COLOR_ROXO 0xAA3333AA
#define TEMPO 240000 // 4 Minutos em milisegundos
forward AFK(playerid);
forward Fora(playerid);
new Float:Posicoes[MAX_PLAYERS][6];
new TAFK[MAX_PLAYERS];
new TFora[MAX_PLAYERS];
new EstaAFK[MAX_PLAYERS] = 0;
OnPlayerDisconnect:
pawn Код:
public OnPlayerDisconnect(playerid, reason)
{
KillTimer(TAFK[playerid]);
KillTimer(TFora[playerid]);
return true;
}
OnPlayerSpawn:
pawn Код:
public OnPlayerSpawn(playerid)
{
KillTimer(TAFK[playerid]);
KillTimer(TFora[playerid]);
TAFK[playerid] = SetTimerEx("AFK", TEMPO, 1, "i", playerid);
return true;
}
Public AFK:
pawn Код:
public AFK(playerid)
{
GetPlayerPos(playerid, Posicoes[playerid][0], Posicoes[playerid][1], Posicoes[playerid][2]);
if(Posicoes[playerid][0] == Posicoes[playerid][3] && Posicoes[playerid][1] == Posicoes[playerid][4] && Posicoes[playerid][2] == Posicoes[playerid][5])
{
if(EstaAFK[playerid] == 0)
{
new string[256];
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
format(string, sizeof(string), "[SERVER] %s foi kikado do servidor. Razгo: AFK", nome);
SendClientMessageToAll(COLOR_ROXO, string);
Kick(playerid);
return true;
}
else
{
Posicoes[playerid][3] = Posicoes[playerid][0];
Posicoes[playerid][4] = Posicoes[playerid][1];
Posicoes[playerid][5] = Posicoes[playerid][2];
KillTimer(TAFK[playerid]);
TAFK[playerid] = SetTimerEx("AFK", TEMPO, 1, "i", playerid);
return true;
}
}
else
{
Posicoes[playerid][3] = Posicoes[playerid][0];
Posicoes[playerid][4] = Posicoes[playerid][1];
Posicoes[playerid][5] = Posicoes[playerid][2];
KillTimer(TAFK[playerid]);
TAFK[playerid] = SetTimerEx("AFK", TEMPO, 1, "i", playerid);
return true;
}
}
Public Fora:
pawn Код:
public Fora(playerid)
{
EstaAFK[playerid] = 0;
return true;
}
OnPlayerText:
pawn Код:
public OnPlayerText(playerid, text[])
{
if(EstaAFK[playerid] == 0)
{
TFora[playerid] = SetTimerEx("Fora", 60000, 1, "i", playerid);
EstaAFK[playerid] = 1;
return true;
}
else if(EstaAFK[playerid] == 1)
{
KillTimer(TFora[playerid]);
TFora[playerid] = SetTimerEx("Fora", 60000, 1, "i", playerid);
EstaAFK[playerid] = 1;
return true;
}
return false;
}
Crйditos:
Lucas_Nicolas - Criador do sistema
GROVE4L - Base do sistema
Apenas identei o cуdigo, mais nada.
Re: [Ajuda]Uma ajudinha aki -
Vinicius DarK - 16.04.2011
Vlw mano