Preskoči na vsebino

Lastno ozadje GUI v DeluxeMenus z ItemsAdder

Minecraft nima nastavitve za sliko v ozadju menija, pa vendar ima veliko strežnikov menije skrinj, ki so videti kot povsem lastni zasloni. Trik je font image v naslovu menija: ItemsAdder tvoj PNG spremeni v znak, negativni zamiki pa ta znak premaknejo čez skrinjo. Ta vodnik to korak za korakom nastavi za DeluxeMenus.

Posodobljeno:

Kako deluje GUI s teksturo

Meni skrinje prikazuje naslov v zgornjem levem kotu. Naslov je besedilo, besedilo pa lahko vsebuje znake iz resource packa strežnika. ItemsAdder lahko vsak PNG spremeni v tak znak, ki se imenuje font image. Če v naslov postaviš velik font image, ga odjemalec nariše čez zaslon skrinje.

Da se vse poravna, potrebuješ še dva dela. Negativen zamik (offset) premakne kazalec levo pred sliko, tako da se slika začne na levem robu skrinje in ne za zamikom naslova. y_position font imagea ga premakne gor ali dol, dokler ne prekrije celotnega menija.

Sloti ostanejo navadni sloti. Kjer tvoja slika prikazuje gumb, ima meni prazen slot, ki ga lahko klikneš, z material: air in lastnimi dejanji ob kliku.

Kaj potrebuješ

  • DeluxeMenus in PlaceholderAPI na strežniku Spigot ali Paper.
  • ItemsAdder, ki zgradi resource pack in ponuja placeholderje %img_…%.
  • Delujočo dostavo resource packa, da igralci paket res prenesejo (ItemsAdder ponuja self-hosting in druge možnosti gostovanja).
  • PNG za ozadje. Minecraft ne dovoli glifov pisave, večjih od 256×256 pikslov, zato mora slika ustrezati tej meji.

1. korak: Naredi sliko za ozadje

Meni oblikuj v GUI Maker: izberi število vrstic, temo ali predlogo in nariši velike gumbe čez več slotov. Za izvoz izberi ItemsAdder, vnesi svoj namespace (na primer mymenus) in ime menija (na primer shop).

Izvožen PNG je širok 256 pikslov. Njegova višina je odvisna od števila vrstic, od 164 pikslov za eno vrstico do 254 pikslov za šest. Dodaten prostor okoli skrinje omogoča, da okvirji in okraski segajo čez običajen obris menija.

2. korak: Registriraj font image v ItemsAdder

Kopiraj PNG v svoj namespace in dodaj vnos font_images. To GUI Maker izvozi za meni s šestimi vrsticami:

plugins/ItemsAdder/contents/mymenus/configs/gui_shop.yml
info:
  namespace: mymenus
font_images:
  gui_shop:
    path: gui/shop
    show_in_gui: false
    suggest_in_command: false
    scale_ratio: 254
    y_position: 45

Sama slika gre v plugins/ItemsAdder/contents/mymenus/resourcepack/assets/mymenus/textures/gui/shop.png.

  • scale_ratio je višina, v kateri se slika nariše. Uporabi pravo višino PNG-ja v pikslih, da se nič ne raztegne.
  • y_position premakne sliko navpično. ItemsAdder zahteva, da je manjši ali enak scale_ratio, ker igra več ne dovoli.
  • show_in_gui: false ozadje izloči s seznama emojijev v ItemsAdder.

3. korak: Postavi sliko v naslov menija DeluxeMenus

DeluxeMenus v menu_title obdela placeholderje PlaceholderAPI. ItemsAdder ponuja %img_<name>% za sliko in %img_offset_<pixels>% za prazen prostor, ki je lahko tudi negativen.

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%img_offset_-48%%img_gui_shop%%img_offset_-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'
  1. &f na začetku ohrani sliko v pravih barvah. Brez tega se slika obarva z barvo naslova.
  2. %img_offset_-48% premakne kazalec za 48 pikslov levo pred sliko. GUI Maker to vrednost uporablja za svoje platno: 8 pikslov za zamik naslova skrinje in 40 pikslov roba, ki ga doda na vsaki strani.
  3. %img_gui_shop% je samo ozadje.
  4. Drugi zamik premakne kazalec nazaj, tako da se &8Shop izpiše na sliki tam, kjer je mesto naslova. Njegova vrednost je odvisna od širine tvoje slike; GUI Maker jo izračuna namesto tebe.

Če v GUI Maker naslov vrišeš kar v sliko, se naslov konča za placeholderjem ozadja in drugega zamika ni.

4. korak: Registriraj meni in znova zgradi paket

DeluxeMenus naloži samo menije, ki so navedeni v njegovem config.yml:

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Zaženi /iazip, da ItemsAdder znova zgradi resource pack z novo sliko.
  2. Zaženi /dm reload. Meni enkrat odpri z /dm open shop, da ga preveriš.
  3. register_command: true registrira /shop kot pravi ukaz, vendar samo ob zagonu strežnika. Po dodajanju novega menija strežnik enkrat znova zaženi.
  4. Znova se pridruži, sprejmi resource pack in odpri meni.

Pogoste napake in rešitve

Kaj vidišVzrok in rešitev
Naslov prikazuje %img_gui_shop% kot besediloPlaceholderAPI manjka ali je ime napačno. Placeholder uporablja ime font imagea iz konfiguracije, brez namespacea.
Namesto slike prazen kvadratek ali napačen simbolPaket ni bil znova zgrajen ali ima igralec star paket. Zaženi /iazip in se znova pridruži.
Nekateri igralci sploh ne vidijo slikeZavrnili so resource pack strežnika. Preveri gostovanje paketa in nastavitve strežnika v odjemalcu.
Slika je zamaknjenaPrvi zamik ali y_position se ne ujema z robovi tvojega PNG-ja. Raje znova izvozi, namesto da ugibaš številke.
Slika je siva ali temnejšaPred sliko manjka &f.
/shop je neznan ukazStrežnik po dodajanju menija ni bil znova zagnan ali meni manjka v config.yml.
ItemsAdder zavrne font imagey_position je večji od scale_ratio ali je slika večja od 256×256.

Pogosta vprašanja

Morajo igralci za lastno ozadje GUI kaj prenesti?

Da, resource pack strežnika, ki ga zgradi ItemsAdder. Brez njega naslov prikaže kvadratek ali nič. ItemsAdder lahko paket pošlje samodejno, ko se igralci pridružijo.

Zakaj naslov v DeluxeMenus prikazuje %img_…% kot besedilo?

Placeholder se ne zamenja. Preveri, ali je PlaceholderAPI nameščen, ali je ItemsAdder naložen in ali je ime za img_ točno ime font imagea iz tvoje konfiguracije.

Lahko uporabim isto ozadje za menije z manj vrsticami?

Samo če se slika ujema s številom vrstic. Skrinja s tremi vrsticami je nižja od skrinje s šestimi, zato potrebuje svoj PNG in svoj scale_ratio. GUI Maker izvozi pravo višino za vsako število vrstic.

Ali to deluje brez ItemsAdder?

Isti trik deluje z glifi Nexo ali Oraxen. Brez plugina za resource pack lahko še vedno zgradiš čist meni z obarvanimi stekli, ki ga GUI Maker izvozi z možnostjo „None“.

Viri

Preverjeno z uradno dokumentacijo: