Naar de inhoud

DeluxeMenus-GUI-achtergrond met Nexo of Oraxen

Eigen menuschermen in Minecraft zijn een truc: de achtergrondafbeelding is één enkel teken in de menutitel. Nexo en Oraxen noemen die tekens glyphs. Deze handleiding laat de glyph-config voor beide plugins zien, de shift-placeholders die de afbeelding op zijn plek schuiven, en hoe je alles koppelt aan DeluxeMenus.

Bijgewerkt:

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:

plugins/Nexo/glyphs/gui_shop.yml
gui_shop:
  texture: mymenus:gui/shop
  ascent: 45
  height: 254
  • height is de getekende hoogte. Gebruik de echte pixelhoogte van de PNG.
  • ascent schuift 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:

plugins/Oraxen/glyphs/gui_shop.yml
gui_shop:
  texture: gui/shop
  ascent: 45
  height: 254
  • Oraxen eist dat height groter dan of gelijk aan ascent is; 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 3: De menutitel in DeluxeMenus

De titel combineert kleur, een shift naar links, de glyph, een shift terug en de titeltekst. Voor Nexo:

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%nexo_shift_-48%%nexo_gui_shop%%nexo_shift_-201%&8Shop'
open_command: 'shop'
register_command: true
size: 54
items:
  button_1_buy:
    material: air
    slots: [10, 11, 19, 20]
    priority: 1
    click_commands:
      - '[openguimenu] shop_buy'

Voor Oraxen verandert alleen de titel, omdat shifts naar links een eigen placeholder hebben:

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%oraxen_neg_shift_48%%oraxen_gui_shop%%oraxen_neg_shift_201%&8Shop'
  1. &f houdt de afbeelding in haar eigen kleuren, in plaats van haar in de titelkleur te kleuren.
  2. De eerste shift schuift de cursor 48 pixels naar links: de GUI-maker rekent 8 pixels voor de inspringing van de kisttitel plus de marge van 40 pixels van zijn canvas.
  3. De tweede shift brengt de cursor terug, zodat &8Shop op de afbeelding staat. De waarde hangt af van de breedte van je afbeelding; de GUI-maker rekent hem uit.

Nexo en Oraxen hebben ook MiniMessage-tags zoals <glyph:gui_shop> en <shift:-48>. De GUI-maker schrijft de %…%-vorm, omdat DeluxeMenus PlaceholderAPI-placeholders voor menu_title documenteert.

Stap 4: Registreer het menu en herlaad

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Bouw het pack opnieuw: /nexo reload (of /nexo reload pack) voor Nexo, /oraxen reload all voor Oraxen.
  2. Voer /dm reload uit en test met /dm open shop.
  3. Herstart de server één keer. DeluxeMenus registreert /shop via register_command: true alleen bij het opstarten.
  4. Join opnieuw, zodat je het nieuwe resource pack krijgt.

Veelvoorkomende fouten en oplossingen

Wat je zietOorzaak en oplossing
%nexo_gui_shop% of %oraxen_gui_shop% als tekstPlaceholderAPI ontbreekt, of de glyph-ID in de placeholder komt niet overeen met de sleutel in het glyph-bestand.
Een leeg vakje of een verkeerd symboolHet pack is niet opnieuw gebouwd of de speler heeft het oude pack. Herlaad de plugin en join opnieuw.
Oraxen-glyph ontbreekt alleen in menutitelsDe server is ouder dan Paper 1.21.2 en PacketEvents is niet geïnstalleerd.
De afbeelding staat verschovenShift 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 geweigerdascent is hoger dan height, of de PNG is groter dan 256×256.
/shop doet niksHet menu staat niet in config.yml, of de server is niet herstart nadat het is toegevoegd.

Veelgestelde vragen

Is de setup anders voor Nexo en Oraxen?

Alleen in de details. Nexo schrijft de texture als namespace:path en gebruikt %nexo_shift_N% met negatieve getallen. Oraxen neemt een pad relatief ten opzichte van pack/textures/ en heeft %oraxen_neg_shift_N% om naar links te schuiven.

Waarom wordt mijn glyph niet getoond in de DeluxeMenus-titel?

Meestal wordt de placeholder niet vervangen (PlaceholderAPI ontbreekt of de glyph-ID klopt niet), is het resource pack niet opnieuw gebouwd, of heeft de speler het nieuwe pack niet geladen. Met Oraxen op servers ouder dan Paper 1.21.2 is PacketEvents nodig voor titels.

Welk reloadcommando heb ik nodig?

Voor Nexo /nexo reload, dat alles herlaadt, of /nexo reload pack voor alleen het pack. Voor Oraxen /oraxen reload all. Daarna /dm reload voor het menubestand.

Kan ik een texture groter dan 256×256 pixels gebruiken?

Niet als één glyph. Minecraft beperkt glyphs tot 256×256 pixels. Een menuachtergrond uit de GUI-maker blijft voor elk aantal rijen binnen die grens.

Bronnen

Gecontroleerd aan de hand van de officiële documentatie: