- Joined
- Jun 2, 2009
- Messages
- 1,146
This trigger was overriding Spell Shield, so i have added these lines by myself.
- Wait 0.10 seconds
- ((Target unit of ability being cast) has buff Stunned (Pause)) Equal to True
-
Psychic Blast On
-
Events
- Unit - A unit Starts the effect of an ability
-
Conditions
- (Ability being cast) Equal to Psychic Blast //
-
Actions
- Wait 0.10 seconds
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in PB_Group) Equal to 0
- ((Target unit of ability being cast) has buff Stunned (Pause)) Equal to True
-
Then - Actions
- Trigger - Turn on Psychic Blast Loop <gen>
- Else - Actions
-
If - Conditions
- Set PB_Times = (PB_Times + 1)
- Set PB_HERO[PB_Times] = (Triggering unit)
- Set PB_Targ[PB_Times] = (Target unit of ability being cast)
- -------- ------------------------------------------------------------------------------------ --------
- Set PB_Point[1] = (Position of PB_Targ[PB_Times])
- Set PB_HeroP[1] = (Position of PB_HERO[PB_Times])
- Set PB_Angel[PB_Times] = (Angle from PB_HeroP[1] to PB_Point[1])
- -------- ------------------------------------------------------------------------ --------
- Set PB_Counter[PB_Times] = 0
- Set PB_Speed[PB_Times] = 20.00
- Set PB_Distance[PB_Times] = 400.00
- Set PB_Formula[PB_Times] = (PB_Distance[PB_Times] / PB_Speed[PB_Times])
- -------- -------------------------------------------------------------------------------- --------
- Set PB_Max_Distance[PB_Times] = PB_Distance[PB_Times]
- Set PB_Height[PB_Times] = ((Square root(PB_Distance[PB_Times])) / (PB_Distance[PB_Times] / 15.00))
- Set PB_Height_Formula[PB_Times] = (PB_Distance[PB_Times] x PB_Height[PB_Times])
- -------- --------------------------------------------------------------------- --------
- Unit - Add Storm Crow Form to PB_Targ[PB_Times]
- Unit - Remove Storm Crow Form from PB_Targ[PB_Times]
- Unit Group - Add PB_Targ[PB_Times] to PB_Group
- -------- ----------------------------------------------------------- --------
- Custom script: call RemoveLocation(udg_PB_Point[1])
- Custom script: call RemoveLocation(udg_PB_HeroP[1])
-
Events
-
Psychic Blast Loop
-
Events
- Time - Every 0.02 seconds of game time
- Conditions
-
Actions
-
For each (Integer PB) from 1 to PB_Times, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (PB_Targ[PB] is in PB_Group) Equal to True
-
Then - Actions
- Set PB_Distance[PB] = (PB_Distance[PB] - PB_Speed[PB])
- Set PB_Speed[PB] = (PB_Distance[PB] / PB_Formula[PB])
- Set PB_Speed[PB] = (PB_Speed[PB] + 0.50)
- -------- ---------------------------------------------------------------- --------
- Set PB_Point[1] = (Position of PB_Targ[PB])
- Set PB_Point[2] = (PB_Point[1] offset by PB_Speed[PB] towards PB_Angel[PB] degrees)
- Unit - Move PB_Targ[PB] instantly to PB_Point[2]
- -------- -------------------------------------------------------- --------
- Set PB_Fly[PB] = (PB_Fly[PB] + (180.00 / (PB_Max_Distance[PB] / PB_Speed[PB])))
- Set PB_Fly_Now[PB] = ((Sin(PB_Fly[PB])) x PB_Height_Formula[PB])
- Animation - Change PB_Targ[PB] flying height to PB_Fly_Now[PB] at 1000000000.00
- -------- ---------------------------------------------------- --------
- Set PB_Counter[PB] = (PB_Counter[PB] + 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- PB_Counter[PB] Equal to 8
-
Then - Actions
- Set PB_Counter[PB] = 0
- Special Effect - Create a special effect attached to the origin of PB_Targ[PB] using Abilities\Spells\Undead\OrbOfDeath\AnnihilationMissile.mdl
- Special Effect - Create a special effect attached to the origin of PB_Targ[PB] using Abilities\Spells\Undead\OrbOfDeath\OrbOfDeathMissile.mdl
- Special Effect - Destroy (Last created special effect)
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- PB_Counter[PB] Equal to 5
-
Then - Actions
- Special Effect - Create a special effect attached to the origin of PB_Targ[PB] using Abilities\Spells\Undead\OrbOfDeath\OrbOfDeathMissile.mdl
- Special Effect - Destroy (Last created special effect)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- -------- ------------------------------------------------------------------------------ --------
- Custom script: call RemoveLocation(udg_PB_Point[1])
- Custom script: call RemoveLocation(udg_PB_Point[2])
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- PB_Distance[PB] Less than or equal to 0.00
-
Then - Actions
- Unit Group - Remove PB_Targ[PB] from PB_Group
- Animation - Change PB_Targ[PB] flying height to (Default flying height of PB_Targ[PB]) at 1000000000.00
- Unit - Cause PB_HERO[PB] to damage PB_Targ[PB], dealing (60.00 x (Real((Level of Psychic Blast // for PB_HERO[(Player number of (Owner of (Triggering unit)))])))) damage of attack type Spells and damage type Magic
- Set PB_Targ[PB] = No unit
- Set PB_HERO[PB] = No unit
- -------- --------------------------------------------------------------- --------
- Set PB_Angel[PB] = 0.00
- Set PB_Counter[PB] = 0
- Set PB_Speed[PB] = 0.00
- Set PB_Distance[PB] = 0.00
- Set PB_Formula[PB] = 0.00
- Set PB_Max_Distance[PB] = 0.00
- Set PB_Height[PB] = 0.00
- Set PB_Height_Formula[PB] = 0.00
- Set PB_Fly[PB] = 0.00
- Set PB_Fly_Now[PB] = 0.00
- -------- ------------------------------------------------ --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in PB_Group) Equal to 0
-
Then - Actions
- Set PB_Times = 0
- Trigger - Turn off Psychic Blast Loop <gen>
- Else - Actions
-
If - Conditions
- Else - Actions
-
If - Conditions
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
For each (Integer PB) from 1 to PB_Times, do (Actions)
-
Events