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



[duvida] SetTimer - Cristhian - 14.10.2011

qual a difereзa entre SetTimer e SetTimerEx ??


Re: [duvida] SetTimer - WLSF - 14.10.2011

SetTimer apenas chama uma funзгo em determinado tempo... Caso estб funзгo contenha 'playerid' ou qualquer outro paramкtro e vocк queira usa-lo precisa ser usado SetTimerEx, para pegar o nome da funзгo, tempo para execuзгo, repetimento, format, float (:


Re: [duvida] SetTimer - Cristhian - 14.10.2011

mas eu estou usando uma public com (playerid) e o settimer funfou..
pawn Код:
forward ttiro(playerid);
public ttiro(playerid)



Re: [duvida] SetTimer - WLSF - 14.10.2011

mais se vocк fosse executar para outro player, teria que usar de acordo com o comando, SetTimerEx... como eu disse se vocк quiser usar os paramкtros da public precisa usar SetTimerEx, se nгo me engano... (:


Re: [duvida] SetTimer - Lуs - 14.10.2011

Exemplo:

pawn Код:
public Novato(playerid)
pawn Код:
giveplayerid. /setar [ID].
pawn Код:
SetTimerEx("Novato", 4000, false, "i", "giveplayerid");
Se fosse playerid:

pawn Код:
SetTimerEx("Novato", 4000, false, "i", playerid);



Re: [duvida] SetTimer - Shelby - 14.10.2011

Quote:
Originally Posted by Cristhian
Посмотреть сообщение
qual a difereзa entre SetTimer e SetTimerEx ??
As duas funзхes tem o mesmo objetivo, definir um tempo para chamar uma callback.
Quando a public nгo tem nenhum parвmetro usamos SetTimer para chama-la.
Quando tem um ou mais parвmetros, deve-se usar SetTimerEx para especificar os parвmetros, se vocк usar SetTimer os parвmetros irгo retornar 0!

Exemplo:
pawn Код:
forward KickPlayer(playerid);

public KickPlayer(playerid)
{
    return Kick(playerid);
}

SetTimer("KickPlayer", 1000, false);
Como vocк nгo especificou no SetTimer o valor de playerid ele irб ser definido como zero, entгo o cуdigo acima sempre irб dar um kick no ID 0!

Correto:
pawn Код:
forward KickPlayer(playerid);

public KickPlayer(playerid)
{
    return Kick(playerid);
}

SetTimerEx("KickPlayer", 1000, false, "i", 5);
No cуdigo acima especificamos o valor do playerid para cinco, entгo ele irб dar um kick no ID 5.

Se fosse-mos colocar isto em um comando o 5 seria trocado pelo ID do jogador que queremos dar um kick.