Description:
Ken from Street Fighter swings his leg around creating a spiral of flame which drags all nearby units around him and deals damage once he finished his swing.
Script:
Code: Select all
[gui]
Spell INT
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to Shoryu-Reppa
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Shark_Index Equal to 0
Then - Actions
Trigger - Turn on Spell Loop <gen>
Else - Actions
Set Shark_Index = (Shark_Index + 1)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Shark_Index Greater than Shark_Spell_Max
Then - Actions
Set Shark_Spell_Index[Shark_Index] = Shark_Index
Set Shark_Spell_Max = Shark_Index
Else - Actions
Set Shark_MUI = Shark_Spell_Index[Shark_Index]
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Set The Caster and the Target------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Caster[Shark_MUI] = (Triggering unit)
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Set The Damage------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Damage[Shark_MUI] = 150
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Set angle------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Real[Shark_MUI] = 0.00
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Set Times Caster Will attack------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Real2[Shark_MUI] = 60.00
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Set Location------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Point1[Shark_MUI] = (Position of Shark_Caster[Shark_MUI])
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Set Unit Group------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Group[Shark_MUI] = (Units within 400.00 of Shark_Point1[Shark_MUI] matching ((((Matching unit) belongs to an enemy of (Owner of Shark_Caster[Shark_MUI])) Equal to True) and (((Matching unit) is alive) Equal to True)))
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Pause the Caster------------------------------------------------- --------
-------- ---------------------------------------------------------------------------------------------------------------- --------
Unit - Pause Shark_Caster[Shark_MUI]
-------- ---------------------------------------------------------------------------------------------------------------- --------
Custom script: call SetUnitAnimationByIndex (udg_Shark_Caster[udg_Shark_MUI] , 7)
-------- ---------------------------------------------------------------------------------------------------------------- --------
Custom script: call RemoveLocation (udg_Shark_Point1[udg_Shark_MUI])
Spell Loop
Events
Time - Every 0.03 seconds of game time
Conditions
Actions
For each (Integer Shark_Loop) from 1 to Shark_Index, do (Actions)
Loop - Actions
Set Shark_MUI = Shark_Spell_Index[Shark_Loop]
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Shark_Real2[Shark_MUI] Greater than 0.00
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Shark_Real2[Shark_MUI] Equal to 1.00
Then - Actions
Unit Group - Pick every unit in Shark_Group[Shark_MUI] and do (Actions)
Loop - Actions
Unit - Cause Shark_Caster[Shark_MUI] to damage (Picked unit), dealing (Real(Shark_Damage[Shark_MUI])) damage of attack type Spells and damage type Normal
-------- ---------------------------------------------------------------------------------------------------------------- --------
-------- -------------------Clear------------------------------------------------- --------
Set Shark_Spell_Index[Shark_Loop] = Shark_Spell_Index[Shark_Index]
Set Shark_Spell_Index[Shark_Index] = Shark_MUI
Set Shark_Index = (Shark_Index - 1)
Set Shark_Loop = (Shark_Loop - 1)
-------- ---------------------------------------------------------------------------------------------------------------- --------
Custom script: call DestroyGroup (udg_Shark_Group[udg_Shark_MUI])
Unit - Unpause Shark_Caster[Shark_MUI]
Unit - Unpause Shark_Target[Shark_MUI]
-------- ---------------------------------------------------------------------------------------------------------------- --------
Set Shark_Caster[Shark_MUI] = No unit
Set Shark_Target[Shark_MUI] = No unit
Set Shark_Real2[Shark_MUI] = 0.00
Set Shark_Real[Shark_MUI] = 0.00
Else - Actions
Set Shark_Point1[Shark_MUI] = (Position of Shark_Caster[Shark_MUI])
Unit Group - Pick every unit in Shark_Group[Shark_MUI] and do (Actions)
Loop - Actions
Set Shark_Point2[Shark_MUI] = (Position of (Picked unit))
Set Shark_Point3[Shark_MUI] = (Shark_Point2[Shark_MUI] offset by 20.00 towards ((Angle from Shark_Point1[Shark_MUI] to Shark_Point2[Shark_MUI]) + 270.00) degrees)
Unit - Move (Picked unit) instantly to Shark_Point3[Shark_MUI]
Special Effect - Create a special effect at Shark_Point2[Shark_MUI] using Abilities\Weapons\FireBallMissile\FireBallMissile.mdl
Special Effect - Destroy (Last created special effect)
Custom script: call RemoveLocation (udg_Shark_Point2[udg_Shark_MUI])
Custom script: call RemoveLocation (udg_Shark_Point3[udg_Shark_MUI])
Set Shark_Real[Shark_MUI] = (Shark_Real[Shark_MUI] + 45.00)
Set Shark_Real2[Shark_MUI] = (Shark_Real2[Shark_MUI] - 1.00)
Custom script: call RemoveLocation (udg_Shark_Point1[udg_Shark_MUI])
Else - Actions
Set Shark_Spell_Index[Shark_Loop] = Shark_Spell_Index[Shark_Index]
Set Shark_Spell_Index[Shark_Index] = Shark_MUI
Set Shark_Index = (Shark_Index - 1)
Set Shark_Loop = (Shark_Loop - 1)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Shark_Index Equal to 0
Then - Actions
Trigger - Turn off (This trigger)
Else - Actions[/gui]