- Joined
- Nov 3, 2013
- Messages
- 989
Makeing a spell where caster target enemy and other units in front of caster get pushed back while caster charge forward to target.
When I got to the point where I made it so that it should affect units in a cone PBAoE instead of circle PBAoE it seems like it's smaller and slightly tilted, somehow the entire cone is shifted more to the left of the caster.
I don't get how [Snippet below] fails.
When I got to the point where I made it so that it should affect units in a cone PBAoE instead of circle PBAoE it seems like it's smaller and slightly tilted, somehow the entire cone is shifted more to the left of the caster.
I don't get how [Snippet below] fails.

-
-------- Check if target is within min and max angle --------
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
-
(Angle from Point_Caster to TempPoint_Target[1]) Greater than or equal to (Real_CasterFaceing - 90.00)
-
(Angle from Point_Caster to TempPoint_Target[1]) Less than or equal to (Real_CasterFaceing + 90.00)
-
-
-
-
-
Ability Set Constants
-
Events
-
Map initialization
-
-
Conditions
-
Actions
-
-------- How Often Tirgger will execute --------
-
Set Real_PushFrequency = 0.05
-
-------- Maximum push distance --------
-
Set Real_PushMaxValue = 375.00
-
-------- Push distance per trigger execution --------
-
Set Real_PushDistancePerInterval = (Real_PushMaxValue x Real_PushFrequency)
-
-------- Make loop use variable in event --------
-
Trigger - Add to Ability Loop <gen> the event (Time - Every Real_PushFrequency seconds of game time)
-
-
-
Ability
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to dsf
-
-
Actions
-
-------- Caster Variables --------
-
Set Unit_Caster = (Triggering unit)
-
Set Point_Caster = (Position of Unit_Caster)
-
Animation - Change Unit_Caster's animation speed to 200.00% of its original speed
-
-------- Target Variables --------
-
Set Unit_Target = (Target unit of ability being cast)
-
Set TempPoint_Target[1] = (Position of Unit_Target)
-
-------- Angle Between Caster & Target --------
-
Set Real_CasterFaceing = (Angle from Point_Caster to TempPoint_Target[1])
-
Custom script: call RemoveLocation(udg_TempPoint_Target[1])
-
Trigger - Turn on Ability Loop <gen>
-
-
-
Ability Loop
-
Events
-
Conditions
-
Actions
-
-------- Set targets --------
-
Set UnitGroup_Targets = (Units within (Real_PushMaxValue - Real_PushDistancePerInterval) of Point_Caster matching (((Matching unit) Not equal to Unit_Caster) and ((Matching unit) Not equal to Unit_Target)))
-
-------- Move targets away from caster --------
-
Unit Group - Pick every unit in UnitGroup_Targets and do (Actions)
-
Loop - Actions
-
-------- Unit from group --------
-
Set TempUnit_Target = (Picked unit)
-
-------- Current X and Y --------
-
Set TempPoint_Target[1] = (Position of TempUnit_Target)
-
-------- Check if target is within min and max angle --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
-
(Angle from Point_Caster to TempPoint_Target[1]) Greater than or equal to (Real_CasterFaceing - 90.00)
-
(Angle from Point_Caster to TempPoint_Target[1]) Less than or equal to (Real_CasterFaceing + 90.00)
-
-
-
-
Then - Actions
-
-------- Future X and Y --------
-
Set TempPoint_Target[2] = (TempPoint_Target[1] offset by Real_PushDistancePerInterval towards (Angle from Point_Caster to TempPoint_Target[1]) degrees)
-
-------- Future X as real for script later --------
-
Set TempX_Target = (X of TempPoint_Target[2])
-
-------- Future Y as real for script later --------
-
Set TempY_Target = (Y of TempPoint_Target[2])
-
-------- Remove location memory leaks --------
-
Custom script: call RemoveLocation(udg_TempPoint_Target[1])
-
Custom script: call RemoveLocation(udg_TempPoint_Target[2])
-
-------- Change unit X and Y through custom script --------
-
Custom script: call SetUnitX(udg_TempUnit_Target, udg_TempX_Target)
-
Custom script: call SetUnitY(udg_TempUnit_Target, udg_TempY_Target)
-
Special Effect - Create a special effect attached to the origin of TempUnit_Target using Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
-
-
-------- Count to determine when spell is over --------
-
Set Real_Count = (Real_Count + 1.00)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Real_Count Equal to (2.70 / Real_PushFrequency)
-
-
Then - Actions
-
Set Real_Count = 0.00
-
Animation - Change Unit_Caster's animation speed to 100.00% of its original speed
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
-
-
Last edited: