Ugrás a tartalomhoz

DeluxeMenus GUI-háttér Nexóval vagy Oraxennel

Az egyedi menüképernyők a Minecraftban egy trükkön alapulnak: a háttérkép egyetlen karakter a menü címében. A Nexo és az Oraxen ezeket a karaktereket glyph-nek hívja. Ez az útmutató megmutatja a glyph configot mindkét pluginhoz, a shift placeholdereket, amelyek a helyére tolják a képet, és hogy hogyan kösd össze mindezt a DeluxeMenusszal.

Frissítve:

Hogyan lesz egy glyph-ből menüháttér

Egy ládamenü a bal felső sarokba írja a címét, és ez a cím tartalmazhat karaktereket a szerver resource packjéből. A glyph egy ilyen karakter, amit a PNG-dből rajzol a játék. Tegyél egy nagy glyph-et a címbe, és a kliens az egész ládaképernyő fölé festi.

Két érték pozicionálja. Egy negatív shift balra viszi a kurzort a glyph előtt, így a kép a láda szélén kezdődik, nem a cím behúzásánál. A glyph ascent értéke függőlegesen mozgatja, amíg le nem fedi a menüt. A slotok valódi slotok maradnak: ahol a képen gomb látszik, ott a menüben egy üres slot van material: air értékkel, ami ugyanúgy futtat kattintási műveleteket.

Ha inkább ItemsAddert használsz, olvasd el ennek az útmutatónak az ItemsAdder-változatát. Az ötlet ugyanaz, csak a config és a placeholderek neve más.

Amire szükséged van

  • DeluxeMenus és PlaceholderAPI a szervereden. A DeluxeMenus feldolgozza a PlaceholderAPI placeholdereket a menu_title mezőben.
  • Nexo vagy Oraxen, ami felépíti a resource packet, és biztosítja a glyph és shift placeholdereket.
  • Oraxenhez: a glyphek az inventory címekben Paper 1.21.2-től vagy újabbon natívan működnek. Régebbi szerverekhez az Oraxen dokumentációja szerint PacketEvents kell.
  • Egy legfeljebb 256×256 pixeles háttér-PNG. Egyetlen glyph-hez nagyobb textúra nem engedélyezett.

1. lépés: Tervezd meg a hátteret

Építsd meg a menüt a GUI készítőben: válaszd ki a sorokat, egy sablont vagy témát, és rajzolj nagy gombokat több slot fölé. Az exportnál válaszd a Nexo vagy Oraxen lehetőséget, állíts be egy namespace-t (például mymenus) és egy menünevet (például shop).

A PNG 256 pixel széles és 164 pixel (egy sor) és 254 pixel (hat sor) közötti magasságú. A láda körüli margó helyet ad a kereteknek, hogy kilógjanak a menü normál körvonalából.

2a. lépés: Nexo glyph config

A Nexo a glyphs mappájában lévő bármelyik YAML-fájlból beolvassa a glyph-eket. A textúra namespace:path formában szerepel, itt a PNG helye 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
  • A height a megjelenített magasság. A PNG valódi pixelmagasságát használd.
  • Az ascent felfelé mozgatja a glyph-et. A Nexo szerint a height soha nem lehet kisebb az ascentnél.
  • A placeholderek: %nexo_gui_shop% a glyph-hez és %nexo_shift_<pixels>% a helyközhöz, ami negatív is lehet.

2b. lépés: Oraxen glyph config

Az Oraxen a plugins/Oraxen/glyphs/ mappából olvassa a glyph-eket. A textúra útvonala a pack/textures/ mappához képest relatív, így a PNG ide kerül: plugins/Oraxen/pack/textures/gui/shop.png:

plugins/Oraxen/glyphs/gui_shop.yml
gui_shop:
  texture: gui/shop
  ascent: 45
  height: 254
  • Az Oraxen megköveteli, hogy a height legalább akkora legyen, mint az ascent; ezt a Minecraft kényszeríti ki.
  • A glyph placeholdere %oraxen_gui_shop%. Az eltolásnak két placeholdere van: a %oraxen_shift_<pixels>% jobbra, a %oraxen_neg_shift_<pixels>% balra visz. Mindkettő legfeljebb 2047 pixelt tud.
  • Létezik egy char kulcs is, hogy magad válaszd ki a karaktert, de nem kötelező.

3. lépés: A DeluxeMenus menü címe

A cím összekapcsolja a színt, egy balra eltolást, a glyph-et, egy visszatolást és a cím szövegét. Nexóhoz:

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'

Oraxennél csak a cím változik, mert a balra eltolásnak saját placeholdere van:

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%oraxen_neg_shift_48%%oraxen_gui_shop%%oraxen_neg_shift_201%&8Shop'
  1. A &f megtartja a kép saját színeit, ahelyett hogy a cím színével színezné.
  2. Az első eltolás 48 pixellel balra viszi a kurzort: a GUI készítő 8 pixelt számol a ládacím behúzására, plusz a vászna 40 pixeles margóját.
  3. A második eltolás visszahozza a kurzort, így a &8Shop a képen ül. Az értéke a képed szélességétől függ; a GUI készítő kiszámolja.

A Nexónak és az Oraxennek MiniMessage tagjei is vannak, mint a <glyph:gui_shop> és a <shift:-48>. A GUI készítő a %…% formát írja, mert a DeluxeMenus a PlaceholderAPI placeholdereket dokumentálja a menu_title mezőhöz.

4. lépés: Regisztráld a menüt, és töltsd újra

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Építsd újra a packet: Nexónál /nexo reload (vagy /nexo reload pack), Oraxennél /oraxen reload all.
  2. Futtasd a /dm reload parancsot, és tesztelj a /dm open shop paranccsal.
  3. Indítsd újra egyszer a szervert. A DeluxeMenus a register_command: true alapján csak induláskor regisztrálja a /shop parancsot.
  4. Lépj be újra, hogy megkapd az új resource packet.

Gyakori hibák és javításuk

Amit látszOk és javítás
%nexo_gui_shop% vagy %oraxen_gui_shop% szövegkéntHiányzik a PlaceholderAPI, vagy a placeholderben lévő glyph ID nem egyezik a glyph-fájl kulcsával.
Üres doboz vagy rossz szimbólumA packet nem építették újra, vagy a játékosnál a régi pack van. Töltsd újra a plugint, és lépj be újra.
Az Oraxen glyph csak a menücímekben hiányzikA szerver régebbi a Paper 1.21.2-nél, és nincs telepítve a PacketEvents.
A kép el van csúszvaA shift vagy az ascent nem illik a PNG-hez. Exportáld újra ugyanabból a dizájnból.
A kép sötétebb, mint a PNGHiányzik a &f az első placeholder elől.
A glyph-et betöltéskor elutasítjaAz ascent nagyobb a height értéknél, vagy a PNG nagyobb 256×256-nál.
A /shop nem csinál semmitA menü nincs a config.yml-ben, vagy a szervert nem indították újra a hozzáadása után.

Gyakori kérdések

Más a beállítás Nexónál és Oraxennél?

Csak a részletekben. A Nexo namespace:path formában írja a textúrát, és a %nexo_shift_N% placeholdert használja negatív számokkal. Az Oraxen a pack/textures/ mappához relatív útvonalat vár, és a balra mozgatáshoz a %oraxen_neg_shift_N% placeholdere van.

Miért nem jelenik meg a glyph-em a DeluxeMenus címben?

Általában a placeholder nem cserélődik le (hiányzik a PlaceholderAPI, vagy rossz a glyph ID), a resource packet nem építették újra, vagy a játékos nem töltötte be az új packet. Oraxennel a Paper 1.21.2-nél régebbi szervereken a címekhez PacketEvents kell.

Melyik reload parancs kell?

Nexónál a /nexo reload, ami mindent újratölt, vagy a /nexo reload pack csak a packhez. Oraxennél a /oraxen reload all. Utána a /dm reload a menüfájlhoz.

Használhatok 256×256 pixelnél nagyobb textúrát?

Egy glyph-ként nem. A Minecraft 256×256 pixelre korlátozza a glyph-eket. A GUI készítő menühátterei minden sorszámnál ezen a korláton belül maradnak.

Források

A hivatalos dokumentációval ellenőrizve: