So I've been having major issues with my map where it would randomly crash. After countless tests, I've located it in 2 very similar spells within my map. They both involve the use of a morph ability. The issue is, the crashes happen randomly when the hero is ingame AND the crashing spell is active.
tl:dr How does this crash? How can I improve it/stop it from crashing?
The dummy spell is based on Bear Form.
tl:dr How does this crash? How can I improve it/stop it from crashing?
The dummy spell is based on Bear Form.
-
Red Lightning
-
Events
-
Unit - A unit Is issued an order with no target
-
-
Conditions
-
(Issued order) Equal to (Order(bearform))
-
-
Actions
-
Set Red_Lightning_Loop_Max = (Red_Lightning_Loop_Max + 1)
-
Set Red_Lightning_C[Red_Lightning_Loop_Max] = (Ordered unit)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Red_Lightning_Loop_Max Equal to 1
-
-
Then - Actions
-
Trigger - Turn on Red Lightning Loop <gen>
-
-
Else - Actions
-
-
-
-
Red Lightning Loop
-
Events
-
Time - Every 0.20 seconds of game time
-
-
Conditions
-
Actions
-
For each (Integer Red_Lightning_Loop) from 1 to Red_Lightning_Loop_Max, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Mana of Red_Lightning_C[Red_Lightning_Loop]) Less than 1.00
-
-
Then - Actions
-
Unit - Order Red_Lightning_C[Red_Lightning_Loop] to Night Elf Druid Of The Claw - Night Elf Form
-
Unit - Remove Red Lightning buff from Red_Lightning_C[Red_Lightning_Loop]
-
Set Red_Lightning_C[Red_Lightning_Loop] = Red_Lightning_C[Red_Lightning_Loop_Max]
-
Set Red_Lightning_Loop = (Red_Lightning_Loop - 1)
-
Set Red_Lightning_Loop_Max = (Red_Lightning_Loop_Max - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Red_Lightning_Loop_Max Equal to 0
-
-
Then - Actions
-
Trigger - Turn off Red Lightning Loop <gen>
-
-
Else - Actions
-
-
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
(Unit-type of Red_Lightning_C[Red_Lightning_Loop]) Not equal to Guard of Renewal (Red Lightning)
-
-
Then - Actions
-
Unit - Remove Red Lightning buff from Red_Lightning_C[Red_Lightning_Loop]
-
Set Red_Lightning_C[Red_Lightning_Loop] = Red_Lightning_C[Red_Lightning_Loop_Max]
-
Set Red_Lightning_Loop = (Red_Lightning_Loop - 1)
-
Set Red_Lightning_Loop_Max = (Red_Lightning_Loop_Max - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Red_Lightning_Loop_Max Equal to 0
-
-
Then - Actions
-
Trigger - Turn off Red Lightning Loop <gen>
-
-
Else - Actions
-
-
-
Else - Actions
-
-
-
-
-
-
-