- Joined
- Mar 1, 2013
- Messages
- 555
I'm trying to make an Aoe ability that locks every unit in time except the caster and this is what I have so far...
I've propbably spent about a day on this one in total and nothing I wants to happen will hapen! 
1. The once again the chronosphere Doesn't want to last longer than a second
2. I deactivated the hashtable thing to see if units get paused and they don't.
3.
help PLEASE.
-
Chronosphere spell
-

Events
-


Unit - A unit Starts the effect of an ability
-
-

Conditions
-


(Ability being cast) Equal to Chronosphere
-
-

Actions
-


Set ChCaster = (Casting unit)
-


Set ChPoint = (Target point of ability being cast)
-


Unit - Create 1 Chronosphere for (Owner of ChCaster) at ChPoint facing Default building facing degrees
-


Unit Group - Add (Last created unit) to ChGroup[0]
-


Hashtable - Save 60 as 1 of (Key (Last created unit)) in HashLocked
-


Trigger - Turn on Chronosphere loop <gen>
-


Wait 6.00 seconds
-


If ((Number of units in ChGroup[0]) Equal to 0) then do (Trigger - Turn off Chronosphere loop <gen>) else do (Do nothing)
-
-
-
Chronosphere loop
-

Events
-


Time - Every 0.10 seconds of game time
-
-

Conditions
-

Actions
-


Unit Group - Pick every unit in ChGroup[0] and do (Actions)
-



Loop - Actions
-




Set Remaining = (Load 0 of (Key (Picked unit)) from HashLocked)
-




If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-





If - Conditions
-






Remaining Greater than 0
-
-





Then - Actions
-






Set Remaining = (Remaining - 1)
-






Hashtable - Save Remaining as 1 of (Key (Picked unit)) in HashLocked
-
-





Else - Actions
-






Unit Group - Remove (Picked unit) from ChGroup[0]
-






Unit - Kill (Picked unit)
-






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in HashLocked
-
-
-




Unit Group - Pick every unit in (Units within 400.00 of (Position of (Picked unit)) matching ((Owner of (Matching unit)) Not equal to (Owner of (Picked unit)))) and do (Actions)
-





Loop - Actions
-






Unit Group - Add (Picked unit) to ChGroup[1]
-
-
-
-
-


Unit Group - Pick every unit in ChGroup[1] and do (Actions)
-



Loop - Actions
-




Unit - Pause (Picked unit)
-




Animation - Change (Picked unit)'s animation speed to 0.00% of its original speed
-




If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-





If - Conditions
-






(Distance between (Position of (Picked unit)) and (Position of (Triggering unit))) Greater than 400.00
-
-





Then - Actions
-






Unit - Unpause (Picked unit)
-






Animation - Change (Picked unit)'s animation speed to 100.00% of its original speed
-
-





Else - Actions
-
-
-
-
-

1. The once again the chronosphere Doesn't want to last longer than a second
2. I deactivated the hashtable thing to see if units get paused and they don't.
3.
-
(Distance between (Position of (Picked unit)) and (Position of (Triggering unit))) Greater than 400.00
help PLEASE.
Last edited:






Only one problem. when there is more than one chronosphere, the victems gets paused and unpaused repeatly. I know the problem but don't know how to fix it. the trigger sees that the unit is in 400 range with point[1] then it pauses but for the next intiger the unit is further than 400 from point[2] so then it unpauses. 