Hi, I need some help identifying the problem in my trigger. As the title says, it only runs the damage portion of my trigger on the first cast, but is broken on subsequent casts. Any help identifying the problem would be greatly appreciated!
-
Al Huma
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Al Huma+
-
-
Actions
-
Set VariableSet Al_Huma_Index = (Al_Huma_Index + 1)
-
Set VariableSet Al_Huma_Caster[Al_Huma_Index] = (Triggering unit)
-
Set VariableSet Al_Huma_Target[Al_Huma_Index] = (Target unit of ability being cast)
-
Set VariableSet Al_Huma_Count[Al_Huma_Index] = 0.00
-
Set VariableSet Al_Huma_Dummy_Angle = 180.00
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Al_Huma_Index Equal to 1
-
-
Then - Actions
-
Unit - Pause Al_Huma_Caster[Al_Huma_Index]
-
Trigger - Turn on AlHumaLoop <gen>
-
-
Else - Actions
-
-
-
-
AlHumaLoop
-
Events
-
Time - Every 0.25 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer Al_Huma_Loop_Integer) from 1 to Al_Huma_Index, do (Actions)
-
Loop - Actions
-
Animation - Play Al_Huma_Caster[Al_Huma_Loop_Integer]'s channel animation
-
Unit - Create 1 AlHumaDummy for (Owner of Al_Huma_Caster[Al_Huma_Loop_Integer]) at ((Position of Al_Huma_Caster[Al_Huma_Loop_Integer]) offset by 300.00 towards Al_Huma_Dummy_Angle degrees.) facing (Position of Al_Huma_Target[Al_Huma_Loop_Integer])
-
Set VariableSet Al_Huma_Dummy[Al_Huma_Loop_Integer] = (Last created unit)
-
Unit - Add a 2.50 second Generic expiration timer to Al_Huma_Dummy[Al_Huma_Loop_Integer]
-
Game - Display to (All players) for 1.00 seconds the text: grouped
-
Unit Group - Add Al_Huma_Dummy[Al_Huma_Loop_Integer] to Al_Huma_Dummy_Group
-
Unit - Add Al Huma Dummy Spell to Al_Huma_Dummy[Al_Huma_Loop_Integer]
-
Animation - Change Al_Huma_Dummy[Al_Huma_Loop_Integer] flying height to 250.00 at 999999.00
-
Set VariableSet Al_Huma_Dummy_Angle = (Al_Huma_Dummy_Angle + 45.00)
-
Set VariableSet Al_Huma_Count[Al_Huma_Loop_Integer] = (Al_Huma_Count[Al_Huma_Loop_Integer] + 0.25)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Al_Huma_Count[Al_Huma_Loop_Integer] Greater than or equal to 2.00
-
-
Then - Actions
-
Unit Group - Pick every unit in Al_Huma_Dummy_Group and do (Actions)
-
Loop - Actions
-
Unit - Order (Picked unit) to Undead Dreadlord - Carrion Swarm (Position of Al_Huma_Target[Al_Huma_Loop_Integer])
-
Game - Display to (All players) for 1.00 seconds the text: dmg
-
-
-
Unit - Unpause Al_Huma_Caster[Al_Huma_Loop_Integer]
-
Game - Display to (All players) for 5.00 seconds the text: Clean up
-
Set VariableSet Al_Huma_Caster[Al_Huma_Loop_Integer] = Al_Huma_Caster[Al_Huma_Index]
-
Set VariableSet Al_Huma_Count[Al_Huma_Loop_Integer] = Al_Huma_Count[Al_Huma_Index]
-
Set VariableSet Al_Huma_Target[Al_Huma_Loop_Integer] = Al_Huma_Target[Al_Huma_Index]
-
Set VariableSet Al_Huma_Index = (Al_Huma_Index - 1)
-
Set VariableSet Al_Huma_Loop_Integer = (Al_Huma_Loop_Integer - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Al_Huma_Index Equal to 0
-
-
Then - Actions
-
Game - Display to (All players) for 5.00 seconds the text: Huma Off
-
Custom script: call DestroyGroup(udg_Al_Huma_Dummy_Group)
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
Else - Actions
-
-
-
-
-