- Joined
- May 13, 2009
- Messages
- 41
i am learning to create MUI spells it's work and going forward but when i create 2 caster and cast the spell together one caster is stuck...
This is the trigger
This is the trigger
-
Lightning Ball Begin
-

Events
-


Unit - A unit Starts the effect of an ability
-
-

Conditions
-


(Ability being cast) Equal to Lightning Path
-
-

Actions
-


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



If - Conditions
-




LP_Integer[1] Equal to 0
-
-



Then - Actions
-




Trigger - Turn on Lightning Ball Move <gen>
-
-



Else - Actions
-
-


Set LP_Integer[1] = (LP_Integer[1] + 1)
-


Set LP_Integer[2] = (LP_Integer[2] + 1)
-


Set LP_Caster[LP_Integer[2]] = (Triggering unit)
-


Set LP_Location[LP_Integer[2]] = (Position of LP_Caster[LP_Integer[2]])
-


Set LP_Location2[LP_Integer[2]] = (Target point of ability being cast)
-


Set LP_Angle[LP_Integer[2]] = (Angle from LP_Location[LP_Integer[2]] to LP_Location2[LP_Integer[2]])
-


Set LP_Tick[LP_Integer[2]] = 21
-


Unit - Create 1 Lightning Ball Dummy for (Owner of LP_Caster[LP_Integer[2]]) at LP_Location[LP_Integer[2]] facing LP_Angle[LP_Integer[2]] degrees
-


Set LP_Dummy[LP_Integer[2]] = (Last created unit)
-


Set LP_DummyPoint[LP_Integer[2]] = (Position of LP_Dummy[LP_Integer[2]])
-


Set LP_DummyGroup[LP_Integer[2]] = (Last created unit group)
-


Lightning - Create a Forked Lightning lightning effect from source LP_Location[LP_Integer[2]] to target LP_DummyPoint[LP_Integer[2]]
-


Set LP_Lightning[LP_Integer[2]] = (Last created lightning effect)
-


Custom script: call RemoveLocation ( udg_LP_Location2[udg_LP_Integer[2]] )
-


Custom script: call RemoveLocation ( udg_LP_DummyPoint[udg_LP_Integer[2]] )
-
-
-
Lightning Ball Move
-

Events
-


Time - Every 0.03 seconds of game time
-
-

Conditions
-

Actions
-


For each (Integer LP_Integer[3]) from 1 to LP_Integer[2], do (Actions)
-



Loop - Actions
-




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





If - Conditions
-






LP_Tick[LP_Integer[3]] Greater than 0
-
-





Then - Actions
-






Set LP_DummyPoint[LP_Integer[3]] = (Position of LP_Dummy[LP_Integer[3]])
-






Set LP_Location2[LP_Integer[3]] = (LP_DummyPoint[LP_Integer[3]] offset by 50.00 towards LP_Angle[LP_Integer[3]] degrees)
-






Special Effect - Create a special effect at LP_DummyPoint[LP_Integer[3]] using Abilities\Weapons\Bolt\BoltImpact.mdl
-






Special Effect - Destroy (Last created special effect)
-






Unit - Move LP_Dummy[LP_Integer[3]] instantly to LP_Location2[LP_Integer[3]]
-






Lightning - Move LP_Lightning[LP_Integer[3]] to source LP_Location[LP_Integer[3]] and target LP_DummyPoint[LP_Integer[3]]
-






Set LP_Strike[LP_Integer[3]] = (Units within 125.00 of LP_DummyPoint[LP_Integer[3]] matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an enemy
-






Unit Group - Pick every unit in LP_Strike[LP_Integer[3]] and do (Actions)
-







Loop - Actions
-








Unit - Create 1 Lightning Ball Dummy Slower for (Owner of LP_Caster[LP_Integer[3]]) at LP_DummyPoint[LP_Integer[3]] facing LP_Angle[LP_Integer[3]] degrees
-








Unit - Hide (Last created unit)
-








Unit - Order (Last created unit) to Human Sorceress - Slow (Picked unit)
-








Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
-








Special Effect - Create a special effect at (Position of (Picked unit)) using Abilities\Weapons\Bolt\BoltImpact.mdl
-








Special Effect - Destroy (Last created special effect)
-








Unit - Cause LP_Caster[LP_Integer[3]] to damage (Picked unit), dealing (75.00 x (Real((Level of Lightning Path for LP_Caster[LP_Integer[3]])))) damage of attack type Spells and damage type Normal
-








Unit Group - Add (Picked unit) to LP_NonStrike[LP_Integer[3]]
-
-
-






Custom script: call RemoveLocation ( udg_LP_DummyPoint[udg_LP_Integer[3]] )
-






Custom script: call RemoveLocation ( udg_LP_Location2[udg_LP_Integer[3]] )
-






Custom script: call DestroyGroup ( udg_LP_Strike[udg_LP_Integer[3]] )
-






Set LP_Tick[LP_Integer[3]] = (LP_Tick[LP_Integer[3]] - 1)
-
-





Else - Actions
-
-




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





If - Conditions
-






LP_Tick[LP_Integer[3]] Equal to 0
-
-





Then - Actions
-






Unit Group - Remove LP_Dummy[LP_Integer[3]] from LP_DummyGroup[LP_Integer[3]]
-






Unit - Kill LP_Dummy[LP_Integer[3]]
-






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







If - Conditions
-








(LP_DummyGroup[LP_Integer[3]] is empty) Equal to True
-
-







Then - Actions
-








Set LP_Integer[1] = (LP_Integer[1] - 1)
-








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









If - Conditions
-










LP_Integer[1] Equal to 0
-
-









Then - Actions
-










Set LP_Integer[2] = 0
-










Lightning - Destroy LP_Lightning[LP_Integer[3]]
-










Unit Group - Remove all units from LP_NonStrike[LP_Integer[3]]
-










Trigger - Turn off (This trigger)
-
-









Else - Actions
-
-
-







Else - Actions
-
-
-





Else - Actions
-
-
-
-
-

