This spell is supposed to be a channeled invulnerability. The casting paladin channels for up to 10 seconds, making himself and the target invulnerable.
Problem is, the first time it is cast on a particular unit, the lightning effect moves between the caster and the middle of the map instead of the caster and the target. Any casts after this first time on a target work as intended.
The problem seems to happen in the "THEN" section of the second trigger.
Problem is, the first time it is cast on a particular unit, the lightning effect moves between the caster and the middle of the map instead of the caster and the target. Any casts after this first time on a target work as intended.
The problem seems to happen in the "THEN" section of the second trigger.
-
Sanctified Bond 01
-
Events
- Unit - A unit Starts the effect of an ability
-
Conditions
- (Ability being cast) Equal to PAL-4 Sanctified Bond
-
Actions
- Set temp_point = (Position of (Triggering unit))
- Unit - Create 1 D.PAL-2 Sanctified Bond for (Owner of (Triggering unit)) at temp_point facing Default building facing degrees
- Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
- Unit - Order (Last created unit) to Human Priest - Inner Fire (Triggering unit)
- Set temp_point2 = (Position of (Target unit of ability being cast))
- Unit - Create 1 D.PAL-2 Sanctified Bond for (Owner of (Triggering unit)) at temp_point2 facing Default building facing degrees
- Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
- Unit - Order (Last created unit) to Human Priest - Inner Fire (Target unit of ability being cast)
- Lightning - Create a Spirit Link lightning effect from source temp_point to target temp_point2
- Custom script: call RemoveLocation(udg_temp_point)
- Custom script: call RemoveLocation(udg_temp_point2)
- Hashtable - Save Handle Of(Target unit of ability being cast) as (Key target) of (Key (Triggering unit)) in H_SanctifiedBond
- Hashtable - Save Handle Of(Last created lightning effect) as (Key light) of (Key (Triggering unit)) in H_SanctifiedBond
- Unit Group - Add (Triggering unit) to G_SanctifiedBond
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Sanctified Bond 02 <gen> is on) Equal to False
-
Then - Actions
- Trigger - Turn on Sanctified Bond 02 <gen>
- Else - Actions
-
If - Conditions
-
Events
-
Sanctified Bond 02
-
Events
- Time - Every 0.03 seconds of game time
- Conditions
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in G_SanctifiedBond) Greater than 0
-
Then - Actions
-
Unit Group - Pick every unit in G_SanctifiedBond and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Current order of (Picked unit)) Equal to (Order(divineshield))
-
Then - Actions
- Set temp_point = (Position of (Picked unit))
- Set temp_point2 = (Position of (Load (Key target) of (Key (Picked unit)) in H_SanctifiedBond))
- Lightning - Move (Load (Key light) of (Key (Picked unit)) in H_SanctifiedBond) to source temp_point and target temp_point2
- Custom script: call RemoveLocation(udg_temp_point)
- Custom script: call RemoveLocation(udg_temp_point2)
-
Else - Actions
- Unit - Remove ~Sanctified Bond (Paladin) buff from (Picked unit)
- Unit - Remove ~Sanctified Bond (Paladin) buff from (Load (Key target) of (Key (Picked unit)) in H_SanctifiedBond)
- Lightning - Destroy (Load (Key light) of (Key (Picked unit)) in H_SanctifiedBond)
- Hashtable - Clear all child hashtables of child (Key (Picked unit)) in H_SanctifiedBond
- Unit Group - Remove (Picked unit) from G_SanctifiedBond
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in G_SanctifiedBond and do (Actions)
-
Else - Actions
- Trigger - Turn off (This trigger)
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Events