- Joined
- Feb 17, 2013
- Messages
- 1,335
The spell is very nice,. I want this, but even pathing blockers can destroy by axes . . . .
BT On

Events


Unit - A unit Starts the effect of an ability

Conditions


(Ability being cast) Equal to Blade

Actions


Set BT_Point[0] = (Position of (Casting unit))


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


-------- ------------------------------------------------------------------------------------------------------------- --------


-------- ------------------------------------------------------------------------------------------------------------- --------


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



Loop - Actions




-------- ------------------------------------------------------------------------------------------------------------- --------




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





If - Conditions






BT_Times Equal to 0





Then - Actions






Trigger - Turn on BT Loop <gen>





Else - Actions




Set BT_Times = (BT_Times + 1)




Set BT_Loop = (BT_Loop + 1)




Set BT_Off[BT_Times] = True




-------- ------------------------------------------------------------------------------------------------------------- --------




-------- ------------------------------------------------------------------------------------------------------------- --------




Set BT_Hero[BT_Times] = (Casting unit)




Set BT_Part[BT_Times] = 0




-------- ------------------------------------------------------------------------------------------------------------- --------




Set BT_Main_Point[BT_Times] = (Target point of ability being cast)




Set BT_Angle[BT_Times] = (Angle from BT_Point[0] to BT_Point[1])




Set BT_Positive[BT_Times] = B1T




Set BT_Max_Distance[BT_Times] = (Distance between BT_Point[0] and BT_Point[1])




Set BT_Take_Dist[BT_Times] = 0.00




-------- ------------------------------------------------------------------------------------------------------------- --------




-------- ------------------------------------------------------------------------------------------------------------- --------




Set BT_Speed[BT_Times] = ((Square root(BT_Max_Distance[BT_Times])) / 2.20)




Set BT_Offset[BT_Times] = ((10.00 / (Square root(BT_Max_Distance[BT_Times]))) x 500.00)




-------- ------------------------------------------------------------------------------------------------------------- --------




-------- ------------------------------------------------------------------------------------------------------------- --------




Unit - Create 1 Dummy_For_Map for (Owner of BT_Hero[BT_Times]) at BT_Point[0] facing Default building facing degrees




Set BT_Dummy[BT_Times] = (Last created unit)




Special Effect - Create a special effect attached to the chest of (Last created unit) using Abilities\Weapons\RexxarMissile\RexxarMissile.mdl




Set BT_Special[BT_Times] = (Last created special effect)


-------- ------------------------------------------------------------------------------------------------------------- --------


-------- ------------------------------------------------------------------------------------------------------------- --------


Custom script: call RemoveLocation(udg_BT_Point[0])


Custom script: call RemoveLocation(udg_BT_Point[1])
BT Loop

Events


Time - Every 0.02 seconds of game time

Conditions

Actions


For each (Integer BT2) from 1 to BT_Times, do (Actions)



Loop - Actions




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





If - Conditions






BT_Off[BT2] Equal to True





Then - Actions






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







If - Conditions








BT_Take_Dist[BT2] Greater than or equal to BT_Max_Distance[BT2]







Then - Actions








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









If - Conditions










BT_Part[BT2] Equal to 1









Then - Actions










Set BT_Off[BT2] = False










Set BT_Loop = (BT_Loop - 1)










Custom script: call RemoveLocation(udg_BT_Main_Point[udg_BT2])










-------- ------------------------------------------------------------------------------------------------------------- --------










Set BT_Point[4] = (Position of BT_Dummy[BT2])










Special Effect - Create a special effect at BT_Point[4] using Abilities\Weapons\GryphonRiderMissile\GryphonRiderMissileTarget.mdl










Special Effect - Destroy (Last created special effect)










Custom script: call RemoveLocation(udg_BT_Point[4])










Special Effect - Destroy BT_Special[BT2]










Unit - Add a 0.01 second Generic expiration timer to BT_Dummy[BT2]










-------- ------------------------------------------------------------------------------------------------------------- --------










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











If - Conditions












BT_Loop Equal to 0











Then - Actions












Set BT_Times = 0












Trigger - Turn off BT Loop <gen>











Else - Actions









Else - Actions










Set BT_Part[BT2] = 1










Set BT_Take_Dist[BT2] = 0.00







Else - Actions








-------- ------------------------------------------------------------------------------------------------------------- --------








Set BT_Equation[BT2] = (((4.00 x BT_Offset[BT2]) / BT_Max_Distance[BT2]) x ((BT_Max_Distance[BT2] - BT_Take_Dist[BT2]) x (BT_Take_Dist[BT2] / BT_Max_Distance[BT2])))








-------- ------------------------------------------------------------------------------------------------------------- --------








-------- ------------------------------------------------------------------------------------------------------------- --------








Set BT_Point[2] = (Position of BT_Hero[BT2])








Set BT_Max_Distance[BT2] = (Distance between BT_Point[2] and BT_Main_Point[BT2])








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









If - Conditions










BT_Part[BT2] Equal to 1









Then - Actions










Set BT_Angle[BT2] = (Angle from BT_Main_Point[BT2] to BT_Point[2])









Else - Actions










Set BT_Angle[BT2] = (Angle from BT_Point[2] to BT_Main_Point[BT2])








Set BT_Point[3] = (Position of BT_Dummy[BT2])








-------- ------------------------------------------------------------------------------------------------------------- --------








-------- ------------------------------------------------------------------------------------------------------------- --------








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









If - Conditions










BT_Part[BT2] Equal to 1









Then - Actions










Set BT_Point[4] = (BT_Main_Point[BT2] offset by BT_Take_Dist[BT2] towards BT_Angle[BT2] degrees)









Else - Actions










Set BT_Point[4] = (BT_Point[2] offset by BT_Take_Dist[BT2] towards BT_Angle[BT2] degrees)








-------- ------------------------------------------------------------------------------------------------------------- --------








-------- ------------------------------------------------------------------------------------------------------------- --------








-------- ------------------------------------------------------------------------------------------------------------- --------








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









If - Conditions










BT_Positive[BT2] Equal to 1









Then - Actions










Set BT_Point[5] = (BT_Point[4] offset by BT_Equation[BT2] towards (BT_Angle[BT2] + 90.00) degrees)









Else - Actions










Set BT_Point[5] = (BT_Point[4] offset by BT_Equation[BT2] towards (BT_Angle[BT2] - 90.00) degrees)








Destructible - Pick every destructible within 125.00 of BT_Point[5] and do (Destructible - Kill (Picked destructible))








-------- ------------------------------------------------------------------------------------------------------------- --------








-------- ------------------------------------------------------------------------------------------------------------- --------








Unit - Move BT_Dummy[BT2] instantly to BT_Point[5], facing (Angle from BT_Point[3] to BT_Point[5]) degrees








Custom script: call RemoveLocation(udg_BT_Point[2])








Custom script: call RemoveLocation(udg_BT_Point[3])








Custom script: call RemoveLocation(udg_BT_Point[4])








Custom script: call RemoveLocation(udg_BT_Point[5])








-------- ------------------------------------------------------------------------------------------------------------- --------








-------- ------------------------------------------------------------------------------------------------------------- --------








Set BT_Take_Dist[BT2] = (BT_Take_Dist[BT2] + BT_Speed[BT2])





Else - Actions