• 🏆 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!

[Trigger] This trigger is giving me problems.

Status
Not open for further replies.
Level 8
Joined
Dec 29, 2006
Messages
359
Ok, this trigger has 3 main if/then/elses and the first one works fine, the second two are giving me a hassle. Look at the second if/then/else, the one with the condition Nayolara_Attack equal to 1. For some reason, when the boss's health is above 700 itll spawn two ice elementals, and when it is below 700, itll spawn four, and i do not know why. The third if/then/else...it just doesnt fire at all for some reason. Ill attach trigger and map with the post. If you play the map youll probably understand more about what i want this trigger to do. Thanks in advance to all who post!

  • Nayolara Attack Timer
    • Events
    • Conditions
      • (Current_Boss is alive) Equal to True
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Nayolara_Attack Equal to 0
        • Then - Actions
          • Set RandomNum = (Random integer number between 1 and 5)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RandomNum Equal to 1
            • Then - Actions
              • Set Temp_Point = (Center of Poison Hole 1 <gen>)
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Unit - Move Current_Boss instantly to Temp_Point
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Custom script: call RemoveLocation (udg_Temp_Point)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RandomNum Equal to 2
            • Then - Actions
              • Set Temp_Point = (Center of Poison Hole 2 <gen>)
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Unit - Move Current_Boss instantly to Temp_Point
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Custom script: call RemoveLocation (udg_Temp_Point)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RandomNum Equal to 3
            • Then - Actions
              • Set Temp_Point = (Center of Poison Hole 3 <gen>)
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Unit - Move Current_Boss instantly to Temp_Point
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Custom script: call RemoveLocation (udg_Temp_Point)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RandomNum Equal to 4
            • Then - Actions
              • Set Temp_Point = (Center of Poison Hole 4 <gen>)
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Unit - Move Current_Boss instantly to Temp_Point
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Custom script: call RemoveLocation (udg_Temp_Point)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RandomNum Equal to 5
            • Then - Actions
              • Set Temp_Point = (Center of Poison Hole 5 <gen>)
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Unit - Move Current_Boss instantly to Temp_Point
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Custom script: call RemoveLocation (udg_Temp_Point)
            • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
            • Then - Actions
              • Wait 2.00 seconds
              • Unit - Make Current_Boss Invulnerable
              • Set Temp_Point = (Position of Current_Boss)
              • Unit - Create 1 Dummy for Player 12 (Brown) at Temp_Point facing Default building facing degrees
              • Custom script: call RemoveLocation (udg_Temp_Point)
              • Set Dummy = (Last created unit)
              • Set Temp_Point = (Position of Dummy)
              • Unit - Add Ice Storm (100) to Dummy
              • Unit - Order Dummy to Human Archmage - Blizzard Temp_Point
              • Wait 3.00 seconds
              • Unit - Remove Ice Storm (100) from Dummy
              • Unit - Add Ice Storm (400) to Dummy
              • Unit - Order Dummy to Human Archmage - Blizzard Temp_Point
              • Wait 3.00 seconds
              • Unit - Remove Ice Storm (400) from Dummy
              • Unit - Add Ice Storm (700) to Dummy
              • Unit - Order Dummy to Human Archmage - Blizzard Temp_Point
              • Wait 3.00 seconds
              • Unit - Remove Ice Storm (700) from Dummy
              • Unit - Add Ice Storm (1000) to Dummy
              • Unit - Order Dummy to Human Archmage - Blizzard Temp_Point
              • Wait 3.00 seconds
              • Unit - Remove Ice Storm (1000) from Dummy
              • Unit - Add Ice Storm (1300) to Dummy
              • Unit - Order Dummy to Human Archmage - Blizzard Temp_Point
              • Item - Create Frost Shard at Temp_Point
              • Wait 5.00 seconds
              • Unit - Make Current_Boss Vulnerable
              • Set Temp_Point = (Random point in Nayolara Home <gen>)
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Unit - Move Current_Boss instantly to Temp_Point
              • Special Effect - Create a special effect at (Position of Current_Boss) using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
              • Custom script: call RemoveLocation (udg_Temp_Point)
              • Wait 5.00 seconds
              • Unit - Remove Dummy from the game
              • Set Dummy = No unit
              • Custom script: call RemoveLocation (udg_Temp_Point)
              • Set Nayolara_Attack = (Nayolara_Attack + 1)
              • Trigger - Run (This trigger) (checking conditions)
            • Else - Actions
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Nayolara_Attack Equal to 1
        • Then - Actions
          • Unit - Make Current_Boss Invulnerable
          • Set Temp_Point = (Position of Current_Boss)
          • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl
          • Trigger - Turn on Ice Elemental Shatter <gen>
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Life of Current_Boss) Less than or equal to 700.00
            • Then - Actions
              • Unit - Create 1 Ice Elemental for Player 12 (Brown) at Temp_Point facing Default building facing degrees
              • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
              • Unit Group - Add (Last created unit) to Ice_Elementals
              • Unit - Create 1 Ice Elemental for Player 12 (Brown) at Temp_Point facing Default building facing degrees
              • Unit Group - Add (Last created unit) to Ice_Elementals
              • Unit - Add a 25.00 second Generic expiration timer to (Last created unit)
            • Else - Actions
              • Unit - Create 1 Ice Elemental for Player 12 (Brown) at Temp_Point facing Default building facing degrees
              • Unit Group - Add (Last created unit) to Ice_Elementals
              • Unit - Add a 20.00 second Generic expiration timer to (Last created unit)
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Wait 15.00 seconds
          • Trigger - Turn off Ice Elemental Shatter <gen>
          • Unit Group - Remove all units from Ice_Elementals
          • Unit - Make Current_Boss Vulnerable
          • Set Nayolara_Attack = (Nayolara_Attack + 1)
          • Trigger - Run (This trigger) (checking conditions)
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • Nayolara_Attack Equal to 2
        • Then - Actions
          • Set Temp_Point = (Position of Current_Boss)
          • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Set Temp_Point = (Center of Poison Hole 5 <gen>)
          • Unit - Move Current_Boss instantly to Temp_Point
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Set Temp_Point = (Position of Current_Boss)
          • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
          • Unit - Create 1 Dummy for Player 12 (Brown) at Temp_Point facing Default building facing degrees
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Life of Current_Boss) Less than or equal to 500.00
            • Then - Actions
              • Unit - Add Frost Wave (fast) to Dummy
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Wait 1.50 seconds
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Wait 1.50 seconds
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Wait 1.50 seconds
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Wait 1.50 seconds
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Unit - Remove Dummy from the game
              • Custom script: call RemoveLocation (udg_Temp_Point)
            • Else - Actions
              • Unit - Add Frost Wave to Dummy
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Wait 3.00 seconds
              • Set Temp_Point = (Random point in Frost Wave Up <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Right <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Down <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Set Temp_Point = (Random point in Frost Wave Left <gen>)
              • Unit - Order Dummy to Undead Dreadlord - Carrion Swarm Temp_Point
              • Unit - Remove Dummy from the game
              • Custom script: call RemoveLocation (udg_Temp_Point)
          • Wait 2.00 seconds
          • Set Temp_Point = (Position of Current_Boss)
          • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Set Temp_Point = (Random point in Nayolara Home <gen>)
          • Unit - Move Current_Boss instantly to Temp_Point
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Set Temp_Point = (Position of Current_Boss)
          • Special Effect - Create a special effect at Temp_Point using Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl
          • Custom script: call RemoveLocation (udg_Temp_Point)
          • Set Nayolara_Attack = 0
          • Trigger - Run (This trigger) (checking conditions)
        • Else - Actions
 

Attachments

  • XZife Bosses.w3x
    32.6 KB · Views: 36
Level 12
Joined
Mar 16, 2006
Messages
992
First thing I noticed? Position of Current_Boss. That's a leak, dude.

And just another something I noticed, the cycle on it isn't a constant one because of all the waits.

Just a piece of advice: Break this trigger into multiple triggers. Random # = Starts the appropriate trigger.
 
Level 8
Joined
Dec 29, 2006
Messages
359
@ b_a_d, the variable Nayolara_Attack increases by one each time the trigger fires, it basically just sets the pattern of the attacks, blizzard, summon elemental, frost wave.

@ Vegavak, thanks, I'm pretty rusty, considering its been almost a year since ive worked with the editor, ill do as good a job i can at removing all the leaks and breaking it up into other triggers.
 
Status
Not open for further replies.
Top