Hi, I've been struggling with making a simple (single target) taunt spell and now I've got something that is working but I don't think this is an optimal solution. Does anyone else have any better suggestion to how I could do this?
-
Illi Taunt start
-
Events
-
Conditions
-
Actions
-
Set target = (Target unit of ability being cast)
-
Unit - Order target to Right-Click Lord of the Seven 0141 <gen>
-
Special Effect - Create a special effect attached to the overhead of target using Abilities\Spells\Undead\Possession\PossessionCaster.mdl
-
Hashtable - Save 100 as 0 of (Key (Target unit of ability being cast)) in Illi_tauntHash
-
Hashtable - Save Handle Of(Last created special effect) as 1 of (Key (Target unit of ability being cast)) in Illi_tauntHash
-
Unit Group - Add target to Illi_tauntGrp
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Illi Taunt periodic <gen> is on) Equal to False
-
-
Then - Actions
-
Trigger - Turn on Illi Taunt periodic <gen>
-
-
Else - Actions
-
-
-
-
Illi Taunt periodic
-
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 Illi_tauntGrp) Greater than 0
-
-
Then - Actions
-
Unit Group - Pick every unit in Illi_tauntGrp and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
((Picked unit) is alive) Equal to True
-
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Load 0 of (Key (Picked unit)) from Illi_tauntHash) Greater than 0
-
-
Then - Actions
-
Hashtable - Save ((Load 0 of (Key (Picked unit)) from Illi_tauntHash) - 1) as 0 of (Key (Picked unit)) in Illi_tauntHash
-
-
Else - Actions
-
Set tempLoc = (Position of (Picked unit))
-
Unit - Order (Picked unit) to Right-Click tempLoc
-
Special Effect - Destroy (Load 1 of (Key (Picked unit)) in Illi_tauntHash)
-
Custom script: call RemoveLocation(udg_tempLoc)
-
Unit Group - Remove (Picked unit) from Illi_tauntGrp
-
Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Illi_tauntHash
-
-
-
-
Else - Actions
-
Special Effect - Destroy (Load 1 of (Key (Picked unit)) in Illi_tauntHash)
-
Unit Group - Remove (Picked unit) from Illi_tauntGrp
-
Hashtable - Clear all child hashtables of child (Key (Picked unit)) in Illi_tauntHash
-
-
-
-
-
-
Else - Actions
-
Trigger - Turn off (This trigger)
-
-
-
-
Last edited: