Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.php?sid=fe61da78152b300907dcc92cfb8ebedcMé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

[Dialogue] Declenchement de 2 Reponses pour 1 Bouton
Aller à la page 1, 2  Suivante
 
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
 Wareditor
The Master of Nothing


Inscrit le: 22 Déc 2008
Messages: 1638
Sujets: 88
Spécialité en worldedit: Effacer


MessagePosté le: 26/04/11 13:03    Sujet du message: [Dialogue] Declenchement de 2 Reponses pour 1 Bouton Citer

Comme je le dis dans le titre un de mes boutons déclenche 2 réponses en même temps alors que logiquement tout devrait se passe comme sa :

Bouton 3 déclenche Action 3
Bouton 6 déclenche Action 6

Mais la sa se passe comme sa :

Bouton 3 déclenche Action 3 et 6

J'ai fouille tout mon déclencheur et ne comprend toujours pas se beug

Déclencheur 1 ( celui qui gère l'enclenchement du Dialogue )
Secret:

Gui:
Trigger:
Enter
Collapse Evénements
Unité - A unit enters Enter VillageOK <gen>
Collapse Conditions
((Triggering unit) is Un héros) Egal à  TRUE
NbrReputationOldKingdom[(Player number of (Owner of (Triggering unit)))] Inférieur à  15
NbrReputationOldKingdom[(Player number of (Owner of (Triggering unit)))] Supérieur à  -15
((Triggering unit) is an illusion) Egal à  FALSE
((Triggering unit) has buff Vent divin) Egal à  FALSE
Collapse Actions
Wait 0.50 seconds
Unité - Order (Triggering unit) to Arrêter
Dialogue - Change the title of Dialog_Menu[(Player number of (Owner of (Triggering unit)))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Triggering unit)))] labelled |cffffffffI'm here ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 1))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Triggering unit)))] labelled |cffffffffWho are y...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 2))] = (Last created dialog Button)
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
Bol_FirstMet[(Player number of (Owner of (Triggering unit)))] Egal à  FALSE
Collapse Alors - Actions
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Triggering unit)))] labelled |cffffffff*Run Away...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Owner of (Triggering unit)))] for (Owner of (Triggering unit))
Collapse Sinon - Actions
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Triggering unit)))] labelled |cffffffffYou don't...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 8))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Owner of (Triggering unit)))] for (Owner of (Triggering unit))



Déclencheur 2 ( celui qui gere les réponses )
Secret:

Gui:
Trigger:
Answer
Collapse Evénements
Dialogue - A dialog button is clicked for Dialog_Menu[1]
Dialogue - A dialog button is clicked for Dialog_Menu[2]
Dialogue - A dialog button is clicked for Dialog_Menu[3]
Dialogue - A dialog button is clicked for Dialog_Menu[4]
Dialogue - A dialog button is clicked for Dialog_Menu[5]
Dialogue - A dialog button is clicked for Dialog_Menu[6]
Dialogue - A dialog button is clicked for Dialog_Menu[7]
Dialogue - A dialog button is clicked for Dialog_Menu[8]
Dialogue - A dialog button is clicked for Dialog_Menu[9]
Dialogue - A dialog button is clicked for Dialog_Menu[10]
Dialogue - A dialog button is clicked for Dialog_Menu[11]
Dialogue - A dialog button is clicked for Dialog_Menu[12]
Conditions
Collapse Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 1))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Owner of (Triggering unit)))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffI can do ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cfffffffflook at m...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 5))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled (|cffffffffI can kill some of your soldiers to proove my power|r|n + (Lvl  + ((String((Hero level of Hero[(Player number of (Triggering player))]))) +  / 45)))
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 2))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Owner of (Triggering unit)))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffI can do ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffI can pay...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 7))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled (|cffffffffI can kill some of your soldiers to proove my power|r|n + (Lvl  + ((String((Hero level of Hero[(Player number of (Triggering player))]))) +  / 45)))
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Set Pos_Another[1] = (Center of Run Away <gen>)
Set Pos_Another[2] = (Center of Tp for Run Away <gen>)
Unité - Move Hero[(Player number of (Triggering player))] instantly to Pos_Another[2]
Unité - Order Hero[(Player number of (Triggering player))] to Avancer vers Pos_Another[1]
Partie - Display to (Player group((Player((Player number of (Triggering player)))))) the text: |CFF106246OLD KINGD...
Set Bol_FirstMet[(Player number of (Triggering player))] = TRUE
Set NbrReputationOldKingdom[(Player number of (Triggering player))] = (NbrReputationOldKingdom[(Player number of (Triggering player))] - 5)
Custom script:   call RemoveLocation( udg_Pos_Another[1] )
Custom script:   call RemoveLocation( udg_Pos_Another[2] )
Dialogue - Masquer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Owner of (Triggering unit)))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffAccept|r
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 9))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffRefuse|r
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 10))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 5))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Owner of (Triggering unit)))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffOk, what ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffPff.. I d...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 11))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))]
(Clicked dialog button) Différent de Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))]
Collapse Alors - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Hero level of Hero[(Player number of (Triggering player))]) Inférieur à  45
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))]
(Clicked dialog button) Différent de Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Partie - Display to (Player group((Player((Player number of (Triggering player)))))) the text: |CFF106246OLD KINGD...
Set NbrReputationOldKingdom[(Player number of (Triggering player))] = (NbrReputationOldKingdom[(Player number of (Triggering player))] - 20)
Dialogue - Masquer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse Sinon - Actions



Ps: Coefficient = 8 ( la map comporte 8 PJ )

Merci d'avance si vous arrivez a m'aider Smile
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 26/04/11 17:27    Sujet du message: Citer

Wareditor a écrit:
Mais la sa se passe comme sa :

Bouton 3 déclenche Action 3 et 6

Je ne sais pas pourquoi cela fait ça exactement.
Tout d'abord je suis loin d'être spécialiste des dialogues.

Cependant je vois des choses incohérentes qui ont besoin d'être rectifiées avant de chercher plus avant :
_triggering player -> peut-être est-ce correct est cela permet-il de récupérer le joueur qui a cliqué sur le bouton, mais need quelqu'un le confirmer
_triggering unit -> il est clair que c'est incohérent ici, ça renverra toujours la valeur nulle
_tu crées les mêmes interfaces graphiques pour tous les joueurs, une pour chacun, alors que une seule suffit
-> l'action "montrer <dialog menu> for <player>" parle d'elle-même. Une seule interface pour être utilisée séparément par les différents joueurs
_tu crées les boutons dynamiquement pendant le jeu alors que ça devrait être fait à l'initialisation : une fois que l'interface est faite, il suffit de la faire s'afficher quand on en a besoin
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Wareditor
The Master of Nothing


Inscrit le: 22 Déc 2008
Messages: 1638
Sujets: 88
Spécialité en worldedit: Effacer


MessagePosté le: 27/04/11 10:05    Sujet du message: Citer

Max a écrit:

_triggering player -> peut-être est-ce correct est cela permet-il de récupérer le joueur qui a cliqué sur le bouton, mais need quelqu'un le confirmer


Si si c'est correct, a moins qu'il existe une réponse évènement joueur pour cliked buttoun

Max a écrit:

_triggering unit -> il est clair que c'est incohérent ici, ça renverra toujours la valeur nulle


D'accord je vais changer sa Smile

Max a écrit:

_tu crées les mêmes interfaces graphiques pour tous les joueurs, une pour chacun, alors que une seule suffit
-> l'action "montrer <dialog menu> for <player>" parle d'elle-même. Une seule interface pour être utilisée séparément par les différents joueurs


Bas enfaite l'action peut être déclencher plusieurs fois en même temps donc sa créerait d'un incohérence
ex : Pj1 avec dialogue du PJ2

Max a écrit:

_tu crées les boutons dynamiquement pendant le jeu alors que ça devrait être fait à l'initialisation : une fois que l'interface est faite, il suffit de la faire s'afficher quand on en a besoin


Oui c'est obligatoire car sinon le Pj se trouve avec tout les bouton au début alors que mon but est de crée une conversation a choix et a conséquences multiples
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


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

MessagePosté le: 27/04/11 16:42    Sujet du message: Citer

Le fait d'utiliser la réponse évènement "triggering unit" avec un event inadéquat (event de dialog) renvoie "pas d'unité", soit "null".

Player Number of null -> 0 , ce qui ne correspond pas à l'id d'un joueur valide en gui et au premier joueur (rouge) en jass.

Donc change déjà "owner of triggering unit" par "triggering player" et on reparle après.

(Mon dieu que le gui brûle les yeux)
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Wareditor
The Master of Nothing


Inscrit le: 22 Déc 2008
Messages: 1638
Sujets: 88
Spécialité en worldedit: Effacer


MessagePosté le: 27/04/11 17:58    Sujet du message: Citer

Il est vrai que certaines actions de declo 2 sont owner of triggering unit. La cause est que j ai copié certaines action du declo 1 dont j'avais oublié de changer les "owner of"

Donc je corrige et je test Smile
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 27/04/11 18:31    Sujet du message: Citer

Wareditor a écrit:
Max a écrit:
_tu crées les boutons dynamiquement pendant le jeu alors que ça devrait être fait à l'initialisation : une fois que l'interface est faite, il suffit de la faire s'afficher quand on en a besoin

Oui c'est obligatoire car sinon le Pj se trouve avec tout les bouton au début alors que mon but est de crée une conversation a choix et a conséquences multiples

Je vais détailler pour mieux t'expliquer :
Pour chaque interface graphique différente, c'est-à-dire un affichage, un ensemble de boutons, tu dois créer un dialogue, auquel tu ajoutes les boutons qu'il doit contenir bien évidemment. C'est à faire à l'initialisation, et à ne pas modifier au cours du jeu. Au cours du jeu en revanche, on affiche chaque dialogue/interface graphique au(x) moment(s) que l'on veut et au(x) joueur(s) que l'on veut. Une fois qu'un certain joueur bien précis clique sur un bouton bien précis (cf l'évènement associé), tu peux cacher pour ce joueur l'interface graphique contenant le bouton cliqué, puis lui afficher une autre interface graphique. Tu n'as pas à modifier les différentes interfaces graphiques, et encore moins à en créer plusieurs identiques. Elles sont utilisables de façon totalement indépendante d'un joueur à l'autre. D'ailleurs, le fait que tu ajoutes/enlèves des boutons dynamiquement en fonction des actions de chaque joueur, t'enlève cette liberté, et cela te force effectivement à créer un dialogue par joueur...
Cela dit, il faut que tu nommes les variables de type dialogue et celles de type bouton de façon à ce que le code GUI soit bien plus lisible que ce qu'il est actuellement (c'est très dur à déchiffrer). En général pour un bouton on met un nom correspondant à ce que le bouton affiche.
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Wareditor
The Master of Nothing


Inscrit le: 22 Déc 2008
Messages: 1638
Sujets: 88
Spécialité en worldedit: Effacer


MessagePosté le: 28/04/11 16:45    Sujet du message: Citer

@ Max Je vais essayer de test Wink

@ Tout le monde Toujours le même bug même après changement :

Secret:

Gui:
Trigger:
Enter
Collapse Evénements
Unité - A unit enters Enter VillageOK <gen>
Collapse Conditions
((Entering unit) is Un héros) Egal à  TRUE
NbrReputationOldKingdom[(Player number of (Owner of (Entering unit)))] Inférieur à  15
NbrReputationOldKingdom[(Player number of (Owner of (Entering unit)))] Supérieur à  -15
((Entering unit) is an illusion) Egal à  FALSE
((Entering unit) has buff Vent divin) Egal à  FALSE
Collapse Actions
Wait 0.50 seconds
Unité - Order (Entering unit) to Arrêter
Dialogue - Change the title of Dialog_Menu[(Player number of (Owner of (Entering unit)))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Entering unit)))] labelled |cffffffffI'm here ...
Set Dialog_Button[((Player number of (Owner of (Entering unit))) + (Coefficiant x 1))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Entering unit)))] labelled |cffffffffWho are y...
Set Dialog_Button[((Player number of (Owner of (Entering unit))) + (Coefficiant x 2))] = (Last created dialog Button)
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
Bol_FirstMet[(Player number of (Owner of (Entering unit)))] Egal à  FALSE
Collapse Alors - Actions
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Entering unit)))] labelled |cffffffff*Run Away...
Set Dialog_Button[((Player number of (Owner of (Entering unit))) + (Coefficiant x 3))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Owner of (Entering unit)))] for (Owner of (Entering unit))
Collapse Sinon - Actions
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Owner of (Entering unit)))] labelled |cffffffffYou don't...
Set Dialog_Button[((Player number of (Owner of (Entering unit))) + (Coefficiant x 8))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Owner of (Entering unit)))] for (Owner of (Entering unit))




Secret:

Gui:
Trigger:
Answer
Collapse Evénements
Dialogue - A dialog button is clicked for Dialog_Menu[1]
Dialogue - A dialog button is clicked for Dialog_Menu[2]
Dialogue - A dialog button is clicked for Dialog_Menu[3]
Dialogue - A dialog button is clicked for Dialog_Menu[4]
Dialogue - A dialog button is clicked for Dialog_Menu[5]
Dialogue - A dialog button is clicked for Dialog_Menu[6]
Dialogue - A dialog button is clicked for Dialog_Menu[7]
Dialogue - A dialog button is clicked for Dialog_Menu[8]
Dialogue - A dialog button is clicked for Dialog_Menu[9]
Dialogue - A dialog button is clicked for Dialog_Menu[10]
Dialogue - A dialog button is clicked for Dialog_Menu[11]
Dialogue - A dialog button is clicked for Dialog_Menu[12]
Conditions
Collapse Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 1))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Triggering player))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffI can do ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cfffffffflook at m...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 5))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled (|cffffffffI can kill some of your soldiers to proove my power|r|n + (Lvl  + ((String((Hero level of Hero[(Player number of (Triggering player))]))) +  / 45)))
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 2))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Triggering player))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffI can do ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffI can pay...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 7))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled (|cffffffffI can kill some of your soldiers to proove my power|r|n + (Lvl  + ((String((Hero level of Hero[(Player number of (Triggering player))]))) +  / 45)))
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Set Pos_Another[1] = (Center of Run Away <gen>)
Set Pos_Another[2] = (Center of Tp for Run Away <gen>)
Unité - Move Hero[(Player number of (Triggering player))] instantly to Pos_Another[2]
Unité - Order Hero[(Player number of (Triggering player))] to Avancer vers Pos_Another[1]
Partie - Display to (Player group((Player((Player number of (Triggering player)))))) the text: |CFF106246OLD KINGD...
Set Bol_FirstMet[(Player number of (Triggering player))] = TRUE
Set NbrReputationOldKingdom[(Player number of (Triggering player))] = (NbrReputationOldKingdom[(Player number of (Triggering player))] - 5)
Custom script:   call RemoveLocation( udg_Pos_Another[1] )
Custom script:   call RemoveLocation( udg_Pos_Another[2] )
Dialogue - Masquer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Triggering player))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffAccept|r
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 9))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffRefuse|r
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 10))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 5))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Dialogue - Change the title of Dialog_Menu[(Player number of (Triggering player))] to |cffffcc00Captain :...
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffOk, what ...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 4))] = (Last created dialog Button)
Dialogue - Create a dialog button for Dialog_Menu[(Player number of (Triggering player))] labelled |cffffffffPff.. I d...
Set Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 11))] = (Last created dialog Button)
Dialogue - Montrer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))]
(Clicked dialog button) Différent de Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))]
Collapse Alors - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Hero level of Hero[(Player number of (Triggering player))]) Inférieur à  45
(Clicked dialog button) Egal à  Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 6))]
(Clicked dialog button) Différent de Dialog_Button[((Player number of (Triggering player)) + (Coefficiant x 3))]
Collapse Alors - Actions
Dialogue - Clear Dialog_Menu[(Player number of (Triggering player))]
Partie - Display to (Player group((Player((Player number of (Triggering player)))))) the text: |CFF106246OLD KINGD...
Set NbrReputationOldKingdom[(Player number of (Triggering player))] = (NbrReputationOldKingdom[(Player number of (Triggering player))] - 20)
Dialogue - Masquer Dialog_Menu[(Player number of (Triggering player))] for (Triggering player)
Sinon - Actions
Collapse Sinon - Actions


_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
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: 28/04/11 17:44    Sujet du message: Citer

Avant d'aller plus loin est que les slots des joueurs sont t'ils bien ceux qui vont de 1 à 8 ?

Sinon cela ne peut pas fonctionner.

Hypothèse où les slots sont contigus et vont de 1 à 8 :

bouton 1 :

1 + 8*1 = 9 // min : joueur 1
8 + 8*1 = 16 // max : joueur 8

bouton 2 :

1 + 8*2 = 17 // min : joueur 1
8 + 8*2 = 24 // max : joueur 8

Chaque indice de tableau est bien utilisé qu'une seule fois.

Maintenant prenons le cas où par exemple tu as choisis pour les slots de joueurs de 1 à 7, et le slot 10

10 + 8 *1 = 18 // bouton 1 , joueur 10
2 + 8*2 = 18 // bouton 2 , joueur 2

Il y a mélange, les boutons sont bien créés mais les variables associées sont écrasées, car utilisées plusieurs fois par des joueurs différents.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Wareditor
The Master of Nothing


Inscrit le: 22 Déc 2008
Messages: 1638
Sujets: 88
Spécialité en worldedit: Effacer


MessagePosté le: 28/04/11 21:16    Sujet du message: Citer

Oui sauf que j'utilise bien les slots 1-8 ( par contre j'ai déplacé le slot 4 pour en faire le slot 9, question de couleur. Cela change quelque-chose ? )

mais je comprend pas comme je test en solo sa ne devrai pas affecter le résultat, non ?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
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: 28/04/11 22:32    Sujet du message: Citer

Wareditor a écrit:
Oui sauf que j'utilise bien les slots 1-8 ( par contre j'ai déplacé le slot 4 pour en faire le slot 9, question de couleur. Cela change quelque-chose ? )


Ça dépend tu veux dire quoi ? que tu as utilisé le joueur 9, ou que tu as simplement changé la couleur du joueur 4 ?
On s'en fout des couleurs, par contre les joueurs utilisés doivent être impérativement les joueurs compris entre 1 et 8 inclus.

Citation:
mais je comprend pas comme je test en solo sa ne devrai pas affecter le résultat, non ?


Bah tu m'as jamais dit que cela buggait aussi en solo.
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Wareditor
The Master of Nothing


Inscrit le: 22 Déc 2008
Messages: 1638
Sujets: 88
Spécialité en worldedit: Effacer


MessagePosté le: 28/04/11 22:46    Sujet du message: Citer

Bas j'ai jamais dit que ca buggait en multi Razz

Nan serieusement, j'ai uniquement test en solo donc voila :/
On s'en fout des nombres ? ( meme si j'ai une question : si je met le joueur violet en place 9 et le joueur rose en place 4, le joueur rose sera compté numero 4 ? )
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


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

MessagePosté le: 28/04/11 22:57    Sujet du message: Citer

Wareditor a écrit:
Bas j'ai jamais dit que ca buggait en multi Razz

Nan serieusement, j'ai uniquement test en solo donc voila :/


C'était tout sauf évident. I'm not in your mind.

Citation:
On s'en fout des nombres ? ( meme si j'ai une question : si je met le joueur violet en place 9 et le joueur rose en place 4, le joueur rose sera compté numero 4 ? )


Ça dépend, si tu t'en fous de la logique mathématique et des bugs liés à cette logique non respectée, alors oui on s'en fout des nombres.
Je ne sais pas de quoi tu parles je ne peux pas lancer l'éditeur là.
Mais je pense avoir été clair.
Au pire dans tes équations, à la place de "8" utilises l'index du joueur humain max, soit 12, et c'est réglé définitivement. (ce problème)

Et si ca fonctionne toujours pas, tient moi au courant (fort probable, mais le GUI je le digère à petite dose, corrige déjà les erreurs connues et testes le résultat pour éviter que je me tape du GUI pour rien)
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Tirlititi



Inscrit le: 21 Fév 2010
Messages: 1785
Sujets: 22
Spécialité en worldedit: La modestie
Médailles: 1 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 28/04/11 23:38    Sujet du message: Citer

D'abord, c'est normal qu'on voit pas comment tu créés les boutons 4 et 5 ?
Ensuite, tu mets "Set Dialog_Button[((Player number of (Owner of (Entering unit))) + (Coefficiant x 8))] = (Last created dialog Button)", ce serait pas plutôt "Coef x 6" ?

Du coup, ton bouton n°6 est "null" et, comme tu utilises "Clear dialog", le bouton sur lequel tu cliques est supprimé et devient donc "null".
Essaies donc en corrigeant ça et en mettant les "Clear dialog" à la toute fin du 2nd déclo (ou sinon, tu imbriques les if les uns dans les autres et c'est tout moche en GUI).

M'enfin, je comprend pas pourquoi ça ne buguerait pas aussi avec les autres boutons et pourquoi ça bug avec la condition "clicked button différent de Button n°3". Il y a peut-être autre chose...
_________________
Warcraft III, c'était mieux avant. Y'avait des purs chefs-d'oeuvres du mapping !
Road Of Glory (par moi)
Casse-briques (par moi)
Temple de Glace (par moi)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 29/04/11 02:41    Sujet du message: Citer

Nan mais...

Wareditor a écrit:
@ Max Je vais essayer de test

@ Tout le monde Toujours le même bug même après changement

Je ne sais pas quand tu as prévu d'essayer de tester effectivement, mais personnellement tant que je verrai des "create dialog button" dans des déclo avec des évènements dépendant des actions de joueurs je ne regarderai pas plus avant.


@ TB :
Je suis étonné que tu le confortes dans sa façon de faire, j'ai besoin que tu confirmes ce que j'ai dit :
Moi a écrit:
Pour chaque interface graphique différente, c'est-à-dire un affichage, un ensemble de boutons, tu dois créer un dialogue, auquel tu ajoutes les boutons qu'il doit contenir bien évidemment. C'est à faire à l'initialisation, et à ne pas modifier au cours du jeu. Au cours du jeu en revanche, on affiche chaque dialogue/interface graphique au(x) moment(s) que l'on veut et au(x) joueur(s) que l'on veut. Une fois qu'un certain joueur bien précis clique sur un bouton bien précis (cf l'évènement associé), tu peux cacher pour ce joueur l'interface graphique contenant le bouton cliqué, puis lui afficher une autre interface graphique. Tu n'as pas à modifier les différentes interfaces graphiques, et encore moins à en créer plusieurs identiques. Elles sont utilisables de façon totalement indépendante d'un joueur à l'autre. D'ailleurs, le fait que tu ajoutes/enlèves des boutons dynamiquement en fonction des actions de chaque joueur, t'enlève cette liberté, et cela te force effectivement à créer un dialogue par joueur...
Cela dit, il faut que tu nommes les variables de type dialogue et celles de type bouton de façon à ce que le code GUI soit bien plus lisible que ce qu'il est actuellement (c'est très dur à déchiffrer). En général pour un bouton on met un nom correspondant à ce que le bouton affiche.

J'ai besoin que tu me confirmes cela car j'ai très peu utilisé les "dialogues" sur war3 et c'était il y a longtemps. Ce que je dis se base plus sur mes connaissances des interfaces graphiques Swing (java) que sur l'éditeur de cartes, mais je pense que le fonctionnement général est le même, comme pour toute interface graphique faite en n'importe quel langage.

Je pense que je vais tout de même créer une ébauche afin de :
1) vérifier pleinement mes dires
2) présenter un exemple concret à notre ami


edit: "@ Max Je vais essayer de test Wink"
J'avais pas fait gaffe que tu as dit ça il y a 10h seulement Confused.
Laughing
Vais faire une ébauche quand même.
Enfin, chépa quand, quand j'aurai le temps et le courage.
_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Max
Floodeur prématuré


Inscrit le: 13 Jan 2009
Messages: 550
Sujets: 47
Spécialité en worldedit: La partie déclencheurs sauf le GUI.


MessagePosté le: 29/04/11 05:16    Sujet du message: Citer

Bon ben j'arrivais po à dormir.

Je me trompais sur un point : on ne peut pas créer de boutons pour un dialogue à l'initialisation (event Map init).
Mais c'est pas grave, il suffit d'utiliser l'event de début de partie (time elapsed 0.00 s).

J'ai donc eu le temps (bon ça empiète un peu sur la nuit) et le courage (j'ai fait du GUI quand même - TB comprendra) de faire une "ébauche".


Bon, étant donné que je trouve la map que j'ai faite exemplaire, je la mets à votre disposition (elle pourra servir à d'autres que notre ami auteur de ce topic) en plus de poster les triggers.
cliquer ici pour télécharger la carte d'exemple


Principe de l'exemple donné : fournir aux joueurs une interface graphique leur permettant de personnaliser l'apparence de leur héros (un héros par joueur ici) ; soit la couleur du héros, ainsi que sa taille.

Deux interfaces graphiques sont mises en oeuvre :
_un(e) GUI pour le choix de la nouvelle couleur à donner au héros
_un(e) GUI pour le choix de la taille (en pourcentage par rapport à la taille normale)
(GUI = graphical user interface)


Je connais bien les interface graphiques en java (bibliothèque swing) et ça fonctionne de la même manière. On définit une interface graphique, aussi complexe puisse-t-elle être, et on l'affiche lors de l'exécution du programme aux moments opportuns.
Ceci appliqué à war3 consiste à définir les interfaces graphiques en début de partie, et simplement exécuter l'action "montrer dialogue" au cours du jeu, quand il faut le faire.

Wareditor, tu devrais voir aisément que cette façon de faire est bien plus :
_facile à mettre en oeuvre
_rapide à mettre en oeuvre
_efficace
_lisible (point très important)
_évolutive (on peut modifier les GUI bien plus facilement)
_intuitive/logique (en tous cas ça l'est pour moi)
que la méthode que tu as utilisée.


Variables mises en oeuvre :

Secret:



Déclencheurs mis en oeuvre :

Dans le répertoire d'initialisation
Secret:

Création des héros à l'initialisation :
Gui:
Trigger:
initHeroes
Collapse Evénements
Map initialization
Conditions
Collapse Actions
-------- création des héros et assignation pour chacun à  la variable correspondante --------
-------- héros rouge --------
Set heroStartPos = (Point(-100.00, -100.00))
Unité - Create 1 Chasseur de démon for Joueur 1 (Rouge) at heroStartPos facing 270.00 degrees
Set hero[1] = (Last created unit)
Custom script:   call RemoveLocation(udg_heroStartPos)
-------- héros bleu --------
Set heroStartPos = (Point(-100.00, 100.00))
Unité - Create 1 Chasseur de démon for Joueur 2 (Bleu) at heroStartPos facing 270.00 degrees
Set hero[2] = (Last created unit)
Custom script:   call RemoveLocation(udg_heroStartPos)
-------- héros cyan --------
Set heroStartPos = (Point(100.00, -100.00))
Unité - Create 1 Chasseur de démon for Joueur 3 (Cyan) at heroStartPos facing 270.00 degrees
Set hero[3] = (Last created unit)
Custom script:   call RemoveLocation(udg_heroStartPos)
-------- héros violet --------
Set heroStartPos = (Point(100.00, 100.00))
Unité - Create 1 Chasseur de démon for Joueur 4 (Pourpre) at heroStartPos facing 270.00 degrees
Set hero[4] = (Last created unit)
Custom script:   call RemoveLocation(udg_heroStartPos)



Dans le répertoire "dialogues"
Secret:


Définition de l'interface graphique de choix de couleur du héros :
Secret:

Gui:
Trigger:
initGuiChoixCouleur
Collapse Evénements
Temps - Elapsed game time is 0.00 seconds
Conditions
Collapse Actions
-------- création de l'interface graphique (GUI) de choix de couleur --------
-------- le dernier bouton (noir) ne fonctionne pas, les dialogues ne semblent pas accepter plus de 12 boutons --------
Dialogue - Change the title of gui_choixCouleur to Choisissez la nouve...
Dialogue - Create a dialog button for gui_choixCouleur labelled rouge
Set i = 1
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled bleu
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled cyan
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled violet
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled jaune
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled orange
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled vert
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled rose
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled gris
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled bleu clair
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled vert foncé
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled marron
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixCouleur labelled noir
Set i = (i + 1)
Set btn_couleur[i] = (Last created dialog Button)
-------- nbBtnCouleur sert dans le trigger "clicBtnChoixCouleur" --------
Set nbBtnCouleur = i



Définition de l'interface graphique de choix de taille du héros :
Secret:

Gui:
Trigger:
initGuiChoixEchelle
Collapse Evénements
Temps - Elapsed game time is 0.00 seconds
Conditions
Collapse Actions
-------- création de l'interface graphique (GUI) de choix d'échelle (sous forme de pourcentage) --------
Dialogue - Change the title of gui_choixEchelle to Choisissez la nouve...
Dialogue - Create a dialog button for gui_choixEchelle labelled 50 %
Set btn_echelle50 = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixEchelle labelled 75 %
Set btn_echelle75 = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixEchelle labelled 100 %
Set btn_echelle100 = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixEchelle labelled 150 %
Set btn_echelle150 = (Last created dialog Button)
Dialogue - Create a dialog button for gui_choixEchelle labelled 200 %
Set btn_echelle200 = (Last created dialog Button)



Gestion des évènements de clics sur boutons du GUI de choix de couleur :
Secret:

Gui:
Trigger:
clicBtnChoixCouleur
Collapse Evénements
Dialogue - A dialog button is clicked for gui_choixCouleur
Conditions
Collapse Actions
-------- trigger déclenché lors du choix d'une couleur par un joueur --------
Set playerId = (Player number of (Triggering player))
-------- parcours des boutons pour trouver celui qui a été cliqué --------
Collapse For each (Integer A) from 1 to nbBtnCouleur, do (Actions)
Collapse Boucle - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  btn_couleur[(Integer A)]
Collapse Alors - Actions
-------- changement de couleur au héros, passage à  l'écran suivant, et sortie des actions en cours de ce trigger --------
Unité - Change color of hero[playerId] to (Color of (Player((Integer A))))
Dialogue - Montrer gui_choixEchelle for (Triggering player)
-------- inutile de cacher la précédente GUI, ceci est fait automatiquement en montrant la suivante --------
Custom script:   return //me semble qu'en GUI c'était "skip remaining actions" mais je trouve pas
Sinon - Actions
-------- cette partie de code ne devrait pas pouvoir être atteinte, on cache l'interface graphique pour ne pas bloquer le joueur en cas de bug --------
Dialogue - Masquer (Clicked dialog) for (Triggering player)



Gestion des évènements de clics sur boutons du GUI de choix de taille (ou échelle) :
Secret:

Gui:
Trigger:
clicBtnChoixEchelle
Collapse Evénements
Dialogue - A dialog button is clicked for gui_choixEchelle
Conditions
Collapse Actions
-------- trigger déclenché lors du choix d'une échelle par un joueur --------
Set playerId = (Player number of (Triggering player))
Set scale = 0.00
-------- parcours des boutons pour trouver celui qui a été cliqué --------
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  btn_echelle50
Collapse Alors - Actions
Set scale = 50.00
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  btn_echelle75
Collapse Alors - Actions
Set scale = 75.00
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  btn_echelle100
Collapse Alors - Actions
Set scale = 100.00
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  btn_echelle150
Collapse Alors - Actions
Set scale = 150.00
Sinon - Actions
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
(Clicked dialog button) Egal à  btn_echelle200
Collapse Alors - Actions
Set scale = 200.00
Sinon - Actions
-------- fin parcours des boutons --------
-------- on vérifie qu'une échelle correspondant au bouton cliqué a bien été trouvée (simple sécurité) --------
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
scale Différent de 0.00
Collapse Alors - Actions
-------- changement de la taille du héros (pas trouvé d'action GUI pour ça...) --------
Custom script:   call SetUnitScalePercent(udg_hero[udg_playerId], udg_scale, udg_scale, udg_scale)
Sinon - Actions
-------- le jeu peut reprendre pour le joueur qui vient de personnaliser son héros --------
Dialogue - Masquer (Clicked dialog) for (Triggering player)




Dans le répertoire "commandes"
Secret:

La commande "-customizeHero" tapée par le joueur ou l'appui sur échap (ici présent pour pouvoir faire des tests rapides) déclenche l'accès aux GUI pour le joueur en question :
Gui:
Trigger:
cmdCustomizeHero
Collapse Evénements
Joueur - Joueur 1 (Rouge) types a chat message containing -customizeHero as Résultat équivalent
Joueur - Joueur 1 (Rouge) skips a cinematic sequence
Joueur - Joueur 2 (Bleu) types a chat message containing -customizeHero as Résultat équivalent
Joueur - Joueur 2 (Bleu) skips a cinematic sequence
Joueur - Joueur 3 (Cyan) types a chat message containing -customizeHero as Résultat équivalent
Joueur - Joueur 3 (Cyan) skips a cinematic sequence
Joueur - Joueur 4 (Pourpre) types a chat message containing -customizeHero as Résultat équivalent
Joueur - Joueur 4 (Pourpre) skips a cinematic sequence
Conditions
Collapse Actions
-------- j'ai mis l'évènement "skips a cinematic sequence" (appui sur échap) pour permettre de faire des tests rapides --------
-------- à  tester avec les 4 premiers joueurs --------
Dialogue - Montrer gui_choixCouleur for (Triggering player)
-------- il n'y a rien d'autre à  faire que d'afficher l'interface graphique permettant au joueur de faire les choix correspondant à  sa demande (demande via commande) --------




Je suis bien sûr ouvert à toutes questions, je n'ai pas fait tout ça pour que ça ne serve à rien au final Rolling Eyes.

Citation:
Il est établi que lorsqu'une bâtisse tombe en ruine, il est souvent préférable de la raser puis de la reconstruire, plutôt que de tenter de la rénover.

_________________
Maximaxou@northrend

Projet Max Escape Creation (éditeur d'escapes : mazes/slides) : http://max.slid.free.fr/maxEscapeCreation/
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
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
Aller à la page 1, 2  Suivante
Page 1 sur 2

 
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