They gona be mui gui meelee.
First.
First.
-
Omnislash
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Legolas Omnislash 4
-
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
CL_Index[1] Equal to 0
-
-
Then - Actions
-
Trigger - Turn on Omnislash Loop <gen>
-
-
Else - Actions
-
-
Set CL_Index[1] = (CL_Index[1] + 1)
-
Set CL_Index[2] = (CL_Index[2] + 1)
-
Set CL_Caster[CL_Index[2]] = (Triggering unit)
-
Set CL_Player[CL_Index[2]] = (Owner of (Triggering unit))
-
Set CL_Target[CL_Index[2]] = (Target unit of ability being cast)
-
Set CL_AbilityLevel[CL_Index[2]] = (Level of Legolas Omnislash 4 for CL_Caster[CL_Index[2]])
-
Set CL_Boolean[CL_Index[2]] = True
-
Set CL_Slashes[CL_Index[2]] = (2 + (3 x CL_AbilityLevel[CL_Index[2]]))
-
Set CL_Damage[CL_Index[2]] = (75 x CL_AbilityLevel[CL_Index[2]])
-
Set CL_AOE[CL_Index[2]] = 800.00
-
Special Effect - Create a special effect attached to the weapon of CL_Caster[CL_Index[2]] using Abilities\Weapons\ZigguratMissile\ZigguratMissile.mdl
-
Set CL_FirstTarget[CL_Index[2]] = True
-
Set CL_Special[CL_Index[2]] = (Last created special effect)
-
Unit - Pause CL_Caster[CL_Index[2]]
-
Animation - Change CL_Caster[CL_Index[2]]'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
-
Animation - Change CL_Caster[CL_Index[2]]'s animation speed to 200.00% of its original speed
-
-
-
Omnislash Loop
-
Events
-
Time - Every 0.30 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer CL_Index[3]) from 1 to CL_Index[2], do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
CL_Boolean[CL_Index[3]] Equal to True
-
-
Then - Actions
-
Set CL_Slashes[CL_Index[3]] = (CL_Slashes[CL_Index[3]] - 1)
-
Set CL_Loc[1] = (Position of CL_Target[CL_Index[3]])
-
Set CL_Group[1] = (Units within CL_AOE[CL_Index[3]] of CL_Loc[1] matching ((((Matching unit) is A flying unit) Equal to False) and ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of CL_Player[CL_Index[3]]) Equal to True))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
CL_FirstTarget[CL_Index[3]] Equal to True
-
-
Then - Actions
-
Unit - Move CL_Caster[CL_Index[3]] instantly to CL_Loc[1]
-
Unit - Make CL_Caster[CL_Index[3]] face CL_Loc[1] over 0.00 seconds
-
Unit - Cause CL_Caster[CL_Index[3]] to damage CL_Target[CL_Index[3]], dealing (Real(CL_Damage[CL_Index[3]])) damage of attack type Normal and damage type Normal
-
Animation - Play CL_Caster[CL_Index[3]]'s attack animation
-
Special Effect - Create a special effect attached to the origin of CL_Caster[CL_Index[3]] using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
-
Special Effect - Destroy (Last created special effect)
-
Set CL_FirstTarget[CL_Index[3]] = False
-
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
CL_Slashes[CL_Index[3]] Greater than 0
-
(Number of units in CL_Group[1]) Greater than 0
-
-
Then - Actions
-
Set CL_Victim[CL_Index[3]] = (Random unit from CL_Group[1])
-
Set CL_Loc[2] = (Position of CL_Victim[CL_Index[3]])
-
Set CL_Loc[3] = (CL_Loc[2] offset by 50.00 towards (Random angle) degrees)
-
Unit - Move CL_Caster[CL_Index[3]] instantly to CL_Loc[3]
-
Unit - Make CL_Caster[CL_Index[3]] face CL_Loc[2] over 0.00 seconds
-
Unit - Cause CL_Caster[CL_Index[3]] to damage CL_Victim[CL_Index[3]], dealing (Real(CL_Damage[CL_Index[3]])) damage of attack type Normal and damage type Normal
-
Animation - Play CL_Caster[CL_Index[3]]'s attack animation
-
Special Effect - Create a special effect attached to the origin of CL_Caster[CL_Index[3]] using Abilities\Spells\NightElf\Blink\BlinkCaster.mdl
-
Special Effect - Destroy (Last created special effect)
-
Custom script: call RemoveLocation( udg_CL_Loc[2] )
-
Custom script: call RemoveLocation( udg_CL_Loc[3] )
-
-
Else - Actions
-
Set CL_Index[1] = (CL_Index[1] - 1)
-
Set CL_Boolean[CL_Index[3]] = False
-
Special Effect - Destroy CL_Special[CL_Index[3]]
-
Unit - Unpause CL_Caster[CL_Index[3]]
-
Animation - Change CL_Caster[CL_Index[3]]'s vertex coloring to (100.00%, 100.00%, 100.00%) with 0.00% transparency
-
Animation - Reset CL_Caster[CL_Index[3]]'s animation
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
CL_Index[1] Equal to 0
-
-
Then - Actions
-
Set CL_Index[2] = 0
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
-
-
-
Custom script: call RemoveLocation( udg_CL_Loc[1] )
-
Custom script: call DestroyGroup( udg_CL_Group[1] )
-
-
Else - Actions
-
-
-
-
-
-
Hook Table
-
Events
-
Map initialization
-
-
Conditions
-
Actions
-
Hashtable - Create a hashtable
-
Set PH_Table = (Last created hashtable)
-
-
-
Hook25
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Cave Troll Hook Move 1
-
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Index[1] Equal to 0
-
-
Then - Actions
-
Trigger - Turn on Hook Loop25 <gen>
-
-
Else - Actions
-
-
Set PH_Index[1] = (PH_Index[1] + 1)
-
Set PH_Index[2] = (PH_Index[2] + 1)
-
Set PH_Counter[PH_Index[2]] = 0
-
Set PH_Cast_Point = (Position of (Triggering unit))
-
Set PH_Target_Point = (Target point of ability being cast)
-
Set PH_Caster[PH_Index[2]] = (Triggering unit)
-
Unit - Pause PH_Caster[PH_Index[2]]
-
Animation - Play PH_Caster[PH_Index[2]]'s attack animation
-
Set PH_Hook_Angle[PH_Index[2]] = (Angle from PH_Cast_Point to PH_Target_Point)
-
Set PH_Near_Point = (PH_Cast_Point offset by 100.00 towards PH_Hook_Angle[PH_Index[2]] degrees)
-
Unit - Create 1 Hook for (Owner of PH_Caster[PH_Index[2]]) at PH_Near_Point facing Default building facing degrees
-
Set PH_Dummy[PH_Index[2]] = (Last created unit)
-
Set PH_Hooked_Is[PH_Index[2]] = False
-
Set PH_Hooked_Unit[PH_Index[2]] = No unit
-
Custom script: call RemoveLocation(udg_PH_Near_Point)
-
Custom script: call RemoveLocation(udg_PH_Cast_Point)
-
Set PH_Damage = (100 x (Level of (Ability being cast) for PH_Caster[PH_Index[2]]))
-
Set PH_Distance = (15 + (5 x (Level of (Ability being cast) for PH_Caster[PH_Index[2]])))
-
-
-
Hook Loop25
-
Events
-
Time - Every 0.02 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer PH_Index[3]) from 1 to PH_Index[2], do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Counter[PH_Index[3]] Less than PH_Distance
-
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Hooked_Is[PH_Index[3]] Equal to False
-
-
Then - Actions
-
Set PH_Counter[PH_Index[3]] = (PH_Counter[PH_Index[3]] + 1)
-
Set PH_Dummy_Point[PH_Index[3]] = (Position of PH_Dummy[PH_Index[3]])
-
Set PH_Hook_Point[PH_Index[3]] = (PH_Dummy_Point[PH_Index[3]] offset by 30.00 towards PH_Hook_Angle[PH_Index[3]] degrees)
-
Unit - Move PH_Dummy[PH_Index[3]] instantly to PH_Hook_Point[PH_Index[3]]
-
Unit - Create 1 Effect for (Owner of PH_Caster[PH_Index[3]]) at PH_Dummy_Point[PH_Index[3]] facing PH_Hook_Angle[PH_Index[3]] degrees
-
Unit - Turn collision for (Last created unit) Off
-
Hashtable - Save Handle Of(Last created unit) as PH_Counter[PH_Index[3]] of PH_Index[3] in PH_Table
-
Custom script: set bj_wantDestroyGroup = true
-
Unit Group - Pick every unit in (Units within 64.00 of PH_Hook_Point[PH_Index[3]] matching ((((Matching unit) is alive) Equal to True) and (((Matching unit) belongs to an enemy of (Owner of PH_Caster[PH_Index[3]])) Equal to True))) and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Picked unit) is Magic Immune) Equal to False
-
((Picked unit) is A structure) Equal to False
-
((Picked unit) belongs to an ally of (Owner of PH_Caster[PH_Index[3]])) Equal to False
-
PH_Hooked_Is[PH_Index[3]] Equal to False
-
-
Then - Actions
-
Set PH_Hooked_Unit[PH_Index[3]] = (Picked unit)
-
Set PH_Hooked_Is[PH_Index[3]] = True
-
Unit - Pause (Picked unit)
-
Unit - Turn collision for (Picked unit) Off
-
Unit - Cause PH_Caster[PH_Index[3]] to damage (Picked unit), dealing (Real(PH_Damage)) damage of attack type Spells and damage type Lightning
-
-
Else - Actions
-
Custom script: call RemoveLocation(udg_PH_Dummy_Point[udg_PH_Index[3]])
-
Custom script: call RemoveLocation(udg_PH_Hook_Point[udg_PH_Index[3]])
-
-
-
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Counter[PH_Index[3]] Equal to PH_Distance
-
-
Then - Actions
-
Set PH_Hooked_Is[PH_Index[3]] = True
-
Unit - Unpause PH_Caster[PH_Index[3]]
-
-
Else - Actions
-
-
-
Else - Actions
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Hooked_Is[PH_Index[3]] Equal to True
-
-
Then - Actions
-
Set PH_Counter[PH_Index[3]] = (PH_Counter[PH_Index[3]] - 1)
-
Set PH_Dummy_Point[PH_Index[3]] = (Position of PH_Dummy[PH_Index[3]])
-
Set PH_Hook_Point[PH_Index[3]] = (PH_Dummy_Point[PH_Index[3]] offset by 30.00 towards (PH_Hook_Angle[PH_Index[3]] - 180.00) degrees)
-
Set PH_Effect = (Load (PH_Counter[PH_Index[3]] + 1) of PH_Index[3] in PH_Table)
-
Unit - Kill PH_Effect
-
Unit - Remove PH_Effect from the game
-
Unit - Move PH_Dummy[PH_Index[3]] instantly to PH_Hook_Point[PH_Index[3]]
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Hooked_Unit[PH_Index[3]] Not equal to No unit
-
-
Then - Actions
-
Unit - Move PH_Hooked_Unit[PH_Index[3]] instantly to PH_Dummy_Point[PH_Index[3]]
-
-
Else - Actions
-
-
Custom script: call RemoveLocation(udg_PH_Dummy_Point[udg_PH_Index[3]])
-
Custom script: call RemoveLocation(udg_PH_Hook_Point[udg_PH_Index[3]])
-
-
Else - Actions
-
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Counter[PH_Index[3]] Equal to 0
-
-
Then - Actions
-
Unit - Kill PH_Dummy[PH_Index[3]]
-
Unit - Remove PH_Dummy[PH_Index[3]] from the game
-
Unit - Unpause PH_Caster[PH_Index[3]]
-
Animation - Reset PH_Caster[PH_Index[3]]'s animation
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Hooked_Unit[PH_Index[3]] Not equal to No unit
-
-
Then - Actions
-
Unit - Unpause PH_Hooked_Unit[PH_Index[3]]
-
Unit - Turn collision for PH_Hooked_Unit[PH_Index[3]] On
-
-
Else - Actions
-
-
Set PH_Index[1] = (PH_Index[1] - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
PH_Index[1] Equal to 0
-
-
Then - Actions
-
Set PH_Index[2] = 0
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
Else - Actions
-
-
-
Else - Actions
-
-
-
-
-
-
Fury Peak
-
Events
-
Unit - A unit Is attacked
-
-
Conditions
-
((Attacking unit) has buff Fury Peak: Buff ) Equal to True
-
((Attacked unit) is A structure) Equal to False
-
((Attacked unit) is Magic Immune) Equal to False
-
((Attacked unit) belongs to an enemy of (Owner of (Attacking unit))) Equal to True
-
-
Actions
-
Set FP_Point = (Position of (Attacked unit))
-
Floating Text - Create floating text that reads (|c00C80000 + (String((Integer(((Current movement speed of (Attacking unit)) x (0.10 x (Real((Level of Grishnakh Fury Peak 2 for (Attacking unit))))))))))) above (Attacked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
-
Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
-
Floating Text - Change the fading age of (Last created floating text) to 0.75 seconds
-
Floating Text - Change the lifespan of (Last created floating text) to 1.50 seconds
-
Floating Text - Change (Last created floating text): Disable permanence
-
Special Effect - Create a special effect attached to the chest of (Attacked unit) using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
-
Special Effect - Destroy (Last created special effect)
-
Custom script: call RemoveLocation (udg_FP_Point)
-
-