GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Jeffreeeey le 28 Novembre 2009, 20:29:45

Titre: Détruire un Timer d'un joueur
Posté par: Jeffreeeey le 28 Novembre 2009, 20:29:45
Voila a tout moment plusieurs personnes peuvent faire une commande qui va executer un TimerEx pour le joueur. Le problème c'est que j'aimerais détruire le timer de ce joueur à sa déconnection.
donnemoiargent = SetTimerEx("donnersonargent", 10000, false, "i", playerid);Et enssuite dés que le joueur se deconecte.
KillTimer(donnemoiargent);
Le problème c'est qu'il va détruire le Timer de tout les joueurs qui l'ont activé.
(Je crois)

N'existe t'il pas un KillTimerEx ?
Titre: Re : Détruire un Timer d'un joueur
Posté par: cristab le 28 Novembre 2009, 20:39:28
il va detruire le timer qui porteras ce nom le mieux et de rajouter [MAX_PLAYERID]

new donnemoiargent[MAX_PLAYERS]
donnemoiargent[playerid] = SetTimerEx("donnersonargent", 10000, false, "i", playerid);

KillTimer(donnemoiargent[playerid]);
juste pour te dire qu'a la base ton Timer ne se repete pas
Titre: Re : Détruire un Timer d'un joueur
Posté par: Jeffreeeey le 28 Novembre 2009, 20:43:48
Merci beaucoup, par contre je voudrais savoir à quoi sert le false dans SetTimerEx("donnersonargent", 10000, false, "i", playerid);
Veut-il dire que quand les 10'000 milliseconde son passé le timer se repete ?
Titre: Re : Détruire un Timer d'un joueur
Posté par: MrFredo le 28 Novembre 2009, 20:54:33
Justement non, false (ou 0) fera que le timer ne s'execute qu'une fois, true (ou 1) fera que le timer se repete ;)
Titre: Re : Détruire un Timer d'un joueur
Posté par: Syg le 30 Novembre 2009, 11:47:02
D'ailleurs, si le troisième paramètre de SetTimerEx est false, il n'y a pas de nécessité d'appeler KillTimer, sauf dans le cas très rare où le joueur se déconnecte avant la fin du timer et qu'un autre joueur prend le même ID.

++
Syg
Titre: Re : Re : Détruire un Timer d'un joueur
Posté par: Jeffreeeey le 30 Novembre 2009, 12:42:06
D'ailleurs, si le troisième paramètre de SetTimerEx est false, il n'y a pas de nécessité d'appeler KillTimer, sauf dans le cas très rare où le joueur se déconnecte avant la fin du timer et qu'un autre joueur prend le même ID.

++
Syg

Voila pourquoi j'ai utilisé killtimer. Merci beaucoup  :cheers