Bienvenue, Invité. Veuillez vous connecter ou vous inscrire.
Avez-vous perdu votre courriel d'activation?
Connexion avec identifiant, mot de passe et durée de la session

 
avancée

254727 Messages dans 14037 Fils de discussion- par 6623 Membres - Dernier membre: Magicien

24 Mai 2012 à 08:07:32
GTAOnline.frSan Andreas MultiplayerScripting SA-MP [Pawn center] (Modérateurs: S!m, Xartrick)Soif d'apprendre. Aider moi à scripter
Pages: 1 [2]   Bas de page
Imprimer
Auteur Fil de discussion: Soif d'apprendre. Aider moi à scripter  (Lu 971 fois)
0 Membres et 2 Invités sur ce fil de discussion.
S!m
Hors ligne Hors ligne


Moderateur
GTAOnline Fan Boy
*

Messages: 2260


« Répondre #15 le: 15 Juillet 2009 à 04:23:38 »

Salut,

pour ces cas la passe par SetTimerEx qui te permet de passer un paramètre:

Code:
SetTimerEx("tafonction", tontemps, 1, "structure des variables", variables....);
Exemple:
SetTimerEx("tafonction", 1000, 1, "i", playerid);

EDIT: par contre, fais bien attention, tu risque de te retrouver avec un très grand nombre de timer, assure toi de l'associer une variable afin de l'éliminer lorsque le joueur n'en a plus besoin...

++Sim++
« Dernière édition: 15 Juillet 2009 à 04:25:25 par Sim » Journalisée





zorglue
Hors ligne Hors ligne

Petit nouveau
*

Messages: 14


« Répondre #16 le: 15 Juillet 2009 à 12:10:39 »

oui c'est vrai , il vau mieux arrêter le timer quand le joueur n'en a plus besoin .
Mais pour cela, une condition ne suffit pas . Le timer existera toujours mais n'excutera plus son contenu !
Il faut carément arrêter le timer .
Avec la fonction : KillTimer(idtimer) ?

comment s'utilise-t-elle?
L'id d'un timer ?  Blink on récupère ça comment ?  Indécis
Il y a peut-être un autre moyen qui m'échappe ?
Journalisée
S!m
Hors ligne Hors ligne


Moderateur
GTAOnline Fan Boy
*

Messages: 2260


« Répondre #17 le: 16 Juillet 2009 à 03:44:41 »

Salut,

l'id du timer est la valeur retournée par la fonction SetTimer/SetTimerEx, il te suffit de le stocké dans une variable et hop...

++Sim++
Journalisée





zorglue
Hors ligne Hors ligne

Petit nouveau
*

Messages: 14


« Répondre #18 le: 16 Juillet 2009 à 14:49:43 »

Je trouve cette fonction très spécial.
Mon problème n'est pas résolu avec SetTimerEx() car elle a le même effet que SetTimer().
Lorsque le premier joueur fais apellé à la fonction, Tout marche bien pour lui et pour son véhicule (voir le code que j'avais écris) .
Mais lorsque qu'un autre joueur viens aussi à faire appelle à cette fonction, 2 timer sont créé mais les variables des deux timer sont modifié par les propriété du deuxième joueur .
Le résultat : le premier joueur ne profite plus de la fonction et le deuxième joueur profite de sa fonction SetTimer qu'il a décidé d'éxécuter et hérité aussi de la fonction du premier joueur .

je l'explique avec mon code : (le problème viens de la variable vid2)

ici

Donc voilà , je suis encore un peu bordélique car je ne fais que débuter .
Si vous avez compris mon problème et que vous avez des idées , n'hésiter pas laugh
« Dernière édition: 16 Juillet 2009 à 20:55:54 par zorglue » Journalisée
S!m
Hors ligne Hors ligne


Moderateur
GTAOnline Fan Boy
*

Messages: 2260


« Répondre #19 le: 17 Juillet 2009 à 01:16:15 »

Salut,

tu dois récupérer le véhicule du joueur à chaque fois, pour plus de stabilité il faut s'assurer que le joueur est dans un véhicule...

++Sim++
Journalisée





Pages: 1 [2]   Haut de page
Imprimer
Aller à:  

Theme créé par padexx et modifié par GTAOnline.fr
Page générée en 0.176 secondes avec 22 requêtes.
Forum GTAOnline.fr 2.0 | Design par : Lalu et GtaManiac
Merci a toute la communaute pour son support !
Copyright © 2004-2012 - GTAOnline.fr | GTAPro.com | Contact