Vai al contenuto

Sfondo GUI di DeluxeMenus con Nexo o Oraxen

Le schermate di menu personalizzate in Minecraft sono un trucco: l’immagine di sfondo è un unico carattere nel titolo del menu. Nexo e Oraxen chiamano questi caratteri glyph. Questa guida ti mostra la config dei glyph per entrambi i plugin, i placeholder shift che spostano l’immagine al suo posto e come collegare tutto a DeluxeMenus.

Aggiornato:

Come un glyph diventa lo sfondo di un menu

Un menu a cassa scrive il suo titolo nell’angolo in alto a sinistra, e quel titolo può contenere caratteri del resource pack del server. Un glyph è proprio un carattere del genere, disegnato a partire dal tuo PNG. Metti un glyph grande nel titolo e il client lo dipinge sopra tutta la schermata della cassa.

Due valori lo posizionano. Uno shift negativo sposta il cursore a sinistra prima del glyph, così l’immagine parte dal bordo della cassa e non dal rientro del titolo. L’ascent del glyph lo sposta in verticale finché non copre il menu. Gli slot restano slot veri: dove l’immagine mostra un pulsante, il menu ha uno slot vuoto con material: air che esegue comunque le azioni al clic.

Se invece usi ItemsAdder, leggi la versione per ItemsAdder di questa guida. L’idea è la stessa, cambiano solo la config e i nomi dei placeholder.

Cosa ti serve

  • DeluxeMenus e PlaceholderAPI sul tuo server. DeluxeMenus elabora i placeholder di PlaceholderAPI in menu_title.
  • Nexo oppure Oraxen, che costruiscono il resource pack e forniscono i placeholder per glyph e shift.
  • Per Oraxen: secondo la documentazione di Oraxen, i glyph nei titoli degli inventari funzionano nativamente su Paper 1.21.2 o successivo. I server più vecchi hanno bisogno di PacketEvents.
  • Un PNG di sfondo di al massimo 256×256 pixel. Texture più grandi non sono ammesse per un singolo glyph.

Passo 1: disegna lo sfondo

Costruisci il menu nel creatore di GUI: scegli le righe, un preset o un tema, e disegna pulsanti grandi su più slot. Sotto l’esportazione scegli Nexo o Oraxen, imposta un namespace (per esempio mymenus) e un nome del menu (per esempio shop).

Il PNG è largo 256 pixel e alto tra 164 pixel (una riga) e 254 pixel (sei righe). Il margine intorno alla cassa lascia spazio alle cornici per sporgere dal normale contorno del menu.

Passo 2a: config del glyph per Nexo

Nexo legge i glyph da qualsiasi file YAML nella sua cartella glyphs. La texture si scrive come namespace:percorso, qui il 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 è l’altezza disegnata. Usa l’altezza reale in pixel del PNG.
  • ascent sposta il glyph verso l’alto. Secondo Nexo, height non deve mai essere minore di ascent.
  • I placeholder sono %nexo_gui_shop% per il glyph e %nexo_shift_<pixel>% per lo spazio, che può essere negativo.

Passo 2b: config del glyph per Oraxen

Oraxen legge i glyph da plugins/Oraxen/glyphs/. Il percorso della texture è relativo a pack/textures/, quindi il PNG va in plugins/Oraxen/pack/textures/gui/shop.png:

plugins/Oraxen/glyphs/gui_shop.yml
gui_shop:
  texture: gui/shop
  ascent: 45
  height: 254
  • Oraxen richiede che height sia maggiore o uguale ad ascent; è Minecraft a imporlo.
  • Il placeholder del glyph è %oraxen_gui_shop%. Per gli shift ci sono due placeholder: %oraxen_shift_<pixel>% sposta a destra, %oraxen_neg_shift_<pixel>% sposta a sinistra. Ognuno supporta fino a 2047 pixel.
  • Esiste una chiave char per scegliere tu il carattere, ma è facoltativa.

Passo 3: il titolo del menu DeluxeMenus

Il titolo combina colore, uno shift a sinistra, il glyph, uno shift di ritorno e il testo del titolo. Per 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'

Per Oraxen cambia solo il titolo, perché gli shift a sinistra hanno un placeholder tutto loro:

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%oraxen_neg_shift_48%%oraxen_gui_shop%%oraxen_neg_shift_201%&8Shop'
  1. &f mantiene l’immagine con i suoi colori invece di tingerla con il colore del titolo.
  2. Il primo shift sposta il cursore di 48 pixel a sinistra: il creatore di GUI conta 8 pixel per il rientro del titolo della cassa più il margine di 40 pixel della sua area di disegno.
  3. Il secondo shift riporta indietro il cursore, così &8Shop sta sopra l’immagine. Il valore dipende dalla larghezza della tua immagine; ci pensa il creatore di GUI.

Nexo e Oraxen hanno anche tag MiniMessage come <glyph:gui_shop> e <shift:-48>. Il creatore di GUI scrive la forma %…%, perché DeluxeMenus documenta i placeholder di PlaceholderAPI per menu_title.

Passo 4: registra il menu e ricarica

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Ricostruisci il pack: /nexo reload (o /nexo reload pack) per Nexo, /oraxen reload all per Oraxen.
  2. Esegui /dm reload e prova con /dm open shop.
  3. Riavvia il server una volta. DeluxeMenus registra /shop da register_command: true solo all’avvio.
  4. Rientra per ricevere il nuovo resource pack.

Errori comuni e soluzioni

Cosa vediCausa e soluzione
%nexo_gui_shop% o %oraxen_gui_shop% come testoManca PlaceholderAPI, oppure l’ID del glyph nel placeholder non corrisponde alla chiave nel file del glyph.
Un riquadro vuoto o un simbolo sbagliatoIl pack non è stato ricostruito o il giocatore ha il pack vecchio. Ricarica il plugin e rientra.
Il glyph di Oraxen manca solo nei titoli dei menuIl server è più vecchio di Paper 1.21.2 e PacketEvents non è installato.
L’immagine è spostataShift o ascent non corrispondono al PNG. Esporta di nuovo dallo stesso progetto.
L’immagine è più scura del PNGManca &f prima del primo placeholder.
Il glyph viene rifiutato al caricamentoascent è più alto di height, oppure il PNG supera 256×256.
/shop non fa nienteIl menu non è in config.yml, oppure il server non è stato riavviato dopo averlo aggiunto.

Domande frequenti

La configurazione è diversa tra Nexo e Oraxen?

Solo nei dettagli. Nexo scrive la texture come namespace:percorso e usa %nexo_shift_N% con numeri negativi. Oraxen vuole un percorso relativo a pack/textures/ e ha %oraxen_neg_shift_N% per spostarsi a sinistra.

Perché il mio glyph non compare nel titolo di DeluxeMenus?

Di solito il placeholder non viene sostituito (manca PlaceholderAPI o l’ID del glyph è sbagliato), il resource pack non è stato ricostruito, oppure il giocatore non ha caricato il nuovo pack. Con Oraxen su server più vecchi di Paper 1.21.2 serve PacketEvents per i titoli.

Quale comando di reload mi serve?

Per Nexo /nexo reload, che ricarica tutto, oppure /nexo reload pack solo per il pack. Per Oraxen /oraxen reload all. Poi /dm reload per il file del menu.

Posso usare una texture più grande di 256×256 pixel?

Non come singolo glyph. Minecraft limita i glyph a 256×256 pixel. Uno sfondo per menu del creatore di GUI resta entro quel limite per ogni numero di righe.

Fonti

Verificato sulla documentazione ufficiale: