Moderator
M
Fire Blast

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Fire Blast

Actions


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



If - Conditions




(FB_group is empty) Equal to True



Then - Actions




Trigger - Turn on Fire blast loop <gen>



Else - [SUB][/SUB]Actions


Set FB_point = (Position of (Triggering unit))


Set FB_degree = 90.00


Unit - Create 1 Fireblast for (Owner of (Triggering unit)) at FB_point facing (Facing of (Triggering unit)) degrees


Animation - Change (Last created unit) flying height to 250.00 at 0.00


Unit Group - Add (Last created unit) to FB_group


-------- head --------


Unit - Create 1 Fireblast2 for (Owner of (Triggering unit)) at FB_point facing (Facing of (Triggering unit)) degrees


Animation - Change (Last created unit) flying height to 175.00 at 0.00


Unit Group - Add (Last created unit) to FB_group


-------- body --------


Set FB_point_Copy = (FB_point offset by 50.00 towards ((Facing of (Triggering unit)) + FB_degree) degrees)


Unit - Create 1 Fireblast for (Owner of (Triggering unit)) at FB_point_Copy facing (Facing of (Triggering unit)) degrees


Animation - Change (Last created unit) flying height to 50.00 at 0.00


Unit Group - Add (Last created unit) to FB_group


-------- leg --------


Set FB_point_Copy = (FB_point offset by 75.00 towards ((Facing of (Triggering unit)) + FB_degree) degrees)


Unit - Create 1 Fireblast for (Owner of (Triggering unit)) at FB_point_Copy facing (Facing of (Triggering unit)) degrees


Animation - Change (Last created unit) flying height to 185.00 at 0.00


Unit Group - Add (Last created unit) to FB_group


-------- arm --------


Set FB_point_Copy = (FB_point offset by 50.00 towards ((Facing of (Triggering unit)) - FB_degree) degrees)


Unit - Create 1 Fireblast for (Owner of (Triggering unit)) at FB_point_Copy facing (Facing of (Triggering unit)) degrees


Animation - Change (Last created unit) flying height to 50.00 at 0.00


Unit Group - Add (Last created unit) to FB_group


-------- leg --------


Set FB_point_Copy = (FB_point offset by 75.00 towards ((Facing of (Triggering unit)) - FB_degree) degrees)


Unit - Create 1 Fireblast for (Owner of (Triggering unit)) at FB_point_Copy facing (Facing of (Triggering unit)) degrees


Animation - Change (Last created unit) flying height to 185.00 at 0.00


Unit Group - Add (Last created unit) to FB_group


-------- arm --------
Fire blast loop

Events


Time - Every 0.05 seconds of game time

Conditions

Actions


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



If - Conditions




(FB_group is empty) Equal to True



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions


Unit Group - Pick every unit in FB_group and do (Actions)



Loop - Actions




Set FB_distance = (Load 0 of (Key (Picked unit)) from FB_hash)




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





If - Conditions






FB_distance Less than 1000.00





Then - Actions






Set FB_distance = (FB_distance + 30.00)






Set FB_point = (Position of (Picked unit))






Set FB_point_Copy = (FB_point offset by 30.00 towards (Facing of (Picked unit)) degrees)






Unit - Move (Picked unit) instantly to FB_point_Copy






Hashtable - Save FB_distance as 0 of (Key (Picked unit)) in FB_hash






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







If - Conditions








(Unit-type of (Picked unit)) Equal to Fireblast2







Then - Actions








Set FB_group_Copy = (Units within 50.00 of FB_point matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True))








Set FB_dummy = (Picked unit)








Unit Group - Pick every unit in FB_group_Copy and do (Actions)









Loop - Actions










Unit - Cause FB_dummy to damage (Picked unit), dealing 50.00 damage of attack type Spells and damage type Fire








Custom script: call DestroyGroup(udg_FB_group_Copy)







Else - Actions






Custom script: call RemoveLocation(udg_FB_point)






Custom script: call RemoveLocation(udg_FB_point_Copy)





Else - Actions






Unit - Kill (Picked unit)






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






Unit Group - Remove (Picked unit) from FB_group
RoF

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Ring of Fire

Actions


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



If - Conditions




(RoF_Group is empty) Equal to True




(RoF_Group_Copy is empty) Equal to True



Then - Actions




Trigger - Turn on Untitled Trigger 008 <gen>



Else - Actions


For each (Integer RoF_integer) from 1 to 18, do (Actions)



Loop - Actions




Set RoF_point = (Target point of ability being cast)




Set RoF_Degree = ((360.00 / 18.00) x (Real(RoF_integer)))




Set RoF_point_Copy = (RoF_point offset by 0.00 towards RoF_Degree degrees)




Unit - Create 1 Ring of Fire for (Owner of (Triggering unit)) at RoF_point_Copy facing Default building facing degrees




Hashtable - Save RoF_Degree as 0 of (Key (Last created unit)) in RoF_hash




Hashtable - Save Handle OfRoF_point as 1 of (Key (Last created unit)) in RoF_hash




Custom script: call RemoveLocation(udg_RoF_point_Copy)




Unit Group - Add (Last created unit) to RoF_Group
Untitled Trigger 008

Events


Time - Every 0.20 seconds of game time

Conditions

Actions


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



If - Conditions




(RoF_Group is empty) Equal to True




(RoF_Group_Copy is empty) Equal to True



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions


Unit Group - Pick every unit in RoF_Group and do (Actions)



Loop - Actions




Set RoF_Degree = (Load 0 of (Key (Picked unit)) from RoF_hash)




Set RoF_point = (Load 1 of (Key (Picked unit)) in RoF_hash)




Set ROF_distance = (Load 2 of (Key (Picked unit)) from RoF_hash)




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





If - Conditions






(Current flying height of (Picked unit)) Greater than or equal to 80.00





Then - Actions






Set ROF_distance = (ROF_distance + 11.00)






Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) - 30.00) at 0.00






Set RoF_Degree = (RoF_Degree + 40.00)






Set RoF_point_Copy = (RoF_point offset by ROF_distance towards RoF_Degree degrees)






Hashtable - Save RoF_Degree as 0 of (Key (Picked unit)) in RoF_hash






Hashtable - Save ROF_distance as 2 of (Key (Picked unit)) in RoF_hash






Unit - Move (Picked unit) instantly to RoF_point_Copy






Custom script: call RemoveLocation(udg_RoF_point_Copy)





Else - Actions






Unit Group - Add (Picked unit) to RoF_Group_Copy






Unit Group - Remove (Picked unit) from RoF_Group


Unit Group - Pick every unit in RoF_Group_Copy and do (Actions)



Loop - Actions




Set RoF_point = (Load 1 of (Key (Picked unit)) in RoF_hash)




Set RoF_point_Copy = (Position of (Picked unit))




Set RoF_Degree = (Load 0 of (Key (Picked unit)) from RoF_hash)




Set ROF_distance = (Load 2 of (Key (Picked unit)) from RoF_hash)




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





If - Conditions






(Distance between RoF_point_Copy and RoF_point) Greater than or equal to 60.00





Then - Actions






Set ROF_distance = (ROF_distance - 20.00)






Set RoF_Degree = (RoF_Degree + 30.00)






Set RoF_point_Copy_2 = (RoF_point offset by ROF_distance towards (RoF_Degree + 0.00) degrees)






Set KN_unit = (Picked unit)






Set RoF_Group_Copy_2 = (Units within 20.00 of RoF_point_Copy matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True))






Unit Group - Pick every unit in RoF_Group_Copy_2 and do (Actions)







Loop - Actions








Unit - Cause KN_unit to damage (Picked unit), dealing 150.00 damage of attack type Spells and damage type Fire






Custom script: call DestroyGroup(udg_RoF_Group_Copy_2)






Unit - Move (Picked unit) instantly to RoF_point_Copy_2






Hashtable - Save RoF_Degree as 0 of (Key (Picked unit)) in RoF_hash






Hashtable - Save ROF_distance as 2 of (Key (Picked unit)) in RoF_hash






Custom script: call RemoveLocation(udg_RoF_point_Copy)






Custom script: call RemoveLocation(udg_RoF_point_Copy_2)





Else - Actions






Unit Group - Remove (Picked unit) from RoF_Group_Copy






Special Effect - Create a special effect at RoF_point using Abilities\Spells\Other\Doom\DoomDeath.mdl






Special Effect - Destroy (Last created special effect)






Custom script: call RemoveLocation(udg_RoF_point_Copy)






Custom script: call RemoveLocation(udg_RoF_point)






Unit - Kill (Picked unit)
Magma Strike

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Magma Strike

Actions


Set MS1_point = (Target point of ability being cast)


Set MS1_point_Copy = (MS1_point offset by -600.00 towards (Facing of (Triggering unit)) degrees)


Unit - Create 1 Volcanic Strike for (Owner of (Triggering unit)) at MS1_point_Copy facing (Facing of (Triggering unit)) degrees


Unit - Add a 3.50 second Generic expiration timer to (Last created unit)


Unit - Create 1 Volcanic Thrower for (Owner of (Triggering unit)) at MS1_point_Copy facing (Facing of (Triggering unit)) degrees


Unit - Add a 3.00 second Generic expiration timer to (Last created unit)


Unit - Order (Last created unit) to Neutral Tinker - Cluster Rockets MS1_point


Custom script: call RemoveLocation(udg_MS1_point)


Custom script: call RemoveLocation(udg_MS1_point_Copy)
FS hash

Events


Map initialization

Conditions

Actions


Hashtable - Create a hashtable


Set fis_table = (Last created hashtable)


Set Fis_unit[1] = Orb of fire 1


Set Fis_unit[2] = Orb of fire 2


Set Fis_unit[3] = Orb of fire 3
Fire Shield

Events


Unit - A unit Learns a skill

Conditions


(Learned Hero Skill) Equal to Fire Shield

Actions


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



If - Conditions




(fis_group is empty) Equal to True



Then - Actions




Trigger - Turn on Untitled Trigger 006 <gen>



Else - Actions


Set fis_point = (Position of (Triggering unit))


Set Fis_dUMMY = (Load 1 of (Key (Triggering unit)) in fis_table)


Unit - Kill Fis_dUMMY


Set Fis_dUMMY = (Load 2 of (Key (Triggering unit)) in fis_table)


Unit - Kill Fis_dUMMY


For each (Integer Fis_integer2u) from 1 to 2, do (Actions)



Loop - Actions




Set fis_point_Copy = (fis_point offset by 50.00 towards (180.00 x (Real(Fis_integer2u))) degrees)




Unit - Create 1 Fis_unit[(Level of Fire Shield for (Triggering unit))] for (Owner of (Triggering unit)) at fis_point_Copy facing Default building facing degrees




Set Fis_dUMMY = (Triggering unit)




Set FS_unit2 = (Last created unit)




Set Fis_Integer = (Fis_integer2u x 180)




Hashtable - Save Fis_Integer as 0 of (Key (Last created unit)) in fis_table




Hashtable - Save Handle OfFis_dUMMY as 1 of (Key (Last created unit)) in fis_table




Unit Group - Add (Last created unit) to fis_group




Hashtable - Save Handle OfFS_unit2 as Fis_integer2u of (Key (Triggering unit)) in fis_table




Custom script: call RemoveLocation(udg_fis_point_Copy)


Custom script: call RemoveLocation(udg_fis_point)
Untitled Trigger 006

Events


Time - Every 0.05 seconds of game time

Conditions

Actions


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



If - Conditions




(fis_group is empty) Equal to True



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions


Unit Group - Pick every unit in fis_group and do (Actions)



Loop - Actions




Set Fis_Integer = (Load 0 of (Key (Picked unit)) from fis_table)




Set Fis_dUMMY = (Load 1 of (Key (Picked unit)) in fis_table)




Set FS_unit2 = (Picked unit)




Set fis_point = (Position of Fis_dUMMY)




Set Fis_Integer = (Fis_Integer + 10)




Set fis_point_Copy = (fis_point offset by 100.00 towards (Real(Fis_Integer)) degrees)




Custom script: call SetUnitY((udg_FS_unit2), GetLocationY(udg_fis_point_Copy))




Custom script: call SetUnitX((udg_FS_unit2), GetLocationX(udg_fis_point_Copy))




Hashtable - Save Fis_Integer as 0 of (Key (Picked unit)) in fis_table




Custom script: call RemoveLocation(udg_fis_point)




Custom script: call RemoveLocation(udg_fis_point_Copy)
Untitled Trigger 007

Events


Unit - A unit Is attacked

Conditions

Actions


Set FS_unit2 = (Load 1 of (Key (Attacking unit)) in fis_table)


Set Fis_dUMMY = (Load 2 of (Key (Attacking unit)) in fis_table)


Unit - Order FS_unit2 to Stop


Unit - Order Fis_dUMMY to Stop


Unit - Order FS_unit2 to Attack (Attacked unit)


Unit - Order Fis_dUMMY to Attack (Attacked unit)
REVIVE

Events

Conditions

Actions


-------- TRIGGERING UNIT NEEDS TO BE REPLACED WITH THE UNIT CALLED UPON IN YOUR REVIVE TRIGGER ELSE IT WILL NOT BE USEABLE --------


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



If - Conditions




(Level of Fire Shield for (Triggering unit)) Greater than or equal to 1



Then - Actions




Set fis_point = (Position of (Triggering unit))




For each (Integer Fis_integer2u) from 1 to 2, do (Actions)





Loop - Actions






Set fis_point_Copy = (fis_point offset by 50.00 towards (180.00 x (Real(Fis_integer2u))) degrees)






Unit - Create 1 Fis_unit[(Level of Fire Shield for (Triggering unit))] for (Owner of (Triggering unit)) at fis_point_Copy facing Default building facing degrees






Set Fis_dUMMY = (Triggering unit)






Set FS_unit2 = (Last created unit)






Set Fis_Integer = (Fis_integer2u x 180)






Hashtable - Save Fis_Integer as 0 of (Key (Last created unit)) in fis_table






Hashtable - Save Handle OfFis_dUMMY as 1 of (Key (Last created unit)) in fis_table






Unit Group - Add (Last created unit) to fis_group






Hashtable - Save Handle OfFS_unit2 as Fis_integer2u of (Key (Triggering unit)) in fis_table






Custom script: call RemoveLocation(udg_fis_point_Copy)



Else - Actions
Living Bomb

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Living Bomb (Archimonde)

Actions


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



If - Conditions




(LB_Group is empty) Equal to True



Then - Actions




Trigger - Turn on Living Bomb Timer <gen>



Else - Actions


Set LB_time = 500


Set LB_damager = (Triggering unit)


Special Effect - Create a special effect attached to the chest of (Target unit of ability being cast) using Abilities\Spells\Other\Incinerate\IncinerateBuff.mdl


Set LB_sfx = (Last created special effect)


Hashtable - Save LB_time as 0 of (Key (Target unit of ability being cast)) in LB_hash


Hashtable - Save Handle OfLB_damager as 1 of (Key (Target unit of ability being cast)) in LB_hash


Hashtable - Save Handle OfLB_sfx as 2 of (Key (Target unit of ability being cast)) in LB_hash


Unit Group - Add (Target unit of ability being cast) to LB_Group
Living Bomb Timer

Events


Time - Every 0.01 seconds of game time

Conditions

Actions


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



If - Conditions




(LB_Group is empty) Equal to True



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions


Unit Group - Pick every unit in LB_Group and do (Actions)



Loop - Actions




Set LB_time = (Load 0 of (Key (Picked unit)) from LB_hash)




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





If - Conditions






LB_time Less than or equal to 0





Then - Actions






Set LB_damager = (Load 1 of (Key (Picked unit)) in LB_hash)






Set LB_sfx = (Load 2 of (Key (Picked unit)) in LB_hash)






Set LB_point = (Position of (Picked unit))






Unit - Create 1 Death Blast for (Owner of LB_damager) at LB_point facing Default building facing degrees






Set lb_targets = (Units within 300.00 of LB_point matching (((Matching unit) belongs to an enemy of (Owner of LB_damager)) Equal to True))






Set LB_sfx = (Load 2 of (Key (Picked unit)) in LB_hash)






Special Effect - Destroy LB_sfx






Unit Group - Pick every unit in lb_targets and do (Actions)







Loop - Actions








Unit - Cause LB_damager to damage (Picked unit), dealing (100.00 x (Real((Level of Living Bomb (Archimonde) for LB_damager)))) damage of attack type Spells and damage type Normal






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






Unit Group - Remove (Picked unit) from LB_Group






Custom script: call DestroyGroup(udg_lb_targets)






Custom script: call RemoveLocation(udg_LB_point)





Else - Actions






Set LB_time = (LB_time - 1)






Hashtable - Save LB_time as 0 of (Key (Picked unit)) in LB_hash
Untitled Trigger 019

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Impale

Actions


Set I_point[0] = (Position of (Triggering unit))


For each (Integer IP_integer) from 1 to 36, do (Actions)



Loop - Actions




Set I_point[1] = (I_point[0] offset by 300.00 towards ((Real(IP_integer)) x (360.00 / 36.00)) degrees)




Unit - Create 1 Impaler for (Owner of (Triggering unit)) at I_point[0] facing Default building facing degrees




Unit - Order (Last created unit) to Undead Crypt Lord - Impale I_point[1]




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation(udg_I_point[1])


Custom script: call RemoveLocation(udg_I_point[0])
timewarp

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Charge!

Actions


Set targetTW = (Target unit of ability being cast)


Unit - Turn collision for (Triggering unit) Off


Unit - Pause (Target unit of ability being cast)


Unit - Pause (Triggering unit)


Hashtable - Save Handle OftargetTW as 0 of (Key (Triggering unit)) in TWhash


Unit Group - Add (Triggering unit) to TWGROUP
TimewarpLOOP

Events


Time - Every 0.04 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in TWGROUP and do (Actions)



Loop - Actions




Set targetTW = (Load 0 of (Key (Picked unit)) in TWhash)




Set Timewarploc[0] = (Position of (Picked unit))




Set Timewarploc[1] = (Position of targetTW)




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





If - Conditions






(Integer((Distance between Timewarploc[0] and Timewarploc[1]))) Greater than or equal to 25





Then - Actions






Set Timewarploc[2] = (Timewarploc[0] offset by 25.00 towards (Angle from Timewarploc[0] to Timewarploc[1]) degrees)






Special Effect - Create a special effect at Timewarploc[0] using Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl






Special Effect - Destroy (Last created special effect)






Unit - Move (Picked unit) instantly to Timewarploc[2], facing Timewarploc[1]






Custom script: call RemoveLocation(udg_Timewarploc[2])






Custom script: call RemoveLocation(udg_Timewarploc[0])






Custom script: call RemoveLocation(udg_Timewarploc[1])





Else - Actions






Unit Group - Remove (Picked unit) from TWGROUP






Unit - Unpause (Picked unit)






Unit - Unpause targetTW






Unit - Turn collision for (Picked unit) On






Custom script: call RemoveLocation(udg_Timewarploc[0])






Custom script: call RemoveLocation(udg_Timewarploc[1])






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in TWhash
Touch of the Death

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to A Touch of Death (Neutral Hostile)

Actions


Special Effect - Create a special effect attached to the overhead of (Target unit of ability being cast) using Objects\Spawnmodels\Undead\UndeadDissipate\UndeadDissipate.mdl


Special Effect - Destroy (Last created special effect)


Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (75.00 x (Real((Level of A Touch of Death (Neutral Hostile) for (Triggering unit))))) damage of attack type Spells and damage type Unknown


Unit - Set life of (Triggering unit) to ((Life of (Triggering unit)) + (25.00 x (Real((Level of (Ability being cast) for (Triggering unit))))))
trigger Copy

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Dark Blast

Actions


Set point1 = (Target point of ability being cast)


For each (Integer Darkblast) from 1 to 36, do (Actions)



Loop - Actions




Set point4 = (point1 offset by 300.00 towards ((Real(Darkblast)) x (360.00 / 36.00)) degrees)




Unit - Create 1 Lightning Twister Dummy1 for (Owner of (Triggering unit)) at point4 facing point1




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)




Animation - Change (Last created unit)'s vertex coloring to (0.00%, 0.00%, 0.00%) with 100.00% transparency




Custom script: call RemoveLocation(udg_point4)




Set point4 = (point1 offset by 200.00 towards ((Real(Darkblast)) x (360.00 / 36.00)) degrees)




Unit - Create 1 Lightning Twister Dummy1 for (Owner of (Triggering unit)) at point4 facing point1




Animation - Change (Last created unit)'s vertex coloring to (0.00%, 0.00%, 0.00%) with 100.00% transparency




Custom script: call RemoveLocation(udg_point4)




Set point4 = (point1 offset by 100.00 towards ((Real(Darkblast)) x (360.00 / 36.00)) degrees)




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)




Unit - Create 1 Lightning Twister Dummy1 for (Owner of (Triggering unit)) at point4 facing point1




Animation - Change (Last created unit)'s vertex coloring to (0.00%, 0.00%, 0.00%) with 100.00% transparency




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation(udg_point4)


Set DamageGroup = (Units within 300.00 of point1 matching ((((Matching unit) is A flying unit) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True))))


Unit Group - Pick every unit in DamageGroup and do (Actions)



Loop - Actions




Unit - Cause (Triggering unit) to damage (Picked unit), dealing (75.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) damage of attack type Spells and damage type Normal




Unit Group - Remove (Picked unit) from DamageGroup


Custom script: call RemoveLocation(udg_point1)


Custom script: call DestroyGroup(udg_DamageGroup)
Demonic Strike

Events


Unit - A unit Is attacked

Conditions


(Unit-type of (Attacking unit)) Equal to Demonic Swarm Unit

Actions


Unit - Kill (Attacking unit)
Dark Portal

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Dark Portal

Actions


Set DP_points[0] = (Position of (Triggering unit))


Set DP_points[1] = (Target point of ability being cast)


Set DP_points[2] = (DP_points[0] offset by 150.00 towards (Angle from DP_points[0] to DP_points[1]) degrees)


Unit - Create 1 Portal Dummy for (Owner of (Triggering unit)) at DP_points[2] facing DP_points[1]


Unit - Add a 20.00 second Generic expiration timer to (Last created unit)


-------- the 20 seconds is how long time it takes for the portal to disappear --------


Neutral Building - Set (Last created unit) destination to DP_points[1]


Neutral Building - Enable (Last created unit)


Unit - Create 1 Portal Dummy for (Owner of (Triggering unit)) at DP_points[1] facing DP_points[2]


Unit - Add a 20.00 second Generic expiration timer to (Last created unit)


-------- the 20 seconds is how long time it takes for the portal to disappear --------


Neutral Building - Set (Last created unit) destination to DP_points[2]


Neutral Building - Enable (Last created unit)


Custom script: call RemoveLocation(udg_DP_points[0])


Custom script: call RemoveLocation(udg_DP_points[1])


Custom script: call RemoveLocation(udg_DP_points[2])
Frozen Wall

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Frozen Wall

Actions


Set ilikeanime[0] = (Target point of ability being cast)


Unit - Create 1 Icewall for (Owner of (Triggering unit)) at ilikeanime[0] facing (Facing of (Triggering unit)) degrees


Unit - Add a (5.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) second Generic expiration timer to (Last created unit)


For each (Integer left_right[0]) from 1 to 2, do (Actions)



Loop - Actions




Set ilikeanime[1] = (ilikeanime[0] offset by ((Real(left_right[0])) x 150.00) towards ((Facing of (Triggering unit)) + 90.00) degrees)




Unit - Create 1 Icewall for (Owner of (Triggering unit)) at ilikeanime[1] facing (Facing of (Triggering unit)) degrees




Unit - Add a (5.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation(udg_ilikeanime[1])


For each (Integer left_right[1]) from 1 to 2, do (Actions)



Loop - Actions




Set ilikeanime[1] = (ilikeanime[0] offset by ((Real(left_right[1])) x 150.00) towards ((Facing of (Triggering unit)) + 270.00) degrees)




Unit - Create 1 Icewall for (Owner of (Triggering unit)) at ilikeanime[1] facing (Facing of (Triggering unit)) degrees




Unit - Add a (5.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation(udg_ilikeanime[1])


Custom script: call RemoveLocation(udg_ilikeanime[0])
Iceexplosion

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Ice Nova

Actions


Set lol = (Position of (Triggering unit))


For each (Integer iceexplosion[0]) from 1 to 36, do (Actions)



Loop - Actions




Set lol_Copy = (lol offset by 25.00 towards ((Real(iceexplosion[0])) x (360.00 / 36.00)) degrees)




Unit - Create 1 Ice Exlposion for (Owner of (Triggering unit)) at lol_Copy facing (Position of (Triggering unit))




Unit - Add a 1.40 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation (udg_lol_Copy)




Set lol_Copy = (lol offset by 125.00 towards ((Real(iceexplosion[0])) x (360.00 / 36.00)) degrees)




Unit - Create 1 Ice Exlposion for (Owner of (Triggering unit)) at lol_Copy facing (Position of (Triggering unit))




Unit - Add a 1.40 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation (udg_lol_Copy)




Set lol_Copy = (lol offset by 250.00 towards ((Real(iceexplosion[0])) x (360.00 / 36.00)) degrees)




Unit - Create 1 Ice Exlposion for (Owner of (Triggering unit)) at lol_Copy facing (Position of (Triggering unit))




Unit - Add a 1.40 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation (udg_lol_Copy)




Set lol_Copy = (lol offset by 375.00 towards ((Real(iceexplosion[0])) x (360.00 / 36.00)) degrees)




Unit - Create 1 Ice Exlposion for (Owner of (Triggering unit)) at lol_Copy facing (Position of (Triggering unit))




Unit - Add a 1.40 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation (udg_lol_Copy)


Custom script: call RemoveLocation (udg_lol)
Iceexplosion Copy

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Giant Iceball

Actions


Set Posistion = (Position of (Triggering unit))


Set Posistion_Copy = (Target point of ability being cast)


Unit - Create 1 Ice Arrow for (Owner of (Triggering unit)) at Posistion facing (Angle from Posistion to Posistion_Copy) degrees


Unit - Turn collision for (Last created unit) Off


Unit - Add Giant Iceball to (Last created unit)


Unit - Set level of Giant Iceball for (Last created unit) to (Level of (Ability being cast) for (Triggering unit))


Unit Group - Add (Last created unit) to missle


Hashtable - Save Handle OfPosistion_Copy as 1 of (Key (Last created unit)) in hash


Custom script: call RemoveLocation(udg_Posistion)
Iceexplosion Copy Copy

Events


Time - Every 0.04 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in missle and do (Actions)



Loop - Actions




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





If - Conditions






(missle is empty) Equal to False





Then - Actions






Set caster1 = (Picked unit)






Set Posistion = (Position of caster1)






Special Effect - Create a special effect at Posistion using Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl






Special Effect - Destroy (Last created special effect)






Set Posistion_Copy = (Load 1 of (Key (Picked unit)) in hash)






Set Posistion_Copy_Copy = (Posistion offset by 32.00 towards (Angle from Posistion to Posistion_Copy) degrees)






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







If - Conditions








(Distance between Posistion and Posistion_Copy) Greater than 33.00







Then - Actions








Unit - Move caster1 instantly to Posistion_Copy_Copy








Set targets = (Units within 150.00 of Posistion matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True))








Unit Group - Pick every unit in targets and do (Actions)









Loop - Actions










Unit - Cause caster1 to damage (Picked unit), dealing (5.00 x (Real((Level of Giant Iceball for caster1)))) damage of attack type Spells and damage type Cold










Unit - Move (Picked unit) instantly to Posistion_Copy_Copy










Unit - Turn collision for (Picked unit) Off








Custom script: call RemoveLocation(udg_Posistion)








Custom script: call RemoveLocation(udg_Posistion_Copy_Copy)







Else - Actions








Unit Group - Remove (Picked unit) from missle








Unit Group - Pick every unit in targets and do (Actions)









Loop - Actions










Unit - Turn collision for (Picked unit) On










Unit Group - Remove (Picked unit) from targets








Unit - Kill caster1








Custom script: call RemoveLocation(udg_Posistion_Copy)








Custom script: call RemoveLocation(udg_Posistion_Copy_Copy)








Custom script: call RemoveLocation(udg_Posistion)





Else - Actions
Ice Shield

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Ice Circle

Actions


Set cock[0] = (Target point of ability being cast)


For each (Integer iceexplosion[1]) from 1 to 12, do (Actions)



Loop - Actions




Set cock[1] = (cock[0] offset by 300.00 towards ((Real(iceexplosion[1])) x (360.00 / 12.00)) degrees)




Unit - Create 1 Icewall for (Owner of (Triggering unit)) at cock[1] facing Default building facing degrees




Unit - Add a (3.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation(udg_cock[1])


Custom script: call RemoveLocation(udg_cock[0])
Life Combust Copy

Events


Unit - A unit Begins casting an ability

Conditions


(Ability being cast) Equal to Life Combust

Actions


Set lifelost_managained[0] = (4.00 - (Real((Level of (Ability being cast) for (Triggering unit)))))


Set lifelost_managained[1] = (Real((Level of (Ability being cast) for (Triggering unit))))


Hashtable - Save lifelost_managained[0] as 0 of (Key (Triggering unit)) in LifeCombust


Hashtable - Save lifelost_managained[1] as 1 of (Key (Triggering unit)) in LifeCombust


Unit Group - Add (Triggering unit) to combusters
Life Combust Copy Copy

Events


Time - Every 0.10 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in combusters and do (Actions)



Loop - Actions




Set lifelost_managained[0] = (Load 0 of (Key (Picked unit)) from LifeCombust)




Set lifelost_managained[1] = (Load 1 of (Key (Picked unit)) from LifeCombust)




Unit - Set life of (Picked unit) to ((Life of (Picked unit)) - lifelost_managained[0])




Unit - Set mana of (Picked unit) to ((Mana of (Picked unit)) + lifelost_managained[1])
end

Events


Unit - A unit Stops casting an ability


Unit - A unit Is issued an order with no target


Unit - A unit Is issued an order targeting a point


Unit - A unit Is issued an order targeting an object


Unit - A unit Finishes casting an ability

Conditions


((Triggering unit) is in combusters) Equal to True

Actions


Unit Group - Remove (Triggering unit) from combusters


Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in LifeCombust
Mana Combust Copy

Events


Unit - A unit Begins channeling an ability

Conditions


(Ability being cast) Equal to Mana Combust

Actions


Set CombustManacost = (Level of (Ability being cast) for (Triggering unit))


Unit Group - Add (Triggering unit) to ManaCombusters


Hashtable - Save CombustManacost as 0 of (Key (Triggering unit)) in ManaCobust
Shop da group

Events


Time - Every 0.10 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in ManaCombusters and do (Actions)



Loop - Actions




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





If - Conditions






(Mana of (Picked unit)) Equal to 0.00





Then - Actions






Unit - Order (Picked unit) to Stop





Else - Actions






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







If - Conditions








(Mana of (Picked unit)) Greater than 0.00







Then - Actions








Set CombustManacost = (Load 0 of (Key (Picked unit)) from ManaCobust)








Set Manaoffered = (Load 2 of (Key (Picked unit)) from ManaCobust)








Set Manaoffered = (Manaoffered + CombustManacost)








Set Combustsize = (Load 1 of (Key (Picked unit)) from ManaCobust)








Set Combustsize = (Combustsize + (Real(CombustManacost)))








Unit - Set mana of (Picked unit) to ((Mana of (Picked unit)) - (Real(CombustManacost)))








Hashtable - Save Combustsize as 1 of (Key (Picked unit)) in ManaCobust








Hashtable - Save Manaoffered as 2 of (Key (Picked unit)) in ManaCobust







Else - Actions
end Copy

Events


Unit - A unit Stops casting an ability


Unit - A unit Is issued an order with no target


Unit - A unit Is issued an order targeting a point


Unit - A unit Is issued an order targeting an object


Unit - A unit Finishes casting an ability

Conditions


((Triggering unit) is in ManaCombusters) Equal to True

Actions


Unit Group - Remove (Triggering unit) from ManaCombusters


Set Combustsize = (Load 1 of (Key (Triggering unit)) from ManaCobust)


Set Manaoffered = (Load 2 of (Key (Triggering unit)) from ManaCobust)


Set ManaBurst = (Position of (Triggering unit))


Unit - Create 1 Mana Burst for (Owner of (Triggering unit)) at ManaBurst facing Default building facing degrees


Animation - Change (Last created unit)'s size to ((Combustsize / 2.00)%, 100.00%, 100.00%) of its original size


Set DamageGroup = (Units within (Real(Manaoffered)) of ManaBurst matching (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True))


Unit Group - Pick every unit in DamageGroup and do (Actions)



Loop - Actions




Unit - Cause (Triggering unit) to damage (Picked unit), dealing (Real(Manaoffered)) damage of attack type Spells and damage type Magic


Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in ManaCobust
Posion cast

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Storm Bolt

Actions


Set Damage_divided_by_time[0] = ((Level of Storm Bolt for (Triggering unit)) x 150)


-------- the fulll damage dealt --------


Set Damage_divided_by_time[1] = 10


-------- it deals damage 10 --------


Set Damage_divided_by_time[2] = (Damage_divided_by_time[0] / Damage_divided_by_time[1])


-------- we divide the full damage by the ammount of times :D --------


Hashtable - Save Damage_divided_by_time[2] as 0 of (Key (Target unit of ability being cast)) in posionhash


Hashtable - Save Damage_divided_by_time[1] as 1 of (Key (Target unit of ability being cast)) in posionhash


Hashtable - Save Handle Of(Triggering unit) as 2 of (Key (Target unit of ability being cast)) in posionhash


Set targett = (Target unit of ability being cast)


Hashtable - Save Handle Oftargett as 4 of (Key (Target unit of ability being cast)) in posionhash


Unit Group - Add (Target unit of ability being cast) to poisiongroup
loop

Events


Time - Every 1.00 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in poisiongroup and do (Actions)



Loop - Actions




Set Damage_divided_by_time[2] = (Load 0 of (Key (Picked unit)) from posionhash)




Set Damage_divided_by_time[1] = (Load 1 of (Key (Picked unit)) from posionhash)




Set damager = (Load 2 of (Key (Picked unit)) in posionhash)




Set targett = (Load 4 of (Key (Picked unit)) in posionhash)




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





If - Conditions






Damage_divided_by_time[1] Greater than 0





Then - Actions






Set Damage_divided_by_time[1] = (Damage_divided_by_time[1] - 1)






Unit - Cause damager to damage targett, dealing (Real(Damage_divided_by_time[2])) damage of attack type Spells and damage type Normal






Hashtable - Save Damage_divided_by_time[1] as 1 of (Key (Picked unit)) in posionhash





Else - Actions






Unit Group - Remove (Picked unit) from poisiongroup






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in posionhash
Pein ULTIMATE

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Pein Ultimate

Actions


Set PE_point[0] = (Target point of ability being cast)


Set PE_point[1] = (Position of (Triggering unit))


Unit - Create 1 Pein Effect 1=D for (Owner of (Triggering unit)) at PE_point[1] facing PE_point[0]


Unit - Add Crow Form to (Last created unit)


Set PE_height = 800.00


Hashtable - Save PE_height as 0 of (Key (Last created unit)) in PE_hash


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


Custom script: call RemoveLocation(udg_PE_point[1])


Custom script: call RemoveLocation(udg_PE_point[0])
Untitled Trigger 031

Events


Time - Every 0.04 seconds of game time

Conditions

Actions


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



Loop - Actions




Set PE_height = (Load 0 of (Key (Picked unit)) from PE_hash)




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





If - Conditions






(Current flying height of (Picked unit)) Less than or equal to PE_height





Then - Actions






Animation - Change (Picked unit) flying height to (10.00 + (Current flying height of (Picked unit))) at 0.00






Set PE_point[0] = (Position of (Picked unit))






Set PE_point[1] = (PE_point[0] offset by 5.00 towards (Facing of (Picked unit)) degrees)






Unit - Move (Picked unit) instantly to PE_point[1]






Custom script: call RemoveLocation(udg_PE_point[0])






Custom script: call RemoveLocation(udg_PE_point[1])





Else - Actions






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


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



Loop - Actions




Set PE_time = (Load 1 of (Key (Picked unit)) from PE_hash)




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





If - Conditions






PE_time Less than or equal to 150





Then - Actions






Set PE_time = (PE_time + 1)






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







If - Conditions








Or - Any (Conditions) are true









Conditions










PE_time Equal to 10










PE_time Equal to 20










PE_time Equal to 30










PE_time Equal to 40










PE_time Equal to 60










PE_time Equal to 70










PE_time Equal to 80










PE_time Equal to 90







Then - Actions








Set PE_point[0] = (Position of (Picked unit))








Set PE_point[1] = (PE_point[0] offset by 500.00 towards (Random real number between 0.00 and 360.00) degrees)








Unit - Create 1 Pein Ultimate Flying SFX2 for (Owner of (Picked unit)) at PE_point[1] facing PE_point[0]








Animation - Change (Last created unit)'s size to ((Random real number between 175.00 and 200.00)%, (Random real number between 175.00 and 200.00)%, (Random real number between 157.00 and 225.00)%) of its original size








Hashtable - Save Handle OfPE_point[0] as 0 of (Key (Last created unit)) in PE_hash








Unit Group - Add (Last created unit) to PE_Group[2]







Else - Actions






Hashtable - Save PE_time as 1 of (Key (Picked unit)) in PE_hash





Else - Actions






Unit Group - Remove (Picked unit) from PE_Group[1]






Set PE_point[0] = (Position of (Picked unit))






Set PE_Group[4] = (Units within 600.00 of PE_point[0] matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True))






Set PE_Group[5] = (Units within 150.00 of PE_point[0] matching ((Unit-type of (Matching unit)) Equal to Pein Ultimate Flying SFX2))






Set PE_unit = (Picked unit)






Unit Group - Pick every unit in PE_Group[4] and do (Actions)







Loop - Actions








Unit - Cause PE_unit to damage (Picked unit), dealing 300.00 damage of attack type Spells and damage type Normal






Unit Group - Pick every unit in PE_Group[5] and do (Actions)







Loop - Actions








Unit - Kill (Picked unit)






Custom script: call DestroyGroup(udg_PE_Group[4])






Custom script: call DestroyGroup(udg_PE_Group[5])






Unit - Create 1 Pein end Effect for (Owner of (Picked unit)) at PE_point[0] facing Default building facing degrees






Unit - Add a 0.50 second Generic expiration timer to (Last created unit)






Custom script: call RemoveLocation(udg_PE_point[0])






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






Unit - Remove (Picked unit) from the game


Unit Group - Pick every unit in PE_Group[2] and do (Actions)



Loop - Actions




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





If - Conditions






(Current flying height of (Picked unit)) Less than or equal to 799.00





Then - Actions






Animation - Change (Picked unit) flying height to (21.00 + (Current flying height of (Picked unit))) at 0.00






Set PE_point[0] = (Position of (Picked unit))






Set PE_point[2] = (Load 0 of (Key (Last created unit)) in PE_hash)






Set PE_point[1] = (PE_point[0] offset by 11.00 towards (Angle from PE_point[0] to PE_point[2]) degrees)






Unit - Move (Picked unit) instantly to PE_point[1]






Custom script: call RemoveLocation(udg_PE_point[0])






Custom script: call RemoveLocation(udg_PE_point[1])





Else - Actions






Unit Group - Remove (Picked unit) from PE_Group[2]
Untitled Trigger 001 Copy

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Throw Rasen Shuriken


((Triggering unit) has buff Rasen Shuriken ) Equal to True

Actions


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



If - Conditions




(RS_group[0] is empty) Equal to True



Then - Actions




Trigger - Turn on Untitled Trigger 001 Copy Copy <gen>



Else - Actions


Set RS_point[0] = (Position of (Triggering unit))


Set RS_point[1] = (Target point of ability being cast)


Set RS_point[2] = (RS_point[0] offset by 10.00 towards (Angle from RS_point[0] to RS_point[1]) degrees)


Unit - Create 1 Rasen Shuriken Dummy for (Owner of (Triggering unit)) at RS_point[2] facing (Angle from RS_point[0] to RS_point[1]) degrees


Set RS_size = 300.00


-------- max size --------


Set RS_size_Copy = 100.00


-------- original size --------


Set RS_damage = ((Level of Rasen Shuriken for (Triggering unit)) x 10)


-------- Damage --------


-------- formular for damage is 10X Rasen Shuriken x 10 per second. --------


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


Hashtable - Save Handle OfRS_point[1] as 0 of (Key (Last created unit)) in RS_hash


Hashtable - Save RS_damage as 1 of (Key (Last created unit)) in RS_hash


Hashtable - Save RS_size as 2 of (Key (Last created unit)) in RS_hash


Hashtable - Save RS_size_Copy as 3 of (Key (Last created unit)) in RS_hash


Unit - Remove Rasen Shuriken buff from (Triggering unit)


Custom script: call RemoveLocation(udg_RS_point[0])


Custom script: call RemoveLocation(udg_RS_point[2])
Untitled Trigger 001 Copy Copy

Events


Time - Every 0.01 seconds of game time

Conditions

Actions


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



If - Conditions




(RS_group[0] is empty) Equal to True



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions


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



Loop - Actions




Set RS_point[0] = (Position of (Picked unit))




Set RS_point[1] = (Load 0 of (Key (Picked unit)) in RS_hash)




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





If - Conditions






(Distance between RS_point[0] and RS_point[1]) Greater than or equal to 10.00





Then - Actions






Set RS_point[2] = (RS_point[0] offset by 10.00 towards (Angle from RS_point[0] to RS_point[1]) degrees)






Set RS_group[2] = (Units within 100.00 of RS_point[2] matching ((((Matching unit) is A structure) Equal to False) and ((((Owner of (Picked unit)) is an enemy of (Owner of (Matching unit))) Equal to True) and (((Matching unit) is dead) Equal to True))))






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







If - Conditions








(RS_group[2] is empty) Equal to True







Then - Actions








Unit - Move (Picked unit) instantly to RS_point[2]








Custom script: call RemoveLocation(udg_RS_point[2])








Custom script: call RemoveLocation(udg_RS_point[0])








Custom script: call DestroyGroup(udg_RS_group[2])







Else - Actions








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








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









If - Conditions










(RS_group[1] is empty) Equal to True









Then - Actions










Trigger - Turn on Untitled Trigger 002 Copy <gen>









Else - Actions








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








Custom script: call RemoveLocation(udg_RS_point[0])








Custom script: call DestroyGroup(udg_RS_group[2])








Custom script: call RemoveLocation(udg_RS_point[2])





Else - Actions






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







If - Conditions








(RS_group[1] is empty) Equal to True







Then - Actions








Trigger - Turn on Untitled Trigger 002 Copy <gen>







Else - Actions






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






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






Custom script: call RemoveLocation(udg_RS_point[0])






Custom script: call DestroyGroup(udg_RS_group[2])






Custom script: call RemoveLocation(udg_RS_point[2])
Untitled Trigger 002 Copy

Events


Time - Every 0.10 seconds of game time

Conditions

Actions


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



If - Conditions




(RS_group[1] is empty) Equal to True



Then - Actions




Trigger - Turn off (This trigger)



Else - Actions


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



Loop - Actions




Set RS_size = (Load 2 of (Key (Picked unit)) from RS_hash)




Set RS_size_Copy = (Load 3 of (Key (Picked unit)) from RS_hash)




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





If - Conditions






RS_size Greater than or equal to RS_size_Copy





Then - Actions






Set RS_damage = (Load 1 of (Key (Picked unit)) from RS_hash)






Set RS_size_Copy = (RS_size_Copy + 5.00)






Animation - Change (Picked unit)'s size to (RS_size_Copy%, RS_size_Copy%, RS_size_Copy%) of its original size






Set RS_point[2] = (Position of (Picked unit))






Set RS_group[2] = (Units within (RS_size_Copy + 50.00) of RS_point[2] matching ((((Matching unit) is A structure) Equal to False) and ((((Owner of (Picked unit)) is an enemy of (Owner of (Matching unit))) Equal to True) and (((Matching unit) is dead) Equal to False))))






Set RS_unit = (Picked unit)






Unit Group - Pick every unit in RS_group[2] and do (Actions)







Loop - Actions








Unit - Cause RS_unit to damage (Picked unit), dealing (Real(RS_damage)) damage of attack type Spells and damage type Normal






Hashtable - Save RS_size_Copy as 3 of (Key (Picked unit)) in RS_hash






Custom script: call RemoveLocation(udg_RS_point[2])






Custom script: call DestroyGroup(udg_RS_group[2])





Else - Actions






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






Unit - Kill (Picked unit)






Unit Group - Remove (Picked unit) from RS_group[2]
Untitled Trigger 016

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Kirin

Actions


Custom script: call UnitAddAbilityBJ( 'Aloc', GetTriggerUnit() )


Set KN_point[0] = (Target point of ability being cast)


Unit Group - Add (Triggering unit) to KN_group[0]


Hashtable - Save Handle OfKN_point[0] as 0 of (Key (Triggering unit)) in KN_hash
Kirin Loop

Events


Time - Every 0.10 seconds of game time

Conditions

Actions


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



Loop - Actions




Set KN_integer = (Load 1 of (Key (Picked unit)) from KN_hash)




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





If - Conditions






KN_integer Greater than or equal to 4





Then - Actions






Set KN_point[0] = (Position of (Picked unit))






Set KN_point[1] = (KN_point[0] offset by 23.00 towards ((Facing of (Picked unit)) + 90.00) degrees)






Unit - Create 1 Kirin Effect 1 for (Owner of (Picked unit)) at KN_point[1] facing Default building facing degrees






Unit - Add a 1.00 second Generic expiration timer to (Last created unit)






Set KN_unit = (Last created unit)






Unit - Create 1 Kirin Effect 2 for (Owner of (Picked unit)) at KN_point[1] facing Default building facing degrees






Unit - Order (Last created unit) to Special Archimonde - Finger Of Death KN_unit






For each (Integer kn_integer) from 1 to 9, do (Actions)







Loop - Actions








Set KN_point[2] = (KN_point[0] offset by 300.00 towards ((Real(kn_integer)) x (360.00 / 9.00)) degrees)








Unit - Create 1 Kirin Effect 2 for (Owner of (Picked unit)) at KN_point[2] facing Default building facing degrees








Unit - Order (Last created unit) to Special Archimonde - Finger Of Death KN_unit








Custom script: call RemoveLocation(udg_KN_point[2])






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






Unit - Add a 1.00 second Generic expiration timer to (Last created unit)






Set KN_integer = 0






Hashtable - Save KN_integer as 1 of (Key (Picked unit)) in KN_hash






Custom script: call RemoveLocation(udg_KN_point[0])






Custom script: call RemoveLocation(udg_KN_point[1])






Hashtable - Save KN_integer as 1 of (Key (Picked unit)) in KN_hash






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






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





Else - Actions






Set KN_integer = (KN_integer + 1)






Hashtable - Save KN_integer as 1 of (Key (Picked unit)) in KN_hash


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



Loop - Actions




Set KN_integer = (Load 1 of (Key (Picked unit)) from KN_hash)




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





If - Conditions






KN_integer Greater than or equal to 5





Then - Actions






Set KN_integer = 0






Hashtable - Save KN_integer as 1 of (Key (Picked unit)) in KN_hash






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






Unit Group - Add (Picked unit) to KN_group[2]






Unit Group - Remove (Picked unit) from KN_group[1]





Else - Actions






Set KN_integer = (KN_integer + 1)






Hashtable - Save KN_integer as 1 of (Key (Picked unit)) in KN_hash


Unit Group - Pick every unit in KN_group[2] and do (Actions)



Loop - Actions




Set KN_integer = (Load 1 of (Key (Picked unit)) from KN_hash)




Set KN_point[0] = (Load 0 of (Key (Picked unit)) in KN_hash)




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





If - Conditions






KN_integer Less than or equal to 9





Then - Actions






Set KN_integer = (KN_integer + 1)






Hashtable - Save KN_integer as 1 of (Key (Picked unit)) in KN_hash





Else - Actions






Set KN_unit = (Picked unit)






For each (Integer KN_integer) from 1 to 5, do (Actions)







Loop - Actions








Set KN_point[1] = (KN_point[0] offset by (Random real number between 0.00 and 500.00) towards (Random real number between 0.00 and 359.00) degrees)








Unit - Create 1 Kirin Effect 3 for (Owner of (Picked unit)) at KN_point[1] facing Default building facing degrees








Set KN_group[3] = (Units within 600.00 of KN_point[1] matching (((Matching unit) belongs to an enemy of (Owner of KN_unit)) Equal to True))








Unit - Add a 1.00 second Generic expiration timer to (Last created unit)








Unit Group - Pick every unit in KN_group[3] and do (Actions)









Loop - Actions










Unit - Cause KN_unit to damage (Picked unit), dealing 100.00 damage of attack type Spells and damage type Lightning








Custom script: call RemoveLocation(udg_KN_point[1])








Custom script: call DestroyGroup(udg_KN_group[3])






Unit Group - Remove (Picked unit) from KN_group[2]






Custom script: call DestroyGroup(udg_KN_group[3])






Custom script: call RemoveLocation(udg_KN_point[0])






Custom script: call UnitRemoveAbilityBJ( 'Aloc', udg_KN_unit)






Unit - Hide KN_unit






Unit - Unhide KN_unit






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in KN_hash
Untitled Trigger 002

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Triple Slash

Actions


Set TripleSlasher = (Triggering unit)


Set target_Copy = (Target unit of ability being cast)


Set hits = 3


Set crit = ((Level of (Ability being cast) for (Triggering unit)) x 10)


Set miss = (20 - ((Level of (Ability being cast) for (Triggering unit)) x 5))


Unit - Pause TripleSlasher


Unit - Pause target_Copy


Animation - Change TripleSlasher's animation speed to 400.00% of its original speed


Hashtable - Save Handle Oftarget_Copy as 0 of (Key (Triggering unit)) in Triplestrike


Hashtable - Save Handle Of(Triggering unit) as 2 of (Key (Triggering unit)) in Triplestrike


Hashtable - Save hits as 1 of (Key (Triggering unit)) in Triplestrike


Unit Group - Add (Triggering unit) to triplestrikers
hits

Events


Time - Every 0.30 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in triplestrikers and do (Actions)



Loop - Actions




Set target_Copy = (Load 0 of (Key (Picked unit)) in Triplestrike)




Set TripleSlasher = (Load 2 of (Key (Picked unit)) in Triplestrike)




Set hits = (Load 1 of (Key (Picked unit)) from Triplestrike)




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





If - Conditions






hits Greater than or equal to 1





Then - Actions






Animation - Play TripleSlasher's attack animation






Unit - Cause TripleSlasher to damage target_Copy, dealing (25.00 x (Real((Level of Triple Slash for TripleSlasher)))) damage of attack type Spells and damage type Normal






Set hits = (hits - 1)






Hashtable - Save hits as 1 of (Key (Picked unit)) in Triplestrike





Else - Actions






Unit - Unpause TripleSlasher






Animation - Change TripleSlasher's animation speed to 100.00% of its original speed






Unit - Unpause target_Copy






Unit Group - Remove (Picked unit) from triplestrikers






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Triplestrike
Untitled Trigger 009

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Shadowbolt (Neutral Hostile)

Actions


Unit - Order (Target unit of ability being cast) to Attack (Triggering unit)
test

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Shadow Spin

Actions


Set TempLoc = (Position of (Triggering unit))


Set ShadowspinINdexSize = 10


Unit - Create 1 Voodoo Dummy for (Owner of Spinner) at TempLoc facing Default building facing degrees


Unit - Order (Last created unit) to Neutral - Firebolt (Random unit from (Units within 600.00 of TempLoc matching (((Matching unit) belongs to an enemy of (Owner of spinner)) Equal to True)))


Unit - Add a 1.00 second Generic expiration timer to (Last created unit)


Custom script: call RemoveLocation(udg_TempLoc)


Hashtable - Save ShadowspinINdexSize as 0 of (Key (Triggering unit)) in Shadowspin


Unit Group - Add (Triggering unit) to Spinnersftw
cookie

Events


Time - Every 0.50 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in Spinnersftw and do (Actions)



Loop - Actions




Set ShadowspinINdexSize = (Load 0 of (Key (Picked unit)) from Shadowspin)




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





If - Conditions






ShadowspinINdexSize Greater than or equal to 1





Then - Actions






Set TempLoc = (Position of (Picked unit))






Unit - Create 1 ShadowSpinner 3 for (Owner of (Picked unit)) at TempLoc facing Default building facing degrees






Unit - Order (Last created unit) to Neutral - Firebolt (Random unit from (Units within 600.00 of TempLoc matching (((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True)))






Unit - Add a 0.10 second Generic expiration timer to (Last created unit)






Set ShadowspinINdexSize = (ShadowspinINdexSize - 1)






Custom script: call RemoveLocation(udg_TempLoc)






Hashtable - Save ShadowspinINdexSize as 0 of (Key (Picked unit)) in Shadowspin





Else - Actions






Unit Group - Remove (Picked unit) from Spinnersftw






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Shadowspin
Iceexplosion Copy Copy 2

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Orb of the Damned

Actions


Set Deathpoint[0] = (Position of (Triggering unit))


Set Deathpoint[1] = (Target point of ability being cast)


Unit - Create 1 Death Blast1 for (Owner of (Triggering unit)) at Deathpoint[0] facing (Angle from Deathpoint[0] to Deathpoint[1]) degrees


Unit - Turn collision for (Last created unit) Off


Unit Group - Add (Last created unit) to DeathMissle


Hashtable - Save Handle OfDeathpoint[1] as 1 of (Key (Last created unit)) in hash1


Custom script: call RemoveLocation(udg_Deathpoint[0])
Iceexplosion Copy Copy Copy

Events


Time - Every 0.01 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in DeathMissle and do (Actions)



Loop - Actions




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





If - Conditions






(DeathMissle is empty) Equal to False





Then - Actions






Set Deathpoint[0] = (Position of (Picked unit))






Set Deathpoint[1] = (Load 1 of (Key (Picked unit)) in hash1)






Set Deathpoint[2] = (Deathpoint[0] offset by 2.50 towards (Angle from Deathpoint[0] to Deathpoint[1]) degrees)






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







If - Conditions








(Distance between Deathpoint[0] and Deathpoint[1]) Greater than 5.00







Then - Actions








Unit - Move (Picked unit) instantly to Deathpoint[2]








Custom script: call RemoveLocation(udg_Deathpoint[0])








Custom script: call RemoveLocation(udg_Deathpoint[2])








Animation - Change (Picked unit) flying height to ((Current flying height of (Picked unit)) + 3.00) at 1000000000.00







Else - Actions








Unit Group - Remove (Picked unit) from DeathMissle








Unit - Create 1 Death Blast for (Owner of (Picked unit)) at Deathpoint[2] facing Default building facing degrees








Animation - Change (Last created unit) flying height to ((Current flying height of (Picked unit)) + 300.00) at 100000.00








Unit - Order (Last created unit) to Neutral Tinker - Cluster Rockets Deathpoint[2]








Custom script: call RemoveLocation(udg_Deathpoint[1])








Unit - Add a 1.25 second Generic expiration timer to (Picked unit)








Unit - Add a 2.00 second Generic expiration timer to (Last created unit)








Custom script: call RemoveLocation(udg_Deathpoint[0])








Custom script: call RemoveLocation(udg_Deathpoint[2])





Else - Actions
Untitled Trigger 003

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Mana Warden (Neutral Hostile)

Actions


-------- We cast the ability --------


-------- Check if its Mana Warden. --------


Set ManaWarden = (Position of (Target unit of ability being cast))


-------- We set the location to not get a leak. --------


Unit - Create 1 Mana Warden 1 for (Owner of (Triggering unit)) at ManaWarden facing Default building facing degrees


-------- Create the following dummy --------


Unit - Order (Last created unit) to Right-Click (Target unit of ability being cast)


-------- We order it to follow our target --------


Animation - Change (Last created unit)'s vertex coloring to (25.00%, 75.00%, 25.00%) with 50.00% transparency


-------- We colour it like a etheral unit --------


Set Mana_Warden = (Last created unit)


-------- We set the dummy for laiter use --------


Set mana_caster = (Target unit of ability being cast)


-------- We set the target for laiter use --------


Set time_mana_max[0] = ((Level of Mana Warden (Neutral Hostile) for (Triggering unit)) x 25)


-------- How much mana will it regenerate --------


Set time_mana_max[1] = 15


-------- How menny seconds the spell itself last. --------


Set time_mana_max[2] = 10


-------- We set MAX times of how menny times you will gain extra mana during the spell duration --------


Set caster_mana = (Triggering unit)


-------- We set the triggering unit for laiter use in a variable --------


Hashtable - Save time_mana_max[0] as 0 of (Key (Target unit of ability being cast)) in manahash


-------- We save how much mana it will regenerate --------


Hashtable - Save time_mana_max[2] as 2 of (Key (Target unit of ability being cast)) in manahash


-------- Max casts saved --------


Hashtable - Save Handle OfMana_Warden as 3 of (Key (Target unit of ability being cast)) in manahash


-------- ¨The Dummy saved YAY --------


Hashtable - Save Handle Ofmana_caster as 4 of (Key (Last created unit)) in manahash


-------- The target for laiter use --------


Custom script: call RemoveLocation(udg_ManaWarden)


-------- Destroys the location! --------


Unit Group - Add (Target unit of ability being cast) to caster_warden_groups[0]


-------- We add the unit to a group --------


Unit - Add a (Real(time_mana_max[1])) second Generic expiration timer to (Last created unit)
Untitled Trigger 004

Events


Unit - A unit Starts the effect of an ability

Conditions


((Triggering unit) is in caster_warden_groups[0]) Equal to True

Actions


-------- When a unit casts a spell if the unit is in the group of targeted units --------


Set time_mana_max[2] = (Load 2 of (Key (Triggering unit)) from manahash)


-------- We load the maximum ammount of casts --------


Set time_mana_max[0] = (Load 0 of (Key (Triggering unit)) from manahash)


-------- We load the mana gain. --------


Set Mana_Warden = (Load 3 of (Key (Triggering unit)) in manahash)


-------- We load the dummy unit --------


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



If - Conditions




time_mana_max[2] Greater than 0



Then - Actions




-------- If max times greather than 0 --------




Set time_mana_max[2] = (time_mana_max[2] - 1)




-------- we set max times -1 --------




Unit - Set mana of (Triggering unit) to ((Mana of (Triggering unit)) + (Real(time_mana_max[0])))




-------- Give the unit some mana --------




Hashtable - Save time_mana_max[2] as 2 of (Key (Triggering unit)) in manahash




-------- Save how menny max times we has left --------



Else - Actions




-------- If max times EQUAL than 0 --------




Unit Group - Remove (Triggering unit) from caster_warden_groups[0]




-------- We remove from the group and kills the dummy --------




Unit - Kill Mana_Warden




Hashtable - Clear all child hashtables of child (Key (Load 3 of (Key (Triggering unit)) in manahash)) in manahash




Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in manahash
Untitled Trigger 005

Events


Unit - A unit Dies

Conditions


(Unit-type of (Triggering unit)) Equal to Mana Warden 1

Actions


-------- We check if the unit type of dying unit is equal to the mana warden type --------


Set caster_mana = (Load 4 of (Key (Triggering unit)) in manahash)


-------- We load the target --------


Unit Group - Remove caster_mana from caster_warden_groups[0]


-------- And we remove him from our unit group --------


Hashtable - Clear all child hashtables of child (Key (Load 4 of (Key (Triggering unit)) in manahash)) in manahash


Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in manahash


-------- Remove leaks from the hash table --------
trigger

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Elder Mana Blast

Actions


Set point2 = (Target point of ability being cast)


For each (Integer ElderManaBlast) from 1 to 12, do (Actions)



Loop - Actions




Set point3 = (point2 offset by 300.00 towards ((Real(ElderManaBlast)) x (360.00 / 12.00)) degrees)




Unit - Create 1 Lightning Twister Dummy for (Owner of (Triggering unit)) at point3 facing point2




Unit - Order (Last created unit) to Undead Dreadlord - Carrion Swarm point2




Animation - Change (Last created unit)'s vertex coloring to (25.00%, 75.00%, 25.00%) with 50.00% transparency




Unit - Add a 2.00 second Generic expiration timer to (Last created unit)




Custom script: call RemoveLocation(udg_point3)


Custom script: call RemoveLocation(udg_point2)
Untitled Trigger 003 Copy

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Angel Warden

Actions


Set EW_UNITS[0] = (Target unit of ability being cast)


-------- first we set the target --------


Set EW_point = (Position of (Target unit of ability being cast))


-------- sets a point --------


Unit - Create 1 Elder Wadern 1 for (Owner of (Target unit of ability being cast)) at EW_point facing Default building facing degrees


-------- creates the unit --------


Unit - Order (Last created unit) to Right-Click (Target unit of ability being cast)


-------- orders it to follow the target --------


Animation - Change (Last created unit)'s vertex coloring to (25.00%, 75.00%, 25.00%) with 50.00% transparency


-------- WE TINT IT soo it looks a bit more awsome --------


Set EW_UNITS[1] = (Last created unit)


-------- then we set the dummy of the spell --------


Set EW_times = (3 + (2 x (Level of Angel Warden for (Triggering unit))))


-------- How menny times can you get hitten before the spells disappeares --------


Set EW_life_gained = (25.00 x (Real((Level of Angel Warden for (Triggering unit)))))


-------- How much health do you regain --------


Unit - Add a (8.00 + (2.00 x (Real((Level of Angel Warden for (Triggering unit)))))) second Generic expiration timer to (Last created unit)


-------- How menny seconds do it lasts? --------


Unit Group - Add (Target unit of ability being cast) to EW_group[0]


-------- adding the target to a group --------


Hashtable - Save Handle OfEW_UNITS[0] as 0 of (Key (Last created unit)) in EW_hash


Hashtable - Save Handle OfEW_UNITS[1] as 0 of (Key (Target unit of ability being cast)) in EW_hash


Hashtable - Save EW_life_gained as 1 of (Key (Target unit of ability being cast)) in EW_hash


Hashtable - Save EW_times as 2 of (Key (Target unit of ability being cast)) in EW_hash


-------- Storing the variables in the hashtable --------
EW damage

Events


Unit - A unit Is attacked

Conditions


((Triggering unit) is in EW_group[0]) Equal to True

Actions


Set EW_times = (Load 2 of (Key (Triggering unit)) from EW_hash)


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



If - Conditions




EW_times Greater than or equal to 1



Then - Actions




Set EW_life_gained = (Load 1 of (Key (Triggering unit)) from EW_hash)




Set EW_times = (EW_times - 1)




Unit - Set life of (Triggering unit) to ((Life of (Triggering unit)) + EW_life_gained)




Hashtable - Save EW_times as 2 of (Key (Triggering unit)) in EW_hash



Else - Actions




Set EW_UNITS[0] = (Load 0 of (Key (Triggering unit)) in EW_hash)




Unit - Kill EW_UNITS[0]
EW damage

Events


Unit - A unit Is attacked

Conditions


((Triggering unit) is in EW_group[0]) Equal to True

Actions


Set EW_times = (Load 2 of (Key (Triggering unit)) from EW_hash)


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



If - Conditions




EW_times Greater than or equal to 1



Then - Actions




Set EW_life_gained = (Load 1 of (Key (Triggering unit)) from EW_hash)




Set EW_times = (EW_times - 1)




Unit - Set life of (Triggering unit) to ((Life of (Triggering unit)) + EW_life_gained)




Hashtable - Save EW_times as 2 of (Key (Triggering unit)) in EW_hash



Else - Actions




Set EW_UNITS[0] = (Load 0 of (Key (Triggering unit)) in EW_hash)




Unit - Kill EW_UNITS[0]
Untitled Trigger 001

Events


Unit - A unit Starts the effect of an ability

Conditions

Actions


-------- We check if the unit casts a ability --------


-------- NEEDED STUFF! --------


-------- a buff for every level of the spell --------


-------- a if then else for every level of the spell --------


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



If - Conditions




((Triggering unit) has buff Elder Aura ) Equal to True



Then - Actions




-------- We check if the unit has buff 1 --------




Unit - Set mana of (Triggering unit) to ((Percentage mana of (Triggering unit)) + 2.00)%




-------- then we set the mana of the unit + 2/3/4% --------



Else - Actions


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



If - Conditions




((Triggering unit) has buff Elder Aura ) Equal to True



Then - Actions




-------- We check if the unit has buff 2 --------




Unit - Set mana of (Triggering unit) to ((Percentage mana of (Triggering unit)) + 3.00)%




-------- then we set the mana of the unit + 2/3/4% --------



Else - Actions


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



If - Conditions




((Triggering unit) has buff Elder Aura ) Equal to True



Then - Actions




-------- We check if the unit has buff 3 --------




Unit - Set mana of (Triggering unit) to ((Percentage mana of (Triggering unit)) + 4.00)%




-------- then we set the mana of the unit + 2/3/4% --------



Else - Actions
Electric Shield

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Thunder Shield

Actions


Set ES_point[0] = (Position of (Target unit of ability being cast))


Set ES_unit = (Target unit of ability being cast)


For each (Integer ES_integer[0]) from 1 to 9, do (Actions)



Loop - Actions




Set ES_integer[1] = ((360 / 9) x ES_integer[0])




Set ES_integer[2] = 1000




Set ES_point[1] = (ES_point[0] offset by 200.00 towards (Real(ES_integer[1])) degrees)




Unit - Create 1 Thundergod Dummy 1 for (Owner of (Target unit of ability being cast)) at ES_point[1] facing Default building facing degrees




Set ES_unit2 = (Last created unit)




Hashtable - Save ES_integer[2] as 1 of (Key (Last created unit)) in ES_hash




Hashtable - Save ES_integer[1] as 0 of (Key (Last created unit)) in ES_hash




Hashtable - Save Handle OfES_unit as 2 of (Key (Last created unit)) in ES_hash




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




Custom script: call RemoveLocation(udg_ES_point[1])




Set ES_point[1] = (ES_point[0] offset by 100.00 towards (Real(ES_integer[1])) degrees)




Unit - Create 1 Thundergod Dummy 2 for (Owner of (Target unit of ability being cast)) at ES_point[1] facing Default building facing degrees




Hashtable - Save ES_integer[2] as 1 of (Key (Last created unit)) in ES_hash




Hashtable - Save ES_integer[1] as 0 of (Key (Last created unit)) in ES_hash




Hashtable - Save Handle OfES_unit as 2 of (Key (Last created unit)) in ES_hash




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




Custom script: call RemoveLocation(udg_ES_point[1])


Custom script: call RemoveLocation(udg_ES_point[0])
Electric Shield LOOP

Events


Time - Every 0.01 seconds of game time

Conditions

Actions


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



Loop - Actions




Set ES_integer[0] = (Load 1 of (Key (Picked unit)) from ES_hash)




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





If - Conditions






ES_integer[0] Greater than or equal to 1





Then - Actions






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







If - Conditions








(Unit-type of (Picked unit)) Equal to Thundergod Dummy 1







Then - Actions








Set ES_integer[0] = (ES_integer[0] - 1)








Set ES_integer[1] = ((Load 0 of (Key (Picked unit)) from ES_hash) + 3)








Set ES_unit = (Load 2 of (Key (Picked unit)) in ES_hash)








Set ES_point[0] = (Position of ES_unit)








Set ES_point[1] = (ES_point[0] offset by 200.00 towards (Real(ES_integer[1])) degrees)








Set ES_point[2] = (Position of (Picked unit))








Unit - Move (Picked unit) instantly to ES_point[1]








Hashtable - Save ES_integer[0] as 1 of (Key (Picked unit)) in ES_hash








Hashtable - Save ES_integer[1] as 0 of (Key (Picked unit)) in ES_hash








Set ES_group[1] = (Units within 150.00 of ES_point[2] matching ((((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True) and ((((Matching unit) is A flying unit) Equal to False) and (((Matching unit) is Magic Immune) Equal to False))))








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









Loop - Actions










Unit - Cause ES_unit to damage (Picked unit), dealing 1.00 damage of attack type Spells and damage type Normal








Custom script: call RemoveLocation(udg_ES_point[1])








Custom script: call RemoveLocation(udg_ES_point[0])








Custom script: call RemoveLocation(udg_ES_point[2])








Custom script: call DestroyGroup(udg_ES_group[1])







Else - Actions






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







If - Conditions








(Unit-type of (Picked unit)) Equal to Thundergod Dummy 2







Then - Actions








Set ES_integer[0] = (ES_integer[0] - 1)








Set ES_integer[1] = ((Load 0 of (Key (Picked unit)) from ES_hash) - 3)








Set ES_unit = (Load 2 of (Key (Picked unit)) in ES_hash)








Set ES_point[0] = (Position of ES_unit)








Set ES_point[1] = (ES_point[0] offset by 100.00 towards (Real(ES_integer[1])) degrees)








Unit - Move (Picked unit) instantly to ES_point[1]








Hashtable - Save ES_integer[0] as 1 of (Key (Picked unit)) in ES_hash








Hashtable - Save ES_integer[1] as 0 of (Key (Picked unit)) in ES_hash








Custom script: call RemoveLocation(udg_ES_point[1])








Custom script: call RemoveLocation(udg_ES_point[0])







Else - Actions





Else - Actions






Unit - Kill (Picked unit)






Unit Group - Remove (Picked unit) from ES_group[4]






Hashtable - Clear all child hashtables of child (Key (Picked unit)) in ES_hash
Thunder Triangle

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Thunder Triangle

Actions


Set TT_point[0] = (Target point of ability being cast)


For each (Integer TT_Integer[0]) from 1 to 3, do (Actions)



Loop - Actions




Set TT_point[1] = (TT_point[0] offset by 300.00 towards ((Real(TT_Integer[0])) x (360.00 / 3.00)) degrees)




Set TT_group[0] = (Units within 300.00 of TT_point[1] matching ((((Matching unit) is A structure) Equal to False) and ((((Triggering unit) is Magic Immune) Equal to False) and (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True))))




Set TT_unit = (Random unit from TT_group[0])




Set TT_point[2] = (Position of TT_unit)




Unit - Create 1 TT dummy for (Owner of (Triggering unit)) at TT_point[1] facing TT_point[2]




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)




Unit - Order (Last created unit) to Orc Far Seer - Chain Lightning (Random unit from TT_group[0])




Custom script: call RemoveLocation(udg_TT_point[1])




Custom script: call RemoveLocation(udg_TT_point[2])




Custom script: call DestroyGroup(udg_TT_group[0])


Custom script: call RemoveLocation(udg_TT_point[0])
Thunder Orbs

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Thunder Balls

Actions


Set TB_point[0] = (Position of (Triggering unit))


Set TB_point[1] = (TB_point[0] offset by 500.00 towards (Facing of (Triggering unit)) degrees)


Unit - Create 1 Thunder Balls for (Owner of (Triggering unit)) at TB_point[0] facing Default building facing degrees


Hashtable - Save Handle OfTB_point[1] as 0 of (Key (Last created unit)) in TB_hash


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


For each (Integer TB_integer) from 1 to 2, do (Actions)



Loop - Actions




Set TB_point[2] = (TB_point[1] offset by (100.00 x (Real(TB_integer))) towards ((Facing of (Triggering unit)) - 90.00) degrees)




Unit - Create 1 Thunder Balls for (Owner of (Triggering unit)) at TB_point[0] facing Default building facing degrees




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




Hashtable - Save Handle OfTB_point[2] as 0 of (Key (Last created unit)) in TB_hash




Set TB_point[2] = (TB_point[1] offset by (100.00 x (Real(TB_integer))) towards ((Facing of (Triggering unit)) + 90.00) degrees)




Unit - Create 1 Thunder Balls for (Owner of (Triggering unit)) at TB_point[0] facing Default building facing degrees




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




Hashtable - Save Handle OfTB_point[2] as 0 of (Key (Last created unit)) in TB_hash


Custom script: call RemoveLocation(udg_TB_point[0])
Untitled Trigger 017

Events


Time - Every 0.05 seconds of game time

Conditions

Actions


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



Loop - Actions




Set TB_point[0] = (Position of (Picked unit))




Set TB_point[1] = (Load 0 of (Key (Picked unit)) in TB_hash)




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





If - Conditions






(Distance between TB_point[0] and TB_point[1]) Greater than or equal to 10.00





Then - Actions






Set TB_point[2] = (TB_point[0] offset by 10.00 towards (Angle from TB_point[0] to TB_point[1]) degrees)






Set TB_group[1] = (Units within 20.00 of TB_point[2] matching ((((Matching unit) belongs to an enemy of (Owner of (Picked unit))) Equal to True) and ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) is Magi






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







If - Conditions








(TB_group[1] is empty) Equal to True







Then - Actions








Unit - Move (Picked unit) instantly to TB_point[2]








Custom script: call RemoveLocation(udg_TB_point[0])








Custom script: call RemoveLocation(udg_TB_point[2])








Custom script: call DestroyGroup(udg_TB_group[1])







Else - Actions








Unit Group - Pick every unit in TB_group[2] and do (Actions)









Loop - Actions










Unit - Cause TB_unit to damage (Picked unit), dealing 100.00 damage of attack type Spells and damage type Normal








Custom script: call DestroyGroup(udg_TB_group[1])








Custom script: call RemoveLocation(udg_TB_point[1])








Custom script: call RemoveLocation(udg_TB_point[0])








Custom script: call RemoveLocation(udg_TB_point[2])








Hashtable - Save Handle OfTB_point[1] as 0 of (Key (Picked unit)) in TAS








Unit - Kill (Picked unit)





Else - Actions






Custom script: call RemoveLocation(udg_TB_point[1])






Custom script: call RemoveLocation(udg_TB_point[0])






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






Unit - Kill (Picked unit)
Thunder Cage

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Thunder Cage ´

Actions


Set TC_Point[0] = (Target point of ability being cast)


For each (Integer TC1_integer) from 1 to 36, do (Actions)



Loop - Actions




Set TC_Point[1] = (TC_Point[0] offset by 300.00 towards ((360.00 / 36.00) x (Real(TC1_integer))) degrees)




Unit - Create 1 TC1 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)




Unit - Create 1 TC2 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)




Animation - Change (Last created unit) flying height to 100.00 at 0.00


For each (Integer TC1_integer) from 1 to 36, do (Actions)



Loop - Actions




Set TC_Point[1] = (TC_Point[0] offset by 250.00 towards ((360.00 / 36.00) x (Real(TC1_integer))) degrees)




Unit - Create 1 TC2 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)




Animation - Change (Last created unit) flying height to 150.00 at 0.00


For each (Integer TC1_integer) from 1 to 36, do (Actions)



Loop - Actions




Set TC_Point[1] = (TC_Point[0] offset by 200.00 towards ((360.00 / 36.00) x (Real(TC1_integer))) degrees)




Unit - Create 1 TC2 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)




Animation - Change (Last created unit) flying height to 200.00 at 0.00


For each (Integer TC1_integer) from 1 to 36, do (Actions)



Loop - Actions




Set TC_Point[1] = (TC_Point[0] offset by 150.00 towards ((360.00 / 36.00) x (Real(TC1_integer))) degrees)




Unit - Create 1 TC2 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)




Animation - Change (Last created unit) flying height to 250.00 at 0.00


For each (Integer TC1_integer) from 1 to 36, do (Actions)



Loop - Actions




Set TC_Point[1] = (TC_Point[0] offset by 100.00 towards ((360.00 / 36.00) x (Real(TC1_integer))) degrees)




Unit - Create 1 TC2 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Animation - Change (Last created unit) flying height to 300.00 at 0.00




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)


For each (Integer TC1_integer) from 1 to 36, do (Actions)



Loop - Actions




Set TC_Point[1] = (TC_Point[0] offset by 50.00 towards ((360.00 / 36.00) x (Real(TC1_integer))) degrees)




Unit - Create 1 TC2 for (Owner of (Triggering unit)) at TC_Point[1] facing Default building facing degrees




Animation - Change (Last created unit) flying height to 350.00 at 0.00




Unit - Add a 5.00 second Generic expiration timer to (Last created unit)
Untitled Trigger 013

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Timelock

Actions


Set timelockpoint = (Target point of ability being cast)


Set timelocked = (Units within (250.00 + ((Real((Level of (Ability being cast) for (Triggering unit)))) x 50.00)) of timelockpoint matching (((Matching unit) is dead) Equal to False))


Unit Group - Pick every unit in timelocked and do (Actions)



Loop - Actions




-------- Set the time it takes to get released from the timestop to X ammount --------




Set time = ((Level of (Ability being cast) for (Triggering unit)) x 5)




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




Animation - Change (Picked unit)'s vertex coloring to (25.00%, 25.00%, 25.00%) with 0.00% transparency




Unit - Pause (Picked unit)




Unit Group - Add (Picked unit) to timelocked_2




Hashtable - Save time as 0 of (Key (Picked unit)) in timetable


Custom script: call RemoveLocation(udg_timelockpoint)


Custom script: call DestroyGroup(udg_timelocked)
timelocked

Events


Time - Every 1.00 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in timelocked_2 and do (Actions)



Loop - Actions




Set time = (Load 0 of (Key (Picked unit)) from timetable)




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





If - Conditions






time Equal to 0





Then - Actions






Unit - Unpause (Picked unit)






Unit Group - Remove (Picked unit) from timelocked






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






Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency






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





Else - Actions






Set time = (time - 1)






Hashtable - Save time as 0 of (Key (Picked unit)) in timetable
Time and Space

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Time and Space

Actions


Set timelockpoint = (Position of (Triggering unit))


Set timeoncemore = 20


Hashtable - Save Handle Oftimelockpoint as 0 of (Key (Triggering unit)) in TAS


Hashtable - Save (Percentage life of (Triggering unit)) as 1 of (Key (Triggering unit)) in TAS


Hashtable - Save timeoncemore as 2 of (Key (Triggering unit)) in TAS


Unit Group - Add (Triggering unit) to tasgroup
timemovement

Events


Time - Every 1.00 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in tasgroup and do (Actions)



Loop - Actions




Set timeoncemore = (Load 2 of (Key (Picked unit)) from TAS)




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





If - Conditions






timeoncemore Equal to 0





Then - Actions






Set timelockpoint = (Load 0 of (Key (Picked unit)) in TAS)






Set tas2 = (Load 1 of (Key (Picked unit)) from TAS)






Unit - Move (Picked unit) instantly to timelockpoint






Unit - Set life of (Picked unit) to tas2%






Unit Group - Remove (Picked unit) from tasgroup






Custom script: call RemoveLocation(udg_timelockpoint)






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





Else - Actions






Set timeoncemore = (timeoncemore - 1)






Hashtable - Save timeoncemore as 2 of (Key (Picked unit)) in TAS
Speed of Space

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Speed of Space

Actions


Set sostime = ((Level of (Ability being cast) for (Triggering unit)) x 10)


Set sostime = (sostime x 10)


Unit - Set (Triggering unit) movement speed to 522.00


Hashtable - Save sostime as 1 of (Key (Triggering unit)) in SOS


Unit Group - Add (Triggering unit) to sosgroup
trigher

Events


Time - Every 0.10 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in sosgroup and do (Actions)



Loop - Actions




Set sostime = (Load 1 of (Key (Picked unit)) from SOS)




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





If - Conditions






sostime Equal to 0





Then - Actions






Unit - Set (Picked unit) movement speed to (Default movement speed of (Picked unit))






Unit Group - Remove (Picked unit) from sosgroup






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





Else - Actions






Set Sosloc = (Position of (Picked unit))






Unit - Create 1 Timelord dummy SOS for (Owner of (Picked unit)) at Sosloc facing (Facing of (Picked unit)) degrees






Animation - Change (Last created unit)'s vertex coloring to (25.00%, 25.00%, 25.00%) with 50.00% transparency






Custom script: call RemoveLocation(udg_Sosloc)






Unit - Add a 1.00 second Generic expiration timer to (Last created unit)






Set sostime = (sostime - 1)






Hashtable - Save sostime as 1 of (Key (Picked unit)) in SOS
Untitled Trigger 014

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Foreward Clock

Actions


Set fclocation = (Target point of ability being cast)


Unit - Create 1 Dragon DUmmy for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing Default building facing degrees


Custom script: call RemoveLocation(udg_fclocation)


Animation - Change (Target unit of ability being cast)'s vertex coloring to (75.00%, 75.00%, 75.00%) with 0.00% transparency


Unit - Order (Last created unit) to Undead Banshee - Curse (Target unit of ability being cast)


Unit - Add a 1.00 second Generic expiration timer to (Last created unit)


Unit - Set life of (Target unit of ability being cast) to 25.00%


Set fctime = 20


Hashtable - Save fctime as 0 of (Key (Target unit of ability being cast)) in FChash


Unit Group - Add (Target unit of ability being cast) to Fc
dyblemayer

Events


Time - Every 1.00 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in Fc and do (Actions)



Loop - Actions




Set fctime = (Load 0 of (Key (Picked unit)) from FChash)




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





If - Conditions






fctime Equal to 0





Then - Actions






Unit - Set life of (Picked unit) to 100.00%






Animation - Change (Picked unit)'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency






Unit Group - Remove (Picked unit) from Fc






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





Else - Actions






Set fctime = (fctime - 1)






Hashtable - Save fctime as 0 of (Key (Picked unit)) in FChash
Illusion

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Voodoo Mojo

Actions


Set Copy = (Target point of ability being cast)


Set Copygroup = (Units within (225.00 x (Real((Level of (Ability being cast) for (Triggering unit))))) of Copy)


Unit Group - Pick every unit in Copygroup and do (Actions)



Loop - Actions




Unit - Create 1 Illusion Dummy for (Owner of (Triggering unit)) at Copy facing 0.00 degrees




Hero - Create Wand of Illusion and give it to (Last created unit)




Hero - Order (Last created unit) to use (Last created item) on (Picked unit)




Unit - Add a 0.75 second Generic expiration timer to (Last created unit)


Custom script: call RemoveLocation(udg_Copy)


Custom script: call DestroyGroup(udg_Copygroup)
Hex Chain

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Hex Chain

Actions


Set JUMPS = ((Level of (Ability being cast) for (Triggering unit)) x 2)


-------- Change the ammount of jumps in this one. --------


Set hexxar = (Triggering unit)


Set Hexchain = (Position of (Target unit of ability being cast))


Unit - Create 1 Voodoo Dummy for (Owner of (Triggering unit)) at Hexchain facing 0.00 degrees


Special Effect - Create a special effect at Hexchain using Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl


Special Effect - Destroy (Last created special effect)


Unit - Order (Last created unit) to Orc Shadow Hunter - Hex (Target unit of ability being cast)


Unit - Add a 0.50 second Generic expiration timer to (Last created unit)


Unit - Create 1 Voodoo Dummy for (Owner of (Triggering unit)) at Hexchain facing 0.00 degrees


Unit - Order (Last created unit) to Orc Far Seer - Chain Lightning (Random unit from DamageGroup)


Unit - Add a 0.50 second Generic expiration timer to (Last created unit)


Set hexgroup = (Random 1 units from (Units within 300.00 of Hexchain matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is Polymorphed) Equal to False) and (((Matching unit) belongs to a


Set Lighning_Unit = (Random unit from (Random 1 units from hexgroup))


Hashtable - Save JUMPS as 0 of (Key (Triggering unit)) in HexchainHash


Hashtable - Save Handle OfLighning_Unit as 1 of (Key (Triggering unit)) in HexchainHash


Unit Group - Add (Triggering unit) to Hexxars


Custom script: call RemoveLocation(udg_Hexchain)


-------- call DestroyGroup(udg_hexgroup) --------
hashy

Events


Time - Every 0.25 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in Hexxars and do (Actions)



Loop - Actions




Set JUMPS = (Load 0 of (Key (Picked unit)) from HexchainHash)




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





If - Conditions






JUMPS Greater than or equal to 1





Then - Actions






Set hexxed = (Load 1 of (Key (Picked unit)) in HexchainHash)






Unit Group - Remove hexxed from hexgroup






Set Hexchain = (Position of hexxed)






Set hexgroup = (Random 1 units from (Units within 300.00 of Hexchain matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is Polymorphed) Equal to False) and (((Matching unit) belongs to a






Set Lighning_Unit = (Random unit from (Random 1 units from hexgroup))






Special Effect - Create a special effect at Hexchain using Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl






Special Effect - Destroy (Last created special effect)






Unit - Create 1 Voodoo Dummy for (Owner of (Picked unit)) at Hexchain facing 0.00 degrees






Unit - Order (Last created unit) to Orc Shadow Hunter - Hex hexxed






Unit - Create 1 Voodoo Dummy for (Owner of (Picked unit)) at Hexchain facing 0.00 degrees






Unit - Order (Last created unit) to Orc Far Seer - Chain Lightning (Random unit from hexgroup)






Set JUMPS = (JUMPS - 1)






Hashtable - Save JUMPS as 0 of (Key (Picked unit)) in HexchainHash






Hashtable - Save Handle OfLighning_Unit as 1 of (Key (Picked unit)) in HexchainHash






Custom script: call RemoveLocation(udg_Hexchain)






Custom script: call DestroyGroup(udg_hexgroup)





Else - Actions






Unit Group - Remove (Picked unit) from Hexxars






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

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Voodoo Size Decrease R

Actions


Set pointolol = (Target point of ability being cast)


Set Testgroup = (Units within 275.00 of pointolol matching (((Matching unit) belongs to an enemy of (Owner of (Triggering unit))) Equal to True))


Unit Group - Pick every unit in Testgroup and do (Actions)



Loop - Actions




Unit - Create 1 Dragon DUmmy for (Owner of (Triggering unit)) at (Position of (Picked unit)) facing Default building facing degrees




Animation - Change (Picked unit)'s size to (25.00%, 25.00%, 25.00%) of its original size




Unit - Order (Last created unit) to Undead Banshee - Curse (Picked unit)




Unit - Add a 1.00 second Generic expiration timer to (Last created unit)




Set time = 20




-------- the times it will continue to be small --------




Hashtable - Save time as 0 of (Key (Picked unit)) in Size




Unit Group - Add (Picked unit) to Testgroup_Copy


Custom script: call RemoveLocation(udg_pointolol)


Custom script: call DestroyGroup(udg_Testgroup)
enlarge

Events


Time - Every 1.00 seconds of game time

Conditions

Actions


Unit Group - Pick every unit in Testgroup_Copy and do (Actions)



Loop - Actions




Set time = (Load 0 of (Key (Picked unit)) from Size)




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





If - Conditions






time Equal to 0





Then - Actions






Animation - Change (Picked unit)'s size to (100.00%, 100.00%, 100.00%) of its original size






Unit Group - Remove (Picked unit) from Testgroup






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





Else - Actions






Set time = (time - 1)






Hashtable - Save time as 0 of (Key (Picked unit)) in Size