User Interfaces
User Interfaces¶
User Interfaces are the customizable on-screen layouts the project shows to the player — main menus, dialogue boxes, HUDs, status overlays, shop screens, battle command lists, save and load menus, title screens, and any other element of the game's presentation that lives on top of the world. A user interface is built from a tree of elements (text, images, panels, lists, buttons) and can be styled, animated, and scripted to react to player input and game state.
Each user interface is a self-contained, reusable definition that can be displayed by the engine, opened from a script, or referenced by other systems (battle, title, game over, scenes) as their visual presentation. The same user interface can be opened multiple times, layered, and transitioned in and out independently from the rest of the game.
Note: User interfaces run a three-stage script lifecycle: a Loaded script when the UI first opens, an Ongoing script while it is active, and an Unloaded script when it closes. Use Loaded and Unloaded for one-shot setup and teardown, and Ongoing for the per-frame logic that drives interactivity.
Note: A user interface is typed (overlay, menu, dialogue, etc.), and the type controls how the engine treats it relative to other UIs that may already be open — what it blocks, what it allows underneath, and how input flows. Choose the type that matches the role the UI plays rather than treating every interface the same way.
Properties¶
System¶
| Name | Explanation | Type |
|---|---|---|
| Enter Transition | The transition played when opening the user interface. | User Interface Transition |
| Exit Transition | The transition played when closing the user interface. | User Interface Transition |
| ID | The unique identifier. | Unique ID |
| Locals | The local switches and variables. | Local and Global Data |
| Name | The display name. | String |
| Ongoing Script | The script that runs continuously while active. | Script |
| Unloaded Script | The script executed when the user interface is unloaded. | Script |