Labels can have special handling of flags as they pass through the label by setting a special format "expression".
If you write an "expression" in the label, you must start the label name with a ':' (colon).
The expression consists of a flag for the operation target, "
operator (operator)" that indicates what kind of processing is performed on the target, and "
operand > "(Some operators have no operands).
The flag to be operated is specified by enclosing the flag number (0 to 15) with '[' ']' (brackets). If the operand is a numeric value, describe the numeric value as it is, and if you want to specify another flag, specify it by enclosing the flag number (0 to 15) with '[' ']' (brackets).
There are the following types of operators.
- =
- Assigns the value of the operand to the value of the flag
- +=
- Adds the value of the operand to the value of the flag
- -=
- Subtract the value of the operand from the value of the flag
- ++
- Increment the value of the flag by one
- --
- Decrease flag value by one
In either case, the value range of the flag is always 0-9999. If it is less than 0, it is corrected to 0, and if it is more than 9999, it is corrected to 9999.
Example:
:[0]=1
Assign 1 to the value of flag 0
:[1]=[0]
Substitute the value of flag 0 for the value of flag 1
:[1]+=3
Add 3 to the value of the first flag
:[0]++
Increment the value of the first flag by one
Note
If multiple labels are in the same position, the order of execution is undefined.