Перейти к основному содержимому

UI Option Dialogue

A spoken line with choices under it. The player aims at one and clicks.

A dialogue with choices IS a view. It is opened through the same machinery a menu uses, so the cursor, the hover highlight, the click and the hold on the player all come from one implementation rather than a second copy of it. That also settles what the player may do while it is on screen: they stay in front of whoever is speaking and cannot walk away mid-sentence.

Configuration

FieldWhat it does
textThe line, typed out letter by letter. Supports placeholders.
durationHow long the typing takes. Zero shows the line at once.
styleThe ui_dialogue_style it takes. Leave empty for the server's own.
portraitPicture drawn beside the speaker's name, for instance portrait_aldric.
optionsThe choices offered.
timerCancels the dialogue when it runs out. Zero for no countdown.
cancelTriggersFired when the countdown cancels the dialogue.
soundPlayed once as the line appears.

One choice

FieldWhat it does
textWhat the choice says.
tooltipShown beside the screen while the cursor rests on it.
criteriaWhat the player must meet to take it. It is drawn either way.
lockedReasonShown instead of the tooltip while it cannot be taken.
hideWhenLockedHide it entirely instead of showing it locked.
modifiersApplied when it is taken.
triggersFired when it is taken.

A locked choice is still shown

This is the deliberate difference from a chat dialogue, and the reason the entry exists.

A chat renderer filters out choices the player cannot take, so a player never learns that a door exists. Here the criteria decide whether a choice can be taken, not whether it is drawn: a locked choice appears dimmed, carrying lockedReason in place of its tooltip, and a click on it is refused rather than ignored.

An author who genuinely wants a choice hidden says so with hideWhenLocked.

Two columns

The house style spreads the choices into two columns, one on each side of the speaker. The cursor reaches a choice by turning the head, so piling ten of them into one corner asks the player to look away from the person talking; two columns halve that travel and double what fits without scrolling.

That is a property of the style, not of this entry — a dialogue is written for what it says.

[!NOTE] Markup is stripped. GUI space renders through a font, not through a chat component. A MiniMessage tag left in a choice would be drawn literally, so tags are removed before the text reaches the grid. Colour a choice through the style's palettes instead.