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.
107 lines
5.4 KiB
107 lines
5.4 KiB
3 years ago
|
> `# (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.
|