- Joined
- Jul 18, 2007
- Messages
- 111
-
DeafeningBlast
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to Deafening Blast
-
-
Actions
-
Set temp_point = (Position of (Casting unit))
-
Unit - Create 1 Dummy (projectile) for (Owner of (Casting unit)) at temp_point facing (Facing of (Casting unit)) degrees
-
Unit - Add a 10.00 second Generic expiration timer to (Last created unit)
-
Set unitDummyProjectile = (Last created unit)
-
Set pointAbilityTarget = (Target point of ability being cast)
-
Set unitCaster = (Casting unit)
-
Unit - Order unitDummyProjectile to move pointAbilityTarget
-
Trigger - Turn on DeafeningBlastP <gen>
-
Custom script: call RemoveLocation (udg_temp_point)
-
-
-
DeafeningBlastP
-
Events
-
Time - Every 0.03 seconds of game time
-
-
Conditions
-
Actions
-
Set tempDamage = (5 + (80 x (Level of Deafening Blast for unitCaster)))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
-
(Integer((Distance between pointAbilityTarget and (Position of unitDummyProjectile)))) Less than 15
-
(Integer((Distance between (Position of unitCaster) and (Position of unitDummyProjectile)))) Greater than 600
-
-
-
-
Then - Actions
-
Trigger - Turn off DeafeningBlastP <gen>
-
Unit - Remove unitDummyProjectile from the game
-
Skip remaining actions
-
-
Else - Actions
-
Do nothing
-
-
-
Unit - Move unitDummyProjectile instantly to ((Position of unitDummyProjectile) offset by 15.00 towards (Facing of unitDummyProjectile) degrees)
-
Set temp_group = (Units within 150.00 of (Position of unitDummyProjectile))
-
Unit Group - Pick every unit in temp_group and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Owner of (Picked unit)) is an enemy of (Owner of unitDummyProjectile)) Equal to True
-
-
Then - Actions
-
Set temp_point = (Position of (Picked unit))
-
Unit - Move (Picked unit) instantly to (temp_point offset by 15.00 towards (Facing of unitDummyProjectile) degrees)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Picked unit) has buff Deafening Blast ) Equal to False
-
-
Then - Actions
-
Unit - Create 1 Dummy (silenceCaster) for (Owner of unitDummyProjectile) at temp_point facing Default building facing (270.0) degrees
-
Set Blast = (Last created unit)
-
Unit - Set level of Silence (Blast) for Blast to (Level of Deafening Blast for unitCaster)
-
Unit - Order Blast to Neutral Dark Ranger - Silence temp_point
-
Unit - Cause Blast to damage (Picked unit), dealing (Real(tempDamage)) damage of attack type Spells and damage type Normal
-
Unit - Add a 1.00 second Generic expiration timer to Blast
-
Custom script: call DestroyGroup (udg_temp_group)
-
Custom script: call RemoveLocation (udg_temp_point)
-
-
Else - Actions
-
Do nothing
-
-
-
-
Else - Actions
-
Do nothing
-
-
-
-
-
-
-Credit to CokeMonkey11 for writing the ability.