I tried to make Chain Lightning Spell by my self to add more effects (slow, stun etc) but i got some errors:
- Lightning Effect only affect to primary target, secondary, third target doesnt have it
Fixed the bounce damage and lightning on first, secondary units problem, now lightning between 2nd and 3rd unit wont happen
My triggers:
- Lightning Effect only affect to primary target, secondary, third target doesnt have it
Fixed the bounce damage and lightning on first, secondary units problem, now lightning between 2nd and 3rd unit wont happen
My triggers:
-
Chain Lightning
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to (==) Chain Lightning
-
-
Actions
-
Set ChainLightning_Caster = (Casting unit)
-
Set ChainLightning_Hit[1] = (Target unit of ability being cast)
-
Set ChainLightning_Point[0] = (Position of ChainLightning_Caster)
-
Set ChainLightning_Point[1] = (Position of (Target unit of ability being cast))
-
Unit - Cause ChainLightning_Caster to damage ChainLightning_Hit[1], dealing 100.00 damage of attack type Chaos and damage type Universal
-
Special Effect - Create a special effect attached to the origin of ChainLightning_Hit[1] using Abilities\Weapons\Bolt\BoltImpact.mdl
-
Special Effect - Destroy (Last created special effect)
-
Lightning - Create a Chain Lightning - Primary lightning effect from source ChainLightning_Point[0] to target ChainLightning_Point[1]
-
Set ChainLightning_SFX[1] = (Last created lightning effect)
-
Trigger - Turn on Chain Lightning Bounce <gen>
-
-
Chain Lightning Bounce
-
Events
-
Time - Every 0.30 seconds of game time
-
-
Conditions
-
Actions
-
Set ChainLightning_Group[1] = (Units within 400.00 of (Position of ChainLightning_Hit[1]) matching (((((Matching unit) is A structure) Not equal to (!=) True) and ((Matching unit) Not equal to (!=) ChainLightning_Hit[1])) and ((((Matching unit) is alive) Equal to (==) True) and (((Matchin
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in ChainLightning_Group[1]) Equal to (==) 0
-
-
Then - Actions
-
Lightning - Destroy ChainLightning_SFX[1]
-
Unit Group - Remove all units from ChainLightning_Group[1]
-
Custom script: call DestroyGroup (udg_ChainLightning_Group[1])
-
Custom script: call RemoveLocation(udg_ChainLightning_Point[1])
-
Set ChainLightning_Caster = No unit
-
Set ChainLightning_Hit[1] = No unit
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
Unit Group - Pick every unit in (Random 1 units from ChainLightning_Group[1]) and do (Actions)
-
Loop - Actions
-
Lightning - Destroy ChainLightning_SFX[1]
-
Set ChainLightning_Hit[2] = (Picked unit)
-
Set ChainLightning_Point[2] = (Position of (Picked unit))
-
Unit - Cause ChainLightning_Caster to damage ChainLightning_Hit[2], dealing 100.00 damage of attack type Chaos and damage type Universal
-
Special Effect - Create a special effect attached to the origin of ChainLightning_Hit[2] using Abilities\Weapons\Bolt\BoltImpact.mdl
-
Special Effect - Destroy (Last created special effect)
-
Lightning - Create a Chain Lightning - Secondary lightning effect from source ChainLightning_Point[1] to target ChainLightning_Point[2]
-
Set ChainLightning_SFX[2] = (Last created lightning effect)
-
Trigger - Turn on Chain Lightning Bounce 2 <gen>
-
Trigger - Turn off (This trigger)
-
-
-
-
-
-
-
Chain Lightning Bounce 2
-
Events
-
Time - Every 0.50 seconds of game time
-
-
Conditions
-
Actions
-
Set ChainLightning_Group[2] = (Units within 400.00 of (Position of ChainLightning_Hit[2]) matching (((((Matching unit) is A structure) Not equal to (!=) True) and (((Matching unit) Not equal to (!=) ChainLightning_Hit[1]) and ((Matching unit) Not equal to (!=) ChainLightning_Hit[2]))) and
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Number of units in ChainLightning_Group[2]) Equal to (==) 0
-
-
Then - Actions
-
Unit Group - Remove all units from ChainLightning_Group[2]
-
Custom script: call DestroyGroup (udg_ChainLightning_Group[1])
-
Custom script: call DestroyGroup (udg_ChainLightning_Group[2])
-
Custom script: call RemoveLocation(udg_ChainLightning_Point[1])
-
Custom script: call RemoveLocation(udg_ChainLightning_Point[2])
-
Set ChainLightning_Caster = No unit
-
Set ChainLightning_Caster = No unit
-
Set ChainLightning_Hit[1] = No unit
-
Set ChainLightning_Hit[2] = No unit
-
Lightning - Destroy ChainLightning_SFX[2]
-
Trigger - Turn off (This trigger)
-
-
Else - Actions
-
Unit Group - Pick every unit in (Random 1 units from ChainLightning_Group[2]) and do (Actions)
-
Loop - Actions
-
Lightning - Destroy ChainLightning_SFX[2]
-
Set ChainLightning_Hit[3] = (Picked unit)
-
Set ChainLightning_Point[3] = (Position of (Picked unit))
-
Unit - Cause ChainLightning_Caster to damage ChainLightning_Hit[3], dealing 100.00 damage of attack type Chaos and damage type Universal
-
Special Effect - Create a special effect attached to the origin of ChainLightning_Hit[3] using Abilities\Weapons\Bolt\BoltImpact.mdl
-
Lightning - Create a Chain Lightning - Secondary lightning effect from source ChainLightning_Point[2] to target ChainLightning_Point[3]
-
Lightning - Destroy (Last created lightning effect)
-
-------- REMOVE POINTS AND GROUPS --------
-
Unit Group - Remove all units from ChainLightning_Group[2]
-
Special Effect - Destroy (Last created special effect)
-
Custom script: call DestroyGroup (udg_ChainLightning_Group[1])
-
Custom script: call DestroyGroup (udg_ChainLightning_Group[2])
-
Custom script: call DestroyGroup (udg_ChainLightning_Group[3])
-
Custom script: call RemoveLocation(udg_ChainLightning_Point[1])
-
Custom script: call RemoveLocation(udg_ChainLightning_Point[2])
-
Custom script: call RemoveLocation(udg_ChainLightning_Point[3])
-
Set ChainLightning_Caster = No unit
-
Set ChainLightning_Hit[1] = No unit
-
Set ChainLightning_Hit[2] = No unit
-
Set ChainLightning_Hit[3] = No unit
-
Trigger - Turn off (This trigger)
-
-
-
-
-
-
Last edited: