[duvida] SetTimer
#1

qual a difereзa entre SetTimer e SetTimerEx ??
Reply
#2

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 (:
Reply
#3

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

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... (:
Reply
#5

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);
Reply
#6

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.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)