- Joined
- Nov 2, 2008
- Messages
- 579
Hey guys!
So I was wondering, why this spell isn't fully MUI. This is just an example spell i made, so i tried to keep it short. The problem is when an instance of the spell ends, the loop trigger is turned off and all instances end. I've literally tried everything -.-
http://www.hiveworkshop.com/forums/pastebin.php?id=2mo5z2 -> Test Map
So I was wondering, why this spell isn't fully MUI. This is just an example spell i made, so i tried to keep it short. The problem is when an instance of the spell ends, the loop trigger is turned off and all instances end. I've literally tried everything -.-
-
Holy Shock
-
Events
-
Unit - A unit Starts the effect of an ability
-
-
Conditions
-
(Ability being cast) Equal to (==) Holy Shock
-
-
Actions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Temp_Index[1] Equal to (==) 0
-
-
Then - Actions
-
Trigger - Turn on Holy Shock Loop <gen>
-
-
Else - Actions
-
-
Set Temp_Index[1] = (Temp_Index[1] + 1)
-
Set Temp_Index[2] = (Temp_Index[2] + 1)
-
Set Temp_Real3[Temp_Index[2]] = (1000.00 x (Real((Level of Holy Shock for (Triggering unit)))))
-
Set Temp_Unit[Temp_Index[2]] = (Triggering unit)
-
Set Temp_Real4[Temp_Index[2]] = 150.00
-
Set Temp_Real5[Temp_Index[2]] = 40.00
-
Set Temp_Real2[Temp_Index[2]] = 0.00
-
Set Temp_Real[Temp_Index[2]] = 0.00
-
Set Temp_Integer[Temp_Index[2]] = 0
-
-
-
Holy Shock Loop
-
Events
-
Time - Every 0.20 seconds of game time
-
-
Conditions
-
Actions
-
Do Multiple ActionsFor each (Integer Temp_Index[3]) from 1 to Temp_Index[2], do (Actions)
-
Loop - Actions
-
Set Temp_Integer[Temp_Index[3]] = (Temp_Integer[Temp_Index[3]] + 1)
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Temp_Integer[Temp_Index[3]] Less than (<) (Integer(Temp_Real5[Temp_Index[3]]))
-
-
Then - Actions
-
Set Temp_Real[Temp_Index[3]] = (Temp_Real[Temp_Index[3]] + 25.00)
-
Set Temp_Real2[Temp_Index[3]] = (Temp_Real2[Temp_Index[3]] + 20.00)
-
Set Temp_Point[Temp_Index[2]] = (Position of Temp_Unit[Temp_Index[3]])
-
Set Temp_Point1[Temp_Index[3]] = (Temp_Point[Temp_Index[3]] offset by Temp_Real2[Temp_Index[3]] towards Temp_Real[Temp_Index[3]] degrees)
-
Special Effect - Create a special effect at Temp_Point1[Temp_Index[3]] using Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl
-
Special Effect - Destroy (Last created special effect)
-
Set Temp_Group[Temp_Index[3]] = (Units within Temp_Real4[Temp_Index[3]] of Temp_Point1[Temp_Index[3]])
-
Unit Group - Pick every unit in Temp_Group[Temp_Index[3]] and do (Actions)
-
Loop - Actions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Picked unit) is A structure) Equal to (==) False
-
((Picked unit) is alive) Equal to (==) True
-
((Picked unit) belongs to an enemy of (Owner of Temp_Unit[Temp_Index[3]])) Equal to (==) True
-
-
Then - Actions
-
Unit - Cause Temp_Unit[Temp_Index[3]] to damage (Picked unit), dealing Temp_Real3[Temp_Index[3]] damage of attack type Chaos and damage type Normal
-
Special Effect - Create a special effect attached to the origin of (Picked unit) using Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl
-
Special Effect - Destroy (Last created special effect)
-
-
Else - Actions
-
-
-
-
Custom script: call DestroyGroup( udg_Temp_Group[ udg_Temp_Index[3]] )
-
Custom script: call RemoveLocation( udg_Temp_Point[ udg_Temp_Index[3]] )
-
Custom script: call RemoveLocation( udg_Temp_Point1[ udg_Temp_Index[3]] )
-
-
Else - Actions
-
Set Temp_Index[1] = (Temp_Index[1] - 1)
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Temp_Index[1] Equal to (==) 0
-
-
Then - Actions
-
Trigger - Turn off (This trigger)
-
Set Temp_Index[2] = 0
-
-
Else - Actions
-
-
-
-
-
-
-
-
-