SA-MP Forums Archive
[Ajuda] Timer - 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] Timer (/showthread.php?tid=298209)



[Ajuda] Timer - mateusmaia - 19.11.2011

Eu estou fazendo um sistema de /prender
Mais eu nao sei como fazer um timer pra cada carinha que for pra prisao

exemplo
Carinha 1 foi preso por 1 Minuto, ai ele fica la por 1 minuto e dps desse 1 minuto ele e solto

meu comando й assim:
/prender [id] [tempo]

Ai eu quero que ele prenda o ID somente por um certo tempo, e cada cara que vai pra prisao ele cria um timer diferente com o Tempo que foi preenchido no comando.


Re: [Ajuda] Timer - Dolby - 19.11.2011

SetTimerEx


Re: [Ajuda] Timer - mateusmaia - 19.11.2011

...
Ja tentei fazer assim...
mas eu nao consegui
alem disso, nгo sei como criar 1 Timer diferente pra cada cara que for preso...


Re: [Ajuda] Timer - Hardware - 19.11.2011

Manda o cуdigo do /prender aн.


Re: [Ajuda] Timer - mateusmaia - 19.11.2011

pawn Код:
if(strcmp("/prender", cmdtext, true, 8) == 0)
    {
        new pegaid[256];
        new pegatempo[256];
        pegaid = KcmD(1, cmdtext);
        pegatempo = KcmD(2, cmdtext);
        if(!strlen(pegaid))
        {
            SendClientMessage(playerid, 0xFFFFFFFF, "Digite /prender [ID/Parte Do Nick] [Tempo]");
            return 1;
        }
        if(!strlen(pegatempo))
        {
            SendClientMessage(playerid, 0xFFFFFFFF, "Digite /prender [ID/Parte Do Nick] [Tempo]");
            return 1;
        }
        SetPlayerPos((strval(pegaid)), 265.20001220703, 77.599998474121, 1001);
        SetPlayerInterior((strval(pegaid)), 6);
        SendClientMessage(playerid,BRANCO, "Vocк estб preso");
        return 1;
    }
Eu tirei a parte do Timer pq n tava dando certo...


Re: [Ajuda] Timer - DreeH - 19.11.2011

PHP код:
if(strcmp("/prender"cmdtexttrue8) == 0)
    {
        new 
pegaid[256];
        new 
pegatempo[256];
        
pegaid KcmD(1cmdtext);
        
pegatempo KcmD(2cmdtext);
        if(!
strlen(pegaid))
        {
            
SendClientMessage(playerid0xFFFFFFFF"Digite /prender [ID/Parte Do Nick] [Tempo]");
            return 
1;
        }
        if(!
strlen(pegatempo))
        {
            
SendClientMessage(playerid0xFFFFFFFF"Digite /prender [ID/Parte Do Nick] [Tempo]");
            return 
1;
        }
        
SetPlayerPos((strval(pegaid)), 265.2000122070377.5999984741211001);
        
SendClientMessage(playerid,BRANCO"Vocк estб preso");
        
SetTimerEx("Soltar"strval(pegatempo), false"i"strval(pegaid));
        return 
1;
    } 
Final do Gamemode

PHP код:
stock Soltar(playerid) return SetPlayerPos(playeridpXpYpZ); // POSIЗГO PARA SAIR DA PRISГO 
Nunca usei KcmD, porйm, acho que vai funcionar.
Uma dica, abaixe o tamanho das arrays, 256 й muito.


Re: [Ajuda] Timer - mateusmaia - 19.11.2011

O SetTimer Trabalha em milesegundos nй...

Como eu faзo pra colocar para ele trabalhar com segundos??

Ficar tendo que fazer calculos toda hora que for prender alguem vai ser tenso...


Re: [Ajuda] Timer - Dolby - 19.11.2011

pawn Код:
Minutos*60000
assim vai calcular quantos minutos vocк quer,exemplo 10 minutos
pawn Код:
10*60000



Re: [Ajuda] Timer - mateusmaia - 19.11.2011

No caso ficaria
pawn Код:
SetTimerEx("Soltar", (strval(pegatempo))*60000, false, "i", (strval(pegaid)));



Re: [Ajuda] Timer - Dolby - 19.11.2011

Sim.