goto

From Bohemia Interactive Community
Revision as of 12:37, 23 May 2006 by Planck (talk | contribs)
Jump to navigation Jump to search


goto label


Operand types:

label: String

Type of returned value:

Nothing

Description:

In script only: Go to given label.
Note: String argument is used here.
Be sure to use double quotes around label name in goto.

Define the label with #.

Example:

goto "Skip"
. these lines
. will be
. skipped
#Skip


Comments:

The search for labels always begins at the top of the script so that if there are multiple occurrences of a label the first occurrence will always be the one found.

Labels are not case sensitive, and for the avoidance of doubt later versions of Flashpoint do not require that loops using a goto contain a delay.

Whilst it is not required to include a delay in a loop, a loop without a delay can cause the script to slow down the game a lot, as the loop will be executed many times before game engine interrupts the script.

Unless you really want the loop to execute multiple times during a frame, you should include a small delay.

Deciding whether to use a script with a loop or a trigger or an @ statement is a complicated matter and should be subject to experimentation.

As there is clearly some confusion over whether labels are case sensitive or not I encourage doubters to run the following script:

goto "SKIP"
hint "Labels are case sensitive"
exit
#skip
hint "Labels are not case sensitive"
exit