Repository navigation
v0.9.0 – forms, menu controls and the menu designer
- Menu designer in the browser (https://flyingfinger1.github.io/Glyphwork/designer.html, next
to the skin editor): place and resize elements with the mouse, edit their options, variables,
forms and templates in side panels, try the menu out (actions, controls, forms work on preview
variables) and download the.ymlfile. Load your own Minecraft client jar (read only in the
browser) for real item icons and the real font; resource packs add their textures and items.
Guide in docs/menu-designer.md. - Forms: several native input fields at once (text, multi-line text, slider, checkbox,
choice) in a dialog of their own with OK / Cancel; afterwards the menu is shown again. In YAML a
menu lists them underforms:and opens one with the actionform: name; every field belongs to
a menu variable (starts with its value, OK writes it back), then the form'sactionsrun. API:
Click.form(Form, values -> ...); values are checked (length, range, step, known options).
New exampleexample-forms.yml; the example trader picks its amount with a slider. - Slider, checkbox and choice in the menu: new elements drawn from the skin (
slider,
checkbox,choicein YAML withvar:;Slider,Checkbox,Choicein the API). A click on a
slider's track moves the knob there (hovering shows the value first), a checkbox toggles, a choice
button steps back (left half) or forward (right half). The variable is set, the element's
actionsrun and the menu redraws. The plain dialog offers them as buttons (one step down/up,
toggle, next option).example-forms.ymlshows them next to a form. - Counts on icons:
count: 64(YAML, also for list and grid items, placeholders allowed) and
Icon.count(...),Grid.count(...),ListView.count(...)write a stack size at the bottom right
of the icon, white with a shadow like in the inventory;1and empty show nothing. The plain
dialog writes it after the name ("Diamond ×64"). The example trader shows its pack sizes. - Auto-refresh:
refresh: 5in a menu (orScene.Builder.refresh(Duration)) redraws the open
menu every few seconds, so placeholders and dynamic lists stay current. Clicks on the previous
drawing still work; it stops when the player closes the menu (also with ESC), opens another one or
an inventory.example-players.ymlrefreshes every 5 seconds and shows the players per world as
counts. - Text shadows like in vanilla: the text of buttons, lists, grid cells and the page arrows now
has a drop shadow (before, all text was flat). Grayed-out buttons stay flat, and so do labels,
like inventory titles;shadow: true(YAML) orLabel.shadow(true)turns it on for a label.
Arrows of a page button that cannot be used are gray now. - English examples: the example menus exist in English (
example*.yml) and German
(beispiel*.yml); on first start the set of the server's language is exported (language, or
fallback-languagewhen it isauto, default English). The demo (/glyphwork test) speaks the
player's language (keysdemo.*in the language files), and the example plugin is in English
(/trader,/haendlerstill works). - Skins renamed: the built-in skins are now
darkandparchment(weredunkeland
pergament). - List frames and the menu background are rounded up to whole tiles: rows of a list whose
height is no multiple of 8 (2 rows of 18 px) stuck out of the frame, and content near the bottom
of a menu with such a height sat on or past the edge. Other frames still round down. - New placeholder
%time%: the server clock (HH:MM:SS). - Closing a menu with its exit button or ESC now ends the player's session right away (before, it
stayed until the next menu).
Upgrading: the built-in skins dunkel/pergament are now dark/parchment; if your config says theme: dunkel, change it to theme: dark (the old exported folder keeps working until you delete it).
Downloads: Glyphwork-0.9.0.jar (plugin), glyphwork-api-0.9.0.jar (compile against it, do not shade), glyphwork-example-0.9.0.jar (example plugin, optional).