Zo wordt een glyph een menuachtergrond
Een kistmenu zet zijn titel linksboven, en die titel kan tekens uit het resource pack van de server bevatten. Een glyph is zo’n teken, getekend vanuit je PNG. Zet je een grote glyph in de titel, dan tekent de client hem over het hele kistscherm.
Twee waarden bepalen de positie. Een negatieve shift schuift de cursor vóór de glyph naar links, zodat de afbeelding aan de rand van de kist begint en niet bij de inspringing van de titel. De ascent van de glyph schuift hem verticaal tot hij het menu bedekt. Slots blijven echte slots: waar de afbeelding een knop toont, heeft het menu een leeg slot met material: air dat gewoon klikacties uitvoert.
Gebruik je ItemsAdder? Lees dan de ItemsAdder-versie van deze handleiding. Het idee is hetzelfde, alleen de config en de namen van de placeholders verschillen.
Wat je nodig hebt
- DeluxeMenus en PlaceholderAPI op je server. DeluxeMenus verwerkt PlaceholderAPI-placeholders in
menu_title. - Nexo of Oraxen, die het resource pack bouwen en de glyph- en shift-placeholders leveren.
- Voor Oraxen: glyphs in inventorytitels werken standaard op Paper 1.21.2 of nieuwer. Oudere servers hebben volgens de Oraxen-docs PacketEvents nodig.
- Een achtergrond-PNG van maximaal 256×256 pixels. Grotere textures zijn voor één glyph niet toegestaan.
Stap 1: Ontwerp de achtergrond
Bouw het menu in de GUI-maker: kies het aantal rijen, een preset of thema, en teken grote knoppen over meerdere slots. Kies onder export Nexo of Oraxen, stel een namespace in (bijvoorbeeld mymenus) en een menunaam (bijvoorbeeld shop).
De PNG is 256 pixels breed en tussen 164 pixels (één rij) en 254 pixels (zes rijen) hoog. De marge rond de kist geeft randen ruimte om buiten de normale omtrek van het menu uit te steken.
Stap 2a: Glyph-config voor Nexo
Nexo leest glyphs uit elk YAML-bestand in zijn glyphs-map. De texture schrijf je als namespace:path, hier de PNG in plugins/Nexo/pack/assets/mymenus/textures/gui/shop.png:
gui_shop:
texture: mymenus:gui/shop
ascent: 45
height: 254heightis de getekende hoogte. Gebruik de echte pixelhoogte van de PNG.ascentschuift de glyph omhoog. Volgens Nexo mag de height nooit lager zijn dan de ascent.- De placeholders zijn
%nexo_gui_shop%voor de glyph en%nexo_shift_<pixels>%voor ruimte, die negatief mag zijn.
Stap 2b: Glyph-config voor Oraxen
Oraxen leest glyphs uit plugins/Oraxen/glyphs/. Het texturepad is relatief ten opzichte van pack/textures/, dus de PNG komt in plugins/Oraxen/pack/textures/gui/shop.png:
gui_shop:
texture: gui/shop
ascent: 45
height: 254- Oraxen eist dat
heightgroter dan of gelijk aanascentis; Minecraft dwingt dat af. - De glyph-placeholder is
%oraxen_gui_shop%. Voor shifts zijn er twee placeholders:%oraxen_shift_<pixels>%schuift naar rechts,%oraxen_neg_shift_<pixels>%naar links. Elk ondersteunt tot 2047 pixels. - Er bestaat een
char-sleutel om het teken zelf te kiezen, maar die is optioneel.
Stap 4: Registreer het menu en herlaad
gui_menus:
shop:
file: shop.yml- Bouw het pack opnieuw:
/nexo reload(of/nexo reload pack) voor Nexo,/oraxen reload allvoor Oraxen. - Voer
/dm reloaduit en test met/dm open shop. - Herstart de server één keer. DeluxeMenus registreert
/shopviaregister_command: truealleen bij het opstarten. - Join opnieuw, zodat je het nieuwe resource pack krijgt.
Veelvoorkomende fouten en oplossingen
| Wat je ziet | Oorzaak en oplossing |
|---|---|
%nexo_gui_shop% of %oraxen_gui_shop% als tekst | PlaceholderAPI ontbreekt, of de glyph-ID in de placeholder komt niet overeen met de sleutel in het glyph-bestand. |
| Een leeg vakje of een verkeerd symbool | Het pack is niet opnieuw gebouwd of de speler heeft het oude pack. Herlaad de plugin en join opnieuw. |
| Oraxen-glyph ontbreekt alleen in menutitels | De server is ouder dan Paper 1.21.2 en PacketEvents is niet geïnstalleerd. |
| De afbeelding staat verschoven | Shift of ascent past niet bij de PNG. Exporteer opnieuw vanuit hetzelfde ontwerp. |
| De afbeelding is donkerder dan de PNG | &f ontbreekt vóór de eerste placeholder. |
| De glyph wordt bij het laden geweigerd | ascent is hoger dan height, of de PNG is groter dan 256×256. |
/shop doet niks | Het menu staat niet in config.yml, of de server is niet herstart nadat het is toegevoegd. |