• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Dialog MPI

Status
Not open for further replies.
Hi! I really need to have this dialog MPI (or MUI would be even better)! I have stucked in my map making, cause I cant move on without to get this to work. For now, if a unit enters one of the regions, and then if an other unit enters the same or an other region in the trigger, the first ones dialog clears, and you cant do anything. So pllz tell me wich variables it need to be arrays in and improvments so I can get it to work. Rep to they who helps!

  • Enter
    • Events
      • Unit - A unit enters Fireplace Library <gen>
      • Unit - A unit enters Diagon Alley Fireplace <gen>
    • Conditions
      • Or - Any (Conditions) are true
        • Conditions
          • (Owner of (Entering unit)) Not equal to Neutral Passive
          • (Owner of (Entering unit)) Not equal to Neutral Hostile
          • (Owner of (Entering unit)) Not equal to Player 12 (Brown)
          • (Owner of (Entering unit)) Not equal to Player 11 (Dark Green)
    • Actions
      • Set Unit_Fireplace = (Entering unit)
      • Dialog - Clear FireDialog
      • Dialog - Change the title of FireDialog to Choose Destination
      • Dialog - Create a dialog button for FireDialog labelled Diagon Alley
      • Set Button_Diagon = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog labelled Ministry Entrance
      • Set Button_Entrance = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog labelled Library
      • Set Button_Library = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog labelled Wizengamot
      • Set Button_Wizengamot = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog labelled Weasleys' Wizard Wh...
      • Set Button_Weasleys = (Last created dialog Button)
      • Dialog - Show FireDialog for (Owner of (Triggering unit))
      • Set Fireplace_Unit[(Player number of (Owner of (Triggering unit)))] = (Triggering unit)
  • Arrive
    • Events
      • Dialog - A dialog button is clicked for FireDialog
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal to Button_Wizengamot
        • Then - Actions
          • Set Temp_Point = (Center of Region 100 <gen>)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to Button_Weasleys
            • Then - Actions
              • Set Temp_Point = (Center of Wesley Fireplace Arrive <gen>)
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Clicked dialog button) Equal to Button_Entrance
                • Then - Actions
                  • Set Temp_Point = (Center of Region 102 <gen>)
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Clicked dialog button) Equal to Button_Diagon
                    • Then - Actions
                      • Set Temp_Point = (Center of Diagon Alley Fireplace Arrive <gen>)
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • (Clicked dialog button) Equal to Button_Library
                        • Then - Actions
                          • Set Temp_Point = (Center of Fireplace Library Arrive <gen>)
                        • Else - Actions
      • Special Effect - Create a special effect attached to the origin of Fireplace_Unit[1] using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Unit - Move Fireplace_Unit[(Player number of (Triggering player))] instantly to Temp_Point
      • Camera - Pan camera for (Triggering player) to Temp_Point over 1.00 seconds
      • Custom script: call RemoveLocation (udg_Temp_Point)
 
I have come this far now, but it still dont work...

  • Enter
    • Events
      • Unit - A unit enters Fireplace Library <gen>
      • Unit - A unit enters Diagon Alley Fireplace <gen>
      • Unit - A unit enters Order Fireplace <gen>
      • Unit - A unit enters Death Eater Fireplace <gen>
      • Unit - A unit enters Region 099 <gen>
      • Unit - A unit enters Death Eater Spawn Right <gen>
      • Unit - A unit enters Region 093 <gen>
      • Unit - A unit enters Death Eater Spawn Left <gen>
      • Unit - A unit enters Order Spawn Left <gen>
      • Unit - A unit enters Region 097 <gen>
      • Unit - A unit enters Order Spawn Right <gen>
      • Unit - A unit enters Wesley Fireplace <gen>
      • Unit - A unit enters Region 101 <gen>
    • Conditions
      • Or - Any (Conditions) are true
        • Conditions
          • (Owner of (Entering unit)) Not equal to Neutral Passive
          • (Owner of (Entering unit)) Not equal to Neutral Hostile
          • (Owner of (Entering unit)) Not equal to Player 12 (Brown)
          • (Owner of (Entering unit)) Not equal to Player 11 (Dark Green)
    • Actions
      • Set Temp_Intgr = (Player number of (Owner of (Triggering unit)))
      • Set Unit_Fireplace[Temp_Intgr] = (Entering unit)
      • Dialog - Clear FireDialog[Temp_Intgr]
      • Dialog - Change the title of FireDialog[Temp_Intgr] to Choose Destination
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled HQ
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Or - Any (Conditions) are true
            • Conditions
              • ((Triggering player) is an ally of Player 11 (Dark Green)) Equal to True
        • Then - Actions
          • Set Button_HQ_Order[Temp_Intgr] = (Last created dialog Button)
        • Else - Actions
          • Set Button_HQ_Death[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Western Lane
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Or - Any (Conditions) are true
            • Conditions
              • ((Triggering player) is an ally of Player 11 (Dark Green)) Equal to True
        • Then - Actions
          • Set Button_Order_Western[Temp_Intgr] = (Last created dialog Button)
        • Else - Actions
          • Set Button_Death_Western[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Central Lane
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Or - Any (Conditions) are true
            • Conditions
              • ((Triggering player) is an ally of Player 11 (Dark Green)) Equal to True
        • Then - Actions
          • Set Button_Order_Central[Temp_Intgr] = (Last created dialog Button)
        • Else - Actions
          • Set Button_Death_Central[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Eastern Lane
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Or - Any (Conditions) are true
            • Conditions
              • ((Triggering player) is an ally of Player 11 (Dark Green)) Equal to True
        • Then - Actions
          • Set Button_Order_Eastern[Temp_Intgr] = (Last created dialog Button)
        • Else - Actions
          • Set Button_Death_Eastern[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Diagon Alley
      • Set Button_Diagon[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Ministry Entrance
      • -------- ----------- --------
      • Set Button_Entrance[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Library
      • Set Button_Library[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Wizengamot
      • Set Button_Wizengamot[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Create a dialog button for FireDialog[Temp_Intgr] labelled Weasleys' Wizard Wh...
      • Set Button_Weasleys[Temp_Intgr] = (Last created dialog Button)
      • Dialog - Show FireDialog[Temp_Intgr] for (Owner of (Triggering unit))
      • Set Fireplace_Unit[(Player number of (Owner of (Triggering unit)))] = (Triggering unit)
  • Arrive
    • Events
      • Dialog - A dialog button is clicked for FireDialog[1]
      • Dialog - A dialog button is clicked for FireDialog[2]
      • Dialog - A dialog button is clicked for FireDialog[3]
      • Dialog - A dialog button is clicked for FireDialog[4]
      • Dialog - A dialog button is clicked for FireDialog[5]
      • Dialog - A dialog button is clicked for FireDialog[6]
      • Dialog - A dialog button is clicked for FireDialog[7]
      • Dialog - A dialog button is clicked for FireDialog[8]
      • Dialog - A dialog button is clicked for FireDialog[9]
      • Dialog - A dialog button is clicked for FireDialog[10]
    • Conditions
    • Actions
      • Set Temp_Intgr2 = (Player number of (Triggering player))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Clicked dialog button) Equal to Button_Diagon[Temp_Intgr2]
        • Then - Actions
          • Set Temp_Point = (Center of Diagon Alley Fireplace Arrive <gen>)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Clicked dialog button) Equal to Button_HQ_Death[Temp_Intgr2]
            • Then - Actions
              • Set Temp_Point = (Center of Death Eater Fireplace Arrive <gen>)
            • Else - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (Clicked dialog button) Equal to Button_HQ_Order[Temp_Intgr2]
                • Then - Actions
                  • Set Temp_Point = (Center of Order Fireplace Arrive <gen>)
                • Else - Actions
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Clicked dialog button) Equal to Button_Library[Temp_Intgr2]
                    • Then - Actions
                      • Set Temp_Point = (Center of Fireplace Library Arrive <gen>)
                    • Else - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • (Clicked dialog button) Equal to Button_Order_Western[Temp_Intgr2]
                        • Then - Actions
                          • Set Temp_Point = (Center of Region 095 <gen>)
                        • Else - Actions
                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            • If - Conditions
                              • (Clicked dialog button) Equal to Button_Order_Central[Temp_Intgr2]
                            • Then - Actions
                              • Set Temp_Point = (Center of Region 098 <gen>)
                            • Else - Actions
                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                • If - Conditions
                                  • (Clicked dialog button) Equal to Button_Order_Eastern[Temp_Intgr2]
                                • Then - Actions
                                  • Set Temp_Point = (Center of Region 096 <gen>)
                                • Else - Actions
                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    • If - Conditions
                                      • (Clicked dialog button) Equal to Button_Death_Western[Temp_Intgr2]
                                    • Then - Actions
                                      • Set Temp_Point = (Center of Region 091 <gen>)
                                    • Else - Actions
                                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                        • If - Conditions
                                          • (Clicked dialog button) Equal to Button_Death_Central[Temp_Intgr2]
                                        • Then - Actions
                                          • Set Temp_Point = (Center of Region 094 <gen>)
                                        • Else - Actions
                                          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                            • If - Conditions
                                              • (Clicked dialog button) Equal to Button_Death_Eastern[Temp_Intgr2]
                                            • Then - Actions
                                              • Set Temp_Point = (Center of Region 092 <gen>)
                                            • Else - Actions
                                              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                                • If - Conditions
                                                  • (Clicked dialog button) Equal to Button_Wizengamot[Temp_Intgr2]
                                                • Then - Actions
                                                  • Set Temp_Point = (Center of Region 100 <gen>)
                                                • Else - Actions
                                                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                                    • If - Conditions
                                                      • (Clicked dialog button) Equal to Button_Weasleys[Temp_Intgr2]
                                                    • Then - Actions
                                                      • Set Temp_Point = (Center of Wesley Fireplace Arrive <gen>)
                                                    • Else - Actions
                                                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                                        • If - Conditions
                                                          • (Clicked dialog button) Equal to Button_Entrance[Temp_Intgr2]
                                                        • Then - Actions
                                                          • Set Temp_Point = (Center of Region 102 <gen>)
                                                        • Else - Actions
      • Special Effect - Create a special effect attached to the origin of Fireplace_Unit[1] using Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl
      • Special Effect - Destroy (Last created special effect)
      • Unit - Move Fireplace_Unit[(Player number of (Triggering player))] instantly to Temp_Point
      • Camera - Pan camera for (Triggering player) to Temp_Point over 1.00 seconds
      • Custom script: call RemoveLocation (udg_Temp_Point)
 
Level 4
Joined
Mar 23, 2008
Messages
87
Jack Sparrow93, when your trigger is several pages long in GUI, wouldn't you agree that it is perhaps time to learn JASS?
 
Level 9
Joined
May 30, 2008
Messages
430
Don't listen to them. JASS may be the best but it's not our fault that blizard make us learn GUI and after this we learn about the existance of JASS so what we have to spent time to learn it after we learn GUI I don't think so . About your long trigger you need simple to use loop and few variables in order to make it shorter. and as DSG say very often "let's don't argue about GUI and JASS" we all know that GUI translate our comands to JASS in order to warcraft to understood them and with JASS we can talk to warcraft directly w/e it's free world every one must have a right to choose

have fun all:wink::thumbs_up: about the guy with the trigger if u can't make those variables and the loop read some tutorials if u still can't u can contact me
 

Cokemonkey11

Spell Reviewer
Level 29
Joined
May 9, 2006
Messages
3,534
Don't listen to them. JASS may be the best but it's not our fault that blizard make us learn GUI and after this we learn about the existance of JASS so what we have to spent time to learn it after we learn GUI I don't think so . About your long trigger you need simple to use loop and few variables in order to make it shorter. and as DSG say very often "let's don't argue about GUI and JASS" we all know that GUI translate our comands to JASS in order to warcraft to understood them and with JASS we can talk to warcraft directly w/e it's free world every one must have a right to choose

have fun all:wink::thumbs_up: about the guy with the trigger if u can't make those variables and the loop read some tutorials if u still can't u can contact me

I stopped reading after the first sentence. Jass is better in every way.
 
Level 10
Joined
Sep 21, 2007
Messages
517
HMM? Someone said jass is better in every waY??! With GUI you can do almost anything, its just a matter of creativity, sure JASS users have locals and natives and shit like that, along with functions, but i mean cmon why learn a whole language when your mapping for the entertainment of others. I saw people using many stuff in GUI in the most creative ways, and i believe in GUI, even tho JASS has more efficient coding and more possibilities!
 
Status
Not open for further replies.
Top