[AJUDA]
#7

pawn Код:
new Float: PTOldPos[MAX_PLAYERS][3], PTAFKTime[MAX_PLAYERS], PTAFKTime2[MAX_PLAYERS], Timer[MAX_PLAYERS]; //Crie as Vars

public OnPlayerConnect(playerid) {
   PTAFKTime2[playerid] = tickcount();
   Timer[playerid] = SetTimerEx("PTAFK", 1000, true, "i", playerid); //Iniciei o timer de 1 segundo para o playerid.
}

forward PTAFK(playerid);
public PTAFK(playerid) { //Essa funзгo para ser executado de 1 em 1 segundo.
    new Float: PTPos[3]; //Criei um var para as Pos do playerid.
    GetPlayerPos(playerid, PTPos[0], PTPos[1], PTPos[2]); //Getei as Pos do playerid.
    if(!IsPlayerInRangeOfPoint(playerid, 3.0, PTOldPos[playerid][0], PTOldPos[playerid][1], PTOldPos[playerid][2])) PTAFKTime[playerid] = 0; //Verifico se o playerid nгo estб em um raio de 3 das antigas posiзхes, assim zerando a var.
    else PTAFKTime[playerid] += tickcount() - PTAFKTime2[playerid]; //Se ele tiver no raio de 3 das antigas posiзoes, adc o tickcount - o tickcount anterior

    PTAFKTime2[playerid] = tickcount(); //Armazeno o tickcount
    PTOldPos[playerid][0] = PTPos[0]; //Armazeno a Pos X
    PTOldPos[playerid][1] = PTPos[1]; //Armazeno a Pos Y
    PTOldPos[playerid][2] = PTPos[2]; //Armazeno a Pos Z
    if(PTAFKTime[playerid]/60000 >= 10) { //Verifico se a var divida por 60000(o calculo vai sair em minutos) й maior o igual a 10
        SendClientMessage(playerid, 0xFF0000FF, "Kickado por AFK!"); //Mando a msg para o playerid
        Kick(playerid); //Kick no playerid por Esc
    }
    return 1;
}

public OnPlayerDisconnect(playerid, reason) {
    KillTimer(Timer[playerid]); //Se o playerid se desconectar destruo o timer para ele nгo ficar rodando enquanto o player estiver off.
    return 1;
}
Fiz um especialmente para vocк!


Quote:
Originally Posted by leonardo1434
Посмотреть сообщение
ixi, й mesmo tinha esquecido do ongamemodeinit, colocar no onplayerupdate ou connect como paulor disse.


@paulor, vocк poderia me dizer porque nгo irб dar certo, agradeceria muito *.*. Nгo consigo ver porque nгo iria funcionar D:
Claro! Veja comigo:
pawn Код:
tempo[playerid] = gettime() + (600); //Vc ta armazendo o tempo unix em segundos + 600 segundos que da 10 minutos!
new Float:x,Float:y,Float:z,Float:posicao[3]; //Criou as vars
GetPlayerPos(playerid,x,y,z); //Getou a posiзгo
if(tempo[playerid] <= gettime()) //Aki vc esta verificando Uma coisa que nгo daria certo, pq ? pois a funзгo ela й executa em no maximo 1 milesimo, assim tempo[playerid] nunca vai ser menor sempre maior que gettime!
{
Reply


Messages In This Thread
[AJUDA] - by billy the kid - 10.06.2012, 21:43
Re: [AJUDA] - by leonardo1434 - 10.06.2012, 22:56
Re: [AJUDA] - by paulor - 10.06.2012, 23:37
Re: [AJUDA] - by leonardo1434 - 10.06.2012, 23:43
Respuesta: [AJUDA] - by CidadeNovaRP - 10.06.2012, 23:44
AW: [AJUDA] - by billy the kid - 10.06.2012, 23:58
Re: [AJUDA] - by paulor - 10.06.2012, 23:59
Re: [AJUDA] - by leonardo1434 - 11.06.2012, 00:16

Forum Jump:


Users browsing this thread: 1 Guest(s)