When a trigger encounters an error how is that handled? Does the trigger just crash and everything after the point of the crash is not executed, or does it throw the error and continue on with execution at the next step?
If it is just a few small errors; it will skip right over them, returning the error. If you have a huge wad of errors; occasionally it can prevent the entire trigger from running. I am not sure at what point, or what type of errors are namely to blame for an entire trigger stopping due to errors. I have encountered it many times though.
To figure out what the cause for your problems are, open the trigger debugger while you test. File-preferences-test: set to windowed mode (not fullscreen) and you can enable the debugger below it. When you start, a window will pop up that shows everything running in your game. When a function fails; it will tell you what function, and what line of code. This really helps narrow down problems.
Basically there are critical and non critical errors. Critical errors make it impossible for the specific thread to continue (Example: Array index out of bounds), while non critical errors might effect the outcome of the thread, but it can still continue, such as taking damage from a non existing unit.
Long story short: A thread will continue if it possibly can, and stop if it cant.
When a trigger encounters an error how is that handled? Does the trigger just crash and everything after the point of the crash is not executed, or does it throw the error and continue on with execution at the next step?
Thanks.
That is a good question! The answer is "BOTH".
If it is just a few small errors; it will skip right over them, returning the error. If you have a huge wad of errors; occasionally it can prevent the entire trigger from running. I am not sure at what point, or what type of errors are namely to blame for an entire trigger stopping due to errors. I have encountered it many times though.
To figure out what the cause for your problems are, open the trigger debugger while you test. File-preferences-test: set to windowed mode (not fullscreen) and you can enable the debugger below it. When you start, a window will pop up that shows everything running in your game. When a function fails; it will tell you what function, and what line of code. This really helps narrow down problems.
Skype: [email protected] Current Project: Custom Hero Arena! US: battlenet:://starcraft/map/1/263274 EU: battlenet:://starcraft/map/2/186418
Basically there are critical and non critical errors. Critical errors make it impossible for the specific thread to continue (Example: Array index out of bounds), while non critical errors might effect the outcome of the thread, but it can still continue, such as taking damage from a non existing unit.
Long story short: A thread will continue if it possibly can, and stop if it cant.
k thxs