Posted March 05, 2023 by McHorse
#Game engine #Sandbox
This update brings new UI editor, which allows creating custom UI menus, which was only possible through scripts before, with a GUI editor. Beside UI editor, 0.6
allows to customize pause, inventory, and dialogue menus with the new UI editor, world and dashboard menus were merged, and game controllers were introduced.
Space
to vector fields (3 trackpad/number fields marked red, green and blue) to change all fields at onceEscape
when dashboard is hidden, it will show the dashboard first before exiting the dashboardbbs:ui
) trigger block which allows opening custom UI menus and also close any UI menuIScriptUI.createFromData(String)
(and its overrides) and IScriptUIBuilder.get(String)
,
is used in certain locales instead of .
for trackpad (Centryfuga)Following UI components (with corresponding IDs) must be present for the custom inventory to work:
form
, type Form (bbs:form
), it will display player’s form.quest
, type Layout (bbs:layout
) with Layout type None
, it will display quests, if the player has any.slots
, type Layout (bbs:layout
) with Layout type any but not None
, it will display player’s equipment slots (of which there are currently 2).inventory
, type Layout (bbs:layout
) with Layout type None
and preferably 100
width and 160
height, it will display player’s inventory, which is hardcoded to have 5 items per row and in total 40 slots.All of these elements can be attached to root, or nested into other UI components. You can download this example and move it to game/data/uis/
.
Following UI components (with corresponding IDs) must be present for the custom inventory to work:
form
, type Form (bbs:form
), it will display current dialogue reaction’s form.quest
, type Layout (bbs:layout
) with Layout type None
, it will display current dialogue’s quests, if any are present.crafting
, type Layout (bbs:layout
) with Layout type None
, it will display current dialogue’s crafting table, if one is present.replies
, type Layout (bbs:layout
) with Layout type Column
, it will display current dialogue’s replies (reply nodes connected to current reaction node).reaction
, type Layout (bbs:layout
) with Layout type None
, it will display current dialogue reaction node’s text.back
, type Button (bbs:button
), it will be displayed when quests or crafting table is displayed.accept
, type Button (bbs:button
), it will be displayed when quests are present, which allows accepting/completing a selected quest.All of these elements can be attached to root, or nested into other UI components. You can download this example and move it to game/data/uis/
.