i've been trying to make each wave damage each unit nearby once, and yet, it seems that it damages it until its dead, so i deleted the damage trigger cuz i was wondering if you guys could help put it. thanks
here's the test map
Trigger:
- Cast
- Events
- Unit - A unit Starts the effect of an ability
- Conditions
- (Ability being cast) Equal to Flame Spiral
- Actions
- Set CurrentIndex[3] = (CurrentIndex[3] + 1)
- Set Caster[CurrentIndex[3]] = (Triggering unit)
- Set CasterLoc[CurrentIndex[3]] = (Position of (Triggering unit))
- Set Radius[CurrentIndex[3]] = 25
- For each (Integer A) from 1 to 36, do (Actions)
- Loop - Actions
- Set CurrentIndex[1] = (CurrentIndex[1] + 1)
- Set CurrentIndex[2] = (CurrentIndex[2] + 1)
- Set Caster[CurrentIndex[1]] = (Triggering unit)
- Set CasterLoc[CurrentIndex[1]] = (Position of (Triggering unit))
- Unit - Create 1 Flame Pulse for (Owner of (Triggering unit)) at ((Position of (Triggering unit)) offset by 25.00 towards (10.00 x (Real((Integer A)))) degrees) facing (10.00 x (Real((Integer A)))) degrees
- Set Dummy[CurrentIndex[1]] = (Last created unit)
- Set Offset[CurrentIndex[1]] = 25
- Unit - Set the custom value of Dummy[CurrentIndex[1]] to 1
- Unit Group - Remove all units from Attacked
- Loop - Actions
- Events
Trigger:
- Start
- Events
- Time - Every 0.03 seconds of game time
- Conditions
- Actions
- For each (Integer A) from 1 to CurrentIndex[1], do (Actions)
- Loop - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Less than 6
- Then - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Equal to 1
- Then - Actions
- Set CasterLoc[(Integer A)] = (Position of Caster[(Integer A)])
- Set Offset[(Integer A)] = (Offset[(Integer A)] + 20)
- Unit - Move Dummy[(Integer A)] instantly to (CasterLoc[(Integer A)] offset by (Real(Offset[(Integer A)])) towards (Facing of Dummy[(Integer A)]) degrees)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Offset[(Integer A)] Greater than 300
- Then - Actions
- Unit - Set the custom value of Dummy[(Integer A)] to 2
- Else - Actions
- If - Conditions
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Equal to 2
- Then - Actions
- Set CasterLoc[(Integer A)] = (Position of Caster[(Integer A)])
- Set Offset[(Integer A)] = (Offset[(Integer A)] - 20)
- Unit - Move Dummy[(Integer A)] instantly to (CasterLoc[(Integer A)] offset by (Real(Offset[(Integer A)])) towards ((Facing of Dummy[(Integer A)]) + 180.00) degrees)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Offset[(Integer A)] Less than or equal to 25
- Then - Actions
- Unit - Set the custom value of Dummy[(Integer A)] to 3
- Else - Actions
- If - Conditions
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Equal to 3
- Then - Actions
- Set CasterLoc[(Integer A)] = (Position of Caster[(Integer A)])
- Set Offset[(Integer A)] = (Offset[(Integer A)] + 20)
- Unit - Move Dummy[(Integer A)] instantly to (CasterLoc[(Integer A)] offset by (Real(Offset[(Integer A)])) towards ((Facing of Dummy[(Integer A)]) + 180.00) degrees)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Offset[(Integer A)] Greater than 600
- Then - Actions
- Unit - Set the custom value of Dummy[(Integer A)] to 4
- Else - Actions
- If - Conditions
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Equal to 4
- Then - Actions
- Set CasterLoc[(Integer A)] = (Position of Caster[(Integer A)])
- Set Offset[(Integer A)] = (Offset[(Integer A)] - 20)
- Unit - Move Dummy[(Integer A)] instantly to (CasterLoc[(Integer A)] offset by (Real(Offset[(Integer A)])) towards ((Facing of Dummy[(Integer A)]) + 180.00) degrees)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Offset[(Integer A)] Less than or equal to 25
- Then - Actions
- Unit - Set the custom value of Dummy[(Integer A)] to 5
- Else - Actions
- If - Conditions
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Equal to 5
- Then - Actions
- Set CasterLoc[(Integer A)] = (Position of Caster[(Integer A)])
- Set Offset[(Integer A)] = (Offset[(Integer A)] + 20)
- Unit - Move Dummy[(Integer A)] instantly to (CasterLoc[(Integer A)] offset by (Real(Offset[(Integer A)])) towards ((Facing of Dummy[(Integer A)]) + 180.00) degrees)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Offset[(Integer A)] Greater than 900
- Then - Actions
- Unit - Set the custom value of Dummy[(Integer A)] to 6
- Else - Actions
- If - Conditions
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Equal to 6
- Then - Actions
- Set CasterLoc[(Integer A)] = (Position of Caster[(Integer A)])
- Set Offset[(Integer A)] = (Offset[(Integer A)] - 20)
- Unit - Move Dummy[(Integer A)] instantly to (CasterLoc[(Integer A)] offset by (Real(Offset[(Integer A)])) towards ((Facing of Dummy[(Integer A)]) + 180.00) degrees)
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Offset[(Integer A)] Less than or equal to 25
- Then - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- (Custom value of Dummy[(Integer A)]) Greater than 0
- Then - Actions
- Unit - Set the custom value of Dummy[(Integer A)] to 0
- Unit - Add a 0.01 second Generic expiration timer to Dummy[(Integer A)]
- Set CurrentIndex[2] = (CurrentIndex[2] - 1)
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
- If - Conditions
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- CurrentIndex[2] Equal to 0
- Then - Actions
- Set CurrentIndex[1] = 0
- Set CurrentIndex[2] = 0
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Loop - Actions
- For each (Integer A) from 1 to CurrentIndex[1], do (Actions)
- Events
here's the test map