You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
vore-rpg/script.md

5.4 KiB

# (comment)

A comment. Comments must always be at the start (barring indentation) of their line; inline comments are not allowed.

!> (text with Handlebars expansions)

Clears the NVL mode buffer and prints (text with Handlebars expansions) as a NVL mode message, passing it through the Handlebars parser in order to apply variables. (The Handlebars parser also handles formatting.) The script does not advance until the user presses the Advance button, unless an auto-advance character is in the text. Ignored if currently in battle.

> (text with Handlebars expansions)

Prints (text with Handlebars expansions) as a NVL mode message appended to the current NVL mode buffer. The script does not advance until the user presses the Advance button, unless an auto-advance character is in the text. Ignored if currently in battle.

[(character)] (text with Handlebars expansions)

Prints (text with Handlebars expansions) as a VN mode message attributed to (character), who must be defined as a speaker in the game's data. If the line starts with just [], it will be a VN mode message with no attribution. The script does not advance until the user presses the Advance button, unless an auto-advance character is in the text. Ignored if currently not in battle.

[[(character)]] (text with Handlebars expansions)

Prints (text with Handlebars expansions) as a skit message attributed to (character) once previous skit messages have auto-advanced.

![[(character)]] (text with Handlebars expansions)

Immediately dumps all previous skit messages into the transcript without displaying any that were queued up and prints (text with Handlebars expansions) as a skit message attributed to (character).

% (text with Handlebars expansions)

Prints (text with Handlebars expansions) as a battle log message. Ignored if currently not in battle.

select (text with Handlebars expansions)

[cancel] [default] choice (text with Handlebars expansions)

show when (Angu script expression)

enable when (Angu script expression)

default when (Angu script expression)

cancel

selected

Displays a set of choices on the screen, with the prompt given in the select statement, each having the given text in its choice statement. When the user selects a choice, all code up to the next choice, when, cancel, default, or selected statement will be executed.

A choice may have the cancel and/or default keywords preceding it. If it does, that choice will be selected when the user presses the Cancel key/highlighted when the choices are displayed, respectively.

A cancel statement is not a displayed choice. Instead, it is the "choice selected" when the user presses the Cancel key, closing the menu.

A choice (but not a cancel) may be preceded by a show when and/or enable when and/or default when statement. A show when statement's expression must evaluate to true or the associated choice will be hidden. An enable when statement's expression must evaluate to true or the associated choice will be unselectable. If a default when statement's expression is true, and the choice is both shown and enabled, the choice will be selected by default.

The first choice to be all of (visible and enabled and default) will be the highlighted choice when the choices are displayed. Similarly, the first cancel or (visible and enabled) cancel choice statement will be the behavior when the cancel key is pressed.

If no choice is default, no choice will be highlighted when the menu is displayed. In this case, the cursor is treated as if it's positioned between the first and last choice - pressing Up moves the cursor to the last choice, while pressing Down moves the cursor to the first choice.

If no choice is cancel and no cancel statement exists, the Cancel key does nothing and does not exit the choice.

If no choices are both shown and enabled, and no cancel exists, the menu is not shown at all, and control continues to the next statement after the selected.

if (Angu script expression)

else if (Angu script expression)

else

fi

If statement flow. There's no requirement that the contents be indented, but indentation will be stripped away if present, allowing for indentation to be present for readability.

while (Angu script expression)

done

While loop flow, with the condition evaluated for the first time before the first loop cycle.

do

repeat while (Angu script expression)

Alternate-order while-loop flow, with the condition evaluated for the first time after the first loop cycle.

break

Exits a do...repeat while or while...done loop.

continue

Skips to the next iteration of a do...repeat while or while...done loop.

return

Exits this layer of the stack and goes up to the previous, or returns to the normal game flow if this was the bottom layer of the stack.

call (Angu script expression)

Pushes the label that the expression evaluates to onto the stack. Fails if the label does not exist. The special value "" causes call to do nothing.

goto (Angu script expression)

Replaces the current stack frame with the label that the expression evaluates to. The special value "" causes goto to do nothing.

: (text)

Indicates a label that can be referred to in game data or jumped or called to from the script.

$ (Angu script expression)

Evaluates the given expression for its side effects.