- Joined
- Dec 18, 2010
- Messages
- 222
The spell seems to crash the game if too much of it is used at the same time. Any idea?
Spell as attached below.
-
Hook
-

Events
-


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

Conditions
-


(Ability being cast) Equal to (==) Fish
-
-

Actions
-


Set HookIntCaster = (HookIntCaster + 1)
-


Set TempL = (Target point of ability being cast)
-


Set HookI1[HookIntCaster] = (Level of Fish for (Triggering unit))
-


Set HookL1[HookIntCaster] = (Position of (Triggering unit))
-


Unit - Create 1 Hook1 for (Owner of (Triggering unit)) at HookL1[HookIntCaster] facing (Angle from HookL1[HookIntCaster] to TempL) degrees
-


Set Hook[HookIntCaster] = (Last created unit)
-


Unit Group - Add (Last created unit) to HookG2
-


Set Hook2[HookIntCaster] = (Triggering unit)
-


Set HookBoo[HookIntCaster] = False
-


Lightning - Create a Magic Leash lightning effect from source HookL1[HookIntCaster] to target HookL1[HookIntCaster]
-


Set HookLig[HookIntCaster] = (Last created lightning effect)
-


Custom script: call RemoveLocation(udg_TempL)
-



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




If - Conditions
-





(Hook Loop <gen> is on) Equal to (==) False
-
-




Then - Actions
-





Trigger - Turn on Hook Loop <gen>
-
-




Else - Actions
-
-
-
-
-
Hook Loop
-

Events
-


Time - Every 0.05 seconds of game time
-
-

Conditions
-

Actions
-


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



If - Conditions
-




(HookG2 is empty) Equal to (==) False
-
-



Then - Actions
-




Do Multiple ActionsFor each (Integer HookInt2) from 1 to HookIntCaster, do (Actions)
-





Loop - Actions
-






Set TempL = (Position of Hook[HookInt2])
-






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







If - Conditions
-








HookBoo[HookInt2] Equal to (==) False
-
-







Then - Actions
-








Set TempL2 = (TempL offset by 40.00 towards (Facing of Hook[HookInt2]) degrees)
-









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










If - Conditions
-











Multiple ConditionsOr - Any (Conditions) are true
-












Conditions
-













Multiple ConditionsAnd - All (Conditions) are true
-














Conditions
-















HookI1[HookInt2] Less than or equal to (<=) 4
-















(Distance between HookL1[HookInt2] and TempL2) Greater than or equal to (>=) (500.00 + (100.00 x (Real(HookI1[HookInt2]))))
-
-
-













Multiple ConditionsAnd - All (Conditions) are true
-














Conditions
-















HookI1[HookInt2] Greater than (>) 4
-















(Distance between HookL1[HookInt2] and TempL2) Greater than or equal to (>=) (900.00 + (50.00 x ((Real(HookI1[HookInt2])) - 4.00)))
-
-
-
-
-
-










Then - Actions
-











Set HookBoo[HookInt2] = True
-
-










Else - Actions
-
-
-








Unit - Move Hook[HookInt2] instantly to TempL2
-








Lightning - Move HookLig[HookInt2] to source HookL1[HookInt2] and target TempL2
-








Custom script: call RemoveLocation(udg_TempL2)
-
-







Else - Actions
-








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









If - Conditions
-










(Distance between HookL1[HookInt2] and TempL) Greater than (>) 50.00
-
-









Then - Actions
-










Set TempL2 = (TempL offset by 40.00 towards ((Facing of Hook[HookInt2]) - 180.00) degrees)
-










Unit - Move Hook[HookInt2] instantly to TempL2
-










Lightning - Move HookLig[HookInt2] to source HookL1[HookInt2] and target TempL2
-










Custom script: call RemoveLocation(udg_TempL2)
-
-









Else - Actions
-










Unit Group - Remove Hook[HookInt2] from HookG2
-










Unit - Remove Hook[HookInt2] from the game
-










Lightning - Destroy HookLig[HookInt2]
-










Custom script: call RemoveLocation(udg_HookL1[udg_HookInt2])
-
-
-
-
-






Custom script: call RemoveLocation(udg_TempL)
-
-
-
-



Else - Actions
-




Set HookIntCaster = 0
-




Custom script: call DestroyGroup(udg_HookG2)
-




Custom script: set udg_HookG2 = CreateGroup()
-




Trigger - Turn off Hook Loop <gen>
-
-
-
-


