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



Ajuda com SetTimer - Italoigt - 16.02.2016

Galera eu nгo sei usar muito SetTimer eu queria ajuda de vocкs

eu tenho um sistema ai para detectar queria saber para ficar em 1 em 1 segundo como faz SetTimer("QuandoPegarArmas",1000,true);


Re: Ajuda com SetTimer - ClaudioF - 16.02.2016

Quote:
Originally Posted by Italoigt
Посмотреть сообщение
Galera eu nгo sei usar muito SetTimer eu queria ajuda de vocкs

eu tenho um sistema ai para detectar queria saber para ficar em 1 em 1 segundo como faz SetTimer("QuandoPegarArmas",1000,true);
um timer Usa milissegundos, 1000 - 1 Segundo , o seu jб esta assim


Re: Ajuda com SetTimer - Italoigt - 16.02.2016

Quote:
Originally Posted by ClaudioF
Посмотреть сообщение
um timer Usa milissegundos, 1000 - 1 Segundo , o seu jб esta assim
obrigado ^^ +rep


Re: Ajuda com SetTimer - ZackT - 17.02.2016

Ja vi que ele deu a resposta a vocк mas vou tentar ajudar um pouco mais..

Com o SetTimer vocк chama uma certa funзгo em um determinado tempo, exemplo:

Код:
CMD:go(playerid)
{
  SetTimer("funcaogo", 6000, false);
}

forward funcaogo(playerid);
public funcaogo(playerid)
{
  SendClientMessage(playerid, -1, "Se passaram 6 segundos a funcaogo foi chamada por isso vocк esta recebendo essa mensagem !");
}
Nesse caso a pessoa que digitar /go vai esperar 6 segundos e apуs isso ira chamar a funзгo que criamos que irб apenas enviar uma mensagem ao jogador, perceba que usamos o false no final, com isso se o player digitar /go ira passar os 6 segundos, aparecer a mensagem e pronto acabou ! Jб se mudarmos pra true ira chamar a funзгo a cada 6 segundos, ou seja, assim que o player digitar /go passarб 6 segundos e a funзгo serб chamada, mas ao invйs de parar por aн iram contas mais 6 segundos e chamar a funзгo de novo e assim irб ficar eternamente , A NГO SER QUE vocк mate o SetTimer.
Como matar o settimer ?
Basta vocк criar uma vбriavel, atribuir o settimer a ela e depois mata-la, veja o codigo.
Код:
new Var1;

CMD:go(playerid)
{
  Var1 = SetTimer("funcaogo", 6000, true);
}

CMD:back(playerid)
{
  KillTimer(Var1);
}

forward funcaogo(playerid);
public funcaogo(playerid)
{
  SendClientMessage(playerid, -1, "Se passaram 6 segundos a funcaogo foi chamada por isso vocк esta recebendo essa mensagem !");
}
Nesse exemplo vemos que ao digitar /go ira comeзar a contar de 6 em 6 e mandar a mensagem , ja quando voce digitar /back ira parar de contar esse tempo atй que vocк digite /go novamente para comeзar, lembrando que isso tudo sу acontecerб se vocк deixar no true o ultimo parвmetro.


Re: Ajuda com SetTimer - DenilsonN - 27.06.2016

Quote:
Originally Posted by ZackT
Посмотреть сообщение
Ja vi que ele deu a resposta a vocк mas vou tentar ajudar um pouco mais..

Com o SetTimer vocк chama uma certa funзгo em um determinado tempo, exemplo:

Код:
CMD:go(playerid)
{
  SetTimer("funcaogo", 6000, false);
}

forward funcaogo(playerid);
public funcaogo(playerid)
{
  SendClientMessage(playerid, -1, "Se passaram 6 segundos a funcaogo foi chamada por isso vocк esta recebendo essa mensagem !");
}
Nesse caso a pessoa que digitar /go vai esperar 6 segundos e apуs isso ira chamar a funзгo que criamos que irб apenas enviar uma mensagem ao jogador, perceba que usamos o false no final, com isso se o player digitar /go ira passar os 6 segundos, aparecer a mensagem e pronto acabou ! Jб se mudarmos pra true ira chamar a funзгo a cada 6 segundos, ou seja, assim que o player digitar /go passarб 6 segundos e a funзгo serб chamada, mas ao invйs de parar por aн iram contas mais 6 segundos e chamar a funзгo de novo e assim irб ficar eternamente , A NГO SER QUE vocк mate o SetTimer.
Como matar o settimer ?
Basta vocк criar uma vбriavel, atribuir o settimer a ela e depois mata-la, veja o codigo.
Код:
new Var1;

CMD:go(playerid)
{
  Var1 = SetTimer("funcaogo", 6000, true);
}

CMD:back(playerid)
{
  KillTimer(Var1);
}

forward funcaogo(playerid);
public funcaogo(playerid)
{
  SendClientMessage(playerid, -1, "Se passaram 6 segundos a funcaogo foi chamada por isso vocк esta recebendo essa mensagem !");
}
Nesse exemplo vemos que ao digitar /go ira comeзar a contar de 6 em 6 e mandar a mensagem , ja quando voce digitar /back ira parar de contar esse tempo atй que vocк digite /go novamente para comeзar, lembrando que isso tudo sу acontecerб se vocк deixar no true o ultimo parвmetro.
Valeu, ajudou muito!


Re: Ajuda com SetTimer - F1N4L - 27.06.2016

Foi comprovado cientificamente que usar o Search nгo causa cвncer: https://sampforum.blast.hk/showthread.php?tid=557107