exit will stop the execution of the current script. If it's called from inside a script that was called using call it will resume execution from the line under the call statement. If the exit is used from the main script, the script will start over.
event macro 1 0 %pet %command if %pet = all exit event macro 1 0 %pet follow me
EDIT on 23 jan 2008: As you can see, there is no possibility to return a value with exit as you would do when returning from a subroutine.
Here's a way to get around this "problem":
set %a 0 call a.txt display ok a = %a halt
called file (a.txt)
set %a Hello,_I_am_the_variable_%a_set_in_a.txt exit
- Flow control commands allow scripts to make decisions based on the evaluation of boolean expressions.
|break||Jumps to first statement outside of loop|
|call||Transfers execution to another script file|
|continue||Jumps execution of a loop to next iteration|
|exit||Exits a called script|
|for||Creates a counting loop|
|gosub||Transfers execution to the matching sub|
|goto||Jumps to another part of the script given by a label|
|halt||Stops the script|
|if||Executes code based on the evaluation of an expression|
|pause||Temporarily stops the execution of the current script|
|repeat..until||Creates a loop that checks condition after execution|
|return||Returns from a sub|
|stop||Ends the script|
|while||Creates a loop that checks condition before execution|