Aide - Recherche - Membres - Calendrier
Version complète : Aide Pawn
MacreaCity - Forums Macreators > GTA Multijoueurs > Mods
SK077
Bonjour à tous, me voilà avec un nouveau problème:

J'ai tout scripté un filterscript qui a pour but de faire un entrainement aux armes, dans l'endroit prevu à cet effet à l'ammunation. Il y a 8 stands dans cette salle, donc je me suis debrouillé pour qu'ils soient tous utilisables. Ca marche hyper bien quand je teste tout seul en local, mais comme je m'en doutais, ça ne marche pas quand plusieurs personne veulent s'entrainer en même temps.
Pour ce script, j'ai utilisé plusieurs timer, en les introduisant par une variable propre à chaque joueur ( new StandTimer[MAX_PLAYERS];, et à un moment donné StandTimer[playerid] = SetTimer("... ). Sauf que cette méthode ne marche pas, et je ne comprend pas pourquoi.

Si quelqu'un pourrait m'aider à résoudre ce problème, et à m'expliquer pourquoi ça ne marche pas comme ça ce serait super !
Merci à tous pour votre aide !
superpompier
le MAX_PLAYERS sert a un joueur (tu le savais) mais tu ne peut pas dire qu'il est égale a un timer, tu peut juste dire qu'il est égale a un nombre, par exemple :

StandTimer[playerid] = 0

StandTimer[playerid] = 1

StandTimer[playerid] = 2

etc...

Ce qui te sert a utiliser qu'une fonction pour plusieurs choses, style :

(if(StandTimer[playerid] == 0){

Bla bla ...

Si il est égale a 1 :

bla bla (lol)

Je peut te donner une solution, tu laisse le 0 pour si quand ton timer est fini (dans ton public de timer tu devra mettre StandTimer[playerid] = 0; )

pour qu'il soit égale a 1 il faut qu'une action se soit produite, dans cette action, tu mettra :

StandTimer[playerid] = 1;

et juste après (s'il rentre dans un checkpoint tu le mettra dans le public convenant wink.gif ou la ou tu veut qu'il soit tongue.gif )

if(StandTimer[playerid] == 1){
Ton timer
tu peut ajouter un texte SendClient ou un GameText, tous ce que tu veut wink.gif
return 1;
}

Et voila ^^
yohannc
La technique de superpompier fonction mais normalement SetTimer renvoit un entier correspondant à l'ID du thread lancé. Ce qui te permet de l'arrêter en cour de route par exemple.
Donc ton problème est bizard et ne vient à mon avis pas de là. Tu peu essayer de faire un printf de ton timer pour voir si t'as bien l'id mais normalement c'est bon, le problème ne doit pas venir de là.
SK077
ok, merci à vous deux de vos réponses, je vais essayer de résoudre le problème ce week-end.
SK077
voilà, mon problème est reglé, j'ai suivit la méthode de superpompier, ça marche niquel, merci a vous !
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2009 Invision Power Services, Inc.