- 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
-
If - Conditions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Events
-
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]))))
-
Conditions
-
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)))
-
Conditions
-
Multiple ConditionsAnd - All (Conditions) are true
-
Conditions
-
Multiple ConditionsOr - Any (Conditions) are true
-
Then - Actions
- Set HookBoo[HookInt2] = True
- Else - Actions
-
If - Conditions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (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)
-
Set TempL2 = (TempL offset by 40.00 towards (Facing of Hook[HookInt2]) degrees)
-
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])
-
If - Conditions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- Custom script: call RemoveLocation(udg_TempL)
-
Loop - Actions
-
Do Multiple ActionsFor each (Integer HookInt2) from 1 to HookIntCaster, do (Actions)
-
Else - Actions
- Set HookIntCaster = 0
- Custom script: call DestroyGroup(udg_HookG2)
- Custom script: set udg_HookG2 = CreateGroup()
- Trigger - Turn off Hook Loop <gen>
-
If - Conditions
-
Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Events