Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.phpMédailles   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 
  FAQFAQ World Editor   UploadUploader une map ou une image    UploadAjouter sa map à l'annuaire   UploadConsulter l'annuaire

Problème de multiboard

 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 XaMaRo
Amateur de graphisme


Inscrit le: 28 Aoû 2007
Messages: 280
Sujets: 29
Spécialité en worldedit: Je cherche encore ...


MessagePosté le: 01/01/08 19:17    Sujet du message: Problème de multiboard Citer

Salut à tous ! Je me suis lancé dans la création d'un multiboard. Dans ce multiboard j'ai incorporé un "système" qui affiche la vie (en %) d'une unité qui est contenue dans une variable. Malheuresement ce fameux systeme bug, au debut de la carte pas de problème, la vie de l'unité est bien à 100% mais après tout d'un coup, la vie passe à 0 ... alors que l'unité n'a subit aucun degats et qu'elle ce trouve toujours sur le terrain. Ci-dessous je poste les declencheurs qui se rapportent au systeme :

Ce declencheur est celui qui créer les unités dont la vie sera affichée dans le multiboard :

Gui:
Trigger:
Creation des unites
Collapse Evénements
Temps - Elapsed game time is 5.00 seconds
Conditions
Collapse Actions
Collapse Groupe joueur - Pick every player in (All players) and do (Actions)
Collapse Boucle - Actions
Unité - Create 1 Tour des arcanes for (Picked player) at (Random point in (Playable map area)) facing Orientation bâtiment par défaut degrees
Set MainBuilding[(Player number of (Picked player))] = (Last created unit)


Ce declencheur change la valeur de la vie de l'unité affichée dans le multiboard et lui associe une couleur :

Gui:
Trigger:
Update de la vie dans le multiboard
Collapse Evénements
Temps - Every 0.75 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 12, do (Actions)
Collapse Boucle - Actions
Set couleur = (100.00 - (Real((Integer((Percentage life of MainBuilding[(Integer A)]))))))
Multitable - Set the text for Multi item in column 8, row LignesDesJoueurs[(Player number of (Owner of MainBuilding[(Integer A)]))] to (String((Integer((Percentage life of MainBuilding[(Integer A)])))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
couleur Inférieur à  51.00
Collapse Alors - Actions
Multitable - Set the color for Multi item in column 8, row LignesDesJoueurs[(Player number of (Owner of MainBuilding[(Integer A)]))] to (couleur%, 100.00%, 0.00%) with 0.00% transparency
Collapse Sinon - Actions
Multitable - Set the color for Multi item in column 8, row LignesDesJoueurs[(Player number of (Owner of MainBuilding[(Integer A)]))] to (100.00%, (200.00 - (couleur x 2.00))%, 0.00%) with 0.00% transparency


J'ai aussi d'autres déclencheurs qui interviennent dans le multiboard mais je ne pense pas nécessaire de les postés car ils n'utilisent rien de ces 2 declencheurs.
Merci d'avance, Xamaro
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Darkfeyt
Floodeur prématuré


Inscrit le: 22 Nov 2007
Messages: 677
Sujets: 27
Spécialité en worldedit: Jamais sortir ses projets ?


MessagePosté le: 01/01/08 22:21    Sujet du message: Citer

Je vois rien qui generai au bon fonctionement du multiboard là.

Cela vien peut-être de l'un de tes deux autre declencheur qui interviennent sur le multiboard.

Si les deux autre declencheur n'interviennent pas sur la couleur d'une ligne alors il suffit de regardé si au passage a "0" la couleur change.

Ou sa viendrai peut-être d'une competence (infestation par exemple(je pense pas que sa gene les % de vie mais sa peut gené certaine action de trigger)) ou d'une action par trigger qui changerai sa.

Verifie aussi si ta des déclencheur qui ne touche pas aux variable utilisé par le multiboard.

A oui aussi , evite les conversion inutile. ><
par exemple tu fait: real <---- integer <---- real
c'est pas forcement inutile si tu veut viré les % en trop (apres la virgule) mais sachant que je crois que tu affiche des réel ton nombre sera toujours XXX,00%.

Euh sinon si ta map utilise pas trop de variable global tu pourai en utilisé une pour recuperé le % de vie de l'unité et donc ne pas appeller 2 fois le % de vie sa augmenterai normalement la vitesse d'execution du trigger.
(sachant que c'est executé 12 toutes les 0.75sec (on apelle donc la fonction 96 toutes les 3 seconde au lieu de 48 fois)) mais bon si ta peu de declencheur periodique c'est pas si genant. (tu peut utilisé une seul variable global (non-array) pour le pourcentage des 12 unité)
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail MSN Messenger
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7146
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 02/01/08 14:28    Sujet du message: Citer

ton unité c'est pas une porte ?
quand on ouvre une porte ses point de vie passent à 0
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 XaMaRo
Amateur de graphisme


Inscrit le: 28 Aoû 2007
Messages: 280
Sujets: 29
Spécialité en worldedit: Je cherche encore ...


MessagePosté le: 02/01/08 15:09    Sujet du message: Citer

Non mon unité n'est pas une porte Smile
Mon problème est résolu il falait mettre :

Gui:
Trigger:
Update de la vie dans le multiboard
Collapse Evénements
Temps - Every 0.75 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 12, do (Actions)
Collapse Boucle - Actions
Set couleur = (100.00 - (Real((Integer((Percentage life of MainBuilding[(Integer A)]))))))
Multitable - Set the text for Multi item in column 8, row LignesDesJoueurs[(Player number of ([(Integer A)]) to (String((Integer((Percentage life of MainBuilding[(Integer A)])))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
couleur Inférieur à  51.00
Collapse Alors - Actions
Multitable - Set the color for Multi item in column 8, row LignesDesJoueurs[(Player number of ([(Integer A)]) to (couleur%, 100.00%, 0.00%) with 0.00% transparency
Collapse Sinon - Actions
Multitable - Set the color for Multi item in column 8, row LignesDesJoueurs[(Player number of ([(Integer A)]) to (100.00%, (200.00 - (couleur x 2.00))%, 0.00%) with 0.00% transparency

A la place de :

Gui:
Trigger:
Update de la vie dans le multiboard
Collapse Evénements
Temps - Every 0.75 seconds of game time
Conditions
Collapse Actions
Collapse For each (Integer A) from 1 to 12, do (Actions)
Collapse Boucle - Actions
Set couleur = (100.00 - (Real((Integer((Percentage life of MainBuilding[(Integer A)]))))))
Multitable - Set the text for Multi item in column 8, row LignesDesJoueurs[(Player number of (Owner of MainBuilding[(Integer A)]))] to (String((Integer((Percentage life of MainBuilding[(Integer A)])))))
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
couleur Inférieur à  51.00
Collapse Alors - Actions
Multitable - Set the color for Multi item in column 8, row LignesDesJoueurs[(Player number of (Owner of MainBuilding[(Integer A)]))] to (couleur%, 100.00%, 0.00%) with 0.00% transparency
Collapse Sinon - Actions
Multitable - Set the color for Multi item in column 8, row LignesDesJoueurs[(Player number of (Owner of MainBuilding[(Integer A)]))] to (100.00%, (200.00 - (couleur x 2.00))%, 0.00%) with 0.00% transparency

_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Darkfeyt
Floodeur prématuré


Inscrit le: 22 Nov 2007
Messages: 677
Sujets: 27
Spécialité en worldedit: Jamais sortir ses projets ?


MessagePosté le: 03/01/08 14:09    Sujet du message: Citer

[(Player number of ([(Integer A)]
(de "Multitable - Set the text for Multi item in column 8, row LignesDesJoueurs[(Player number of ([(Integer A)]) to (String((Integer((Percentage life of MainBuilding[(Integer A)])))))") )

Oh mon dieu comment a tu pu faire sa >< ^^
(c'est pasque je l'ai aidé par msn)

Player number of (integer A) sera toujours egal a (integer A)
(apart si on comence l'index de joueur a 0 comme en jass)

donc tu peut remplacé
"[(Player number of ([(Integer A)]"
par
"[(integer A)]".
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail MSN Messenger
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1
La question posée dans ce topic a été résolue !

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com