rodead
Active Member
- Reaction score
- 42
the units in range which are set with the unit group ar not healed. i already tried to set the unit group at an other trigger but didn't worked either (i know that i need to destroy the unit group leak)
Code:
Holy Spiral 1
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Holy Spiral
Actions
Set Holy_Spiral_Loc[(Player number of (Owner of (Casting unit)))] = (Position of (Casting unit))
Set Holy_Spiral_Boolean[(Player number of (Owner of (Casting unit)))] = True
Code:
Holy Spiral 2
Events
Time - Every 1.00 seconds of game time
Conditions
Actions
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Holy_Spiral_Boolean[(Integer A)] Equal to True
Then - Actions
Set Holy_Spiral_Count[(Integer A)] = (Holy_Spiral_Count[(Integer A)] + 1)
Set Holy_Spiral_Loc_2[(Integer A)] = (Holy_Spiral_Loc[(Integer A)] offset by (40.00 x (Real(Holy_Spiral_Count[(Integer A)]))) towards ((360.00 / 12.00) x (Real(Holy_Spiral_Count[(Integer A)]))) degrees)
Unit - Create 1 Holy Spiral for (Player((Integer A))) at Holy_Spiral_Loc_2[(Integer A)] facing Default building facing degrees
Animation - Change (Last created unit)'s size to ((25.00 x (Real(Holy_Spiral_Count[(Integer A)])))%, (25.00 x (Real(Holy_Spiral_Count[(Integer A)])))%, (25.00 x (Real(Holy_Spiral_Count[(Integer A)])))%) of its original size
Set Holy_Spiral_Unit[((((Integer A) x 12) + Holy_Spiral_Count[(Integer A)]) - 12)] = (Last created unit)
Lightning - Create a Healing Wave - Primary lightning effect from source Holy_Spiral_Loc[(Integer A)] to target Holy_Spiral_Loc_2[(Integer A)]
Set Holy_Spiral_Lightning[((((Integer A) x 12) + Holy_Spiral_Count[(Integer A)]) - 12)] = (Last created lightning effect)
Else - Actions
Code:
Holy Spiral 3
Events
Unit - A unit Stops casting an ability
Unit - A unit Finishes casting an ability
Conditions
(Ability being cast) Equal to Holy Spiral
Actions
Set Holy_Spiral_Group[(Player number of (Owner of (Casting unit)))] = (Units within 480.00 of Holy_Spiral_Loc[(Player number of (Owner of (Casting unit)))])
Set Holy_Spiral_Boolean[(Player number of (Owner of (Casting unit)))] = False
Unit Group - Pick every unit in Holy_Explosion_Group[(Player number of (Owner of (Casting unit)))] and do (Actions)
Loop - Actions
Unit - Set life of (Picked unit) to ((Percentage life of (Picked unit)) + ((Real(Holy_Spiral_Count[(Player number of (Owner of (Casting unit)))])) / 2.00))%
For each (Integer A) from 1 to 12, do (Actions)
Loop - Actions
Lightning - Destroy Holy_Spiral_Lightning[((((Player number of (Owner of (Casting unit))) x 12) + (Integer A)) - 12)]
Unit - Explode Holy_Spiral_Unit[((((Player number of (Owner of (Casting unit))) x 12) + (Integer A)) - 12)]
Set Holy_Spiral_Count[(Player number of (Owner of (Casting unit)))] = 0
Custom script: call RemoveLocation (udg_Holy_Spiral_Loc[GetPlayerId( GetOwningPlayer( GetSpellAbilityUnit() ) ) + 1])
Custom script: call RemoveLocation (udg_Holy_Spiral_Loc_2[GetPlayerId( GetOwningPlayer( GetSpellAbilityUnit() ) ) + 1])