Ako funguje textúrované GUI
Menu v truhlici zobrazuje svoj nadpis v ľavom hornom rohu. Nadpis je text a text môže obsahovať znaky zo serverového resource packu. ItemsAdder dokáže z akéhokoľvek PNG urobiť taký znak, ktorý sa volá font image. Daj do nadpisu veľký font image a klient ho vykreslí cez obrazovku truhlice.
Aby všetko sedelo, potrebuješ ešte dve veci. Záporný offset posunie kurzor pred obrázkom doľava, takže obrázok začína pri ľavom okraji truhlice, a nie až za odsadením nadpisu. y_position font imagu ho posúva hore alebo dole, kým nezakryje celé menu.
Sloty zostávajú normálnymi slotmi. Tam, kde tvoj obrázok ukazuje tlačidlo, má menu prázdny klikateľný slot s material: air a vlastnými akciami po kliknutí.
Čo potrebuješ
- DeluxeMenus a PlaceholderAPI na serveri so Spigotom alebo Paperom.
- ItemsAdder, ktorý zostaví resource pack a poskytuje placeholdery
%img_…%. - Funkčné doručovanie resource packu, aby si ho hráči naozaj stiahli (ItemsAdder ponúka self-hosting aj iné možnosti hostingu).
- PNG s pozadím. Minecraft nepovoľuje glyfy fontu väčšie ako 256×256 pixelov, takže obrázok sa do toho musí zmestiť.
Krok 1: Vytvor obrázok pozadia
Navrhni menu v GUI Makeri: vyber počet riadkov, tému alebo predvoľbu a nakresli veľké tlačidlá cez viac slotov. Ako export zvoľ ItemsAdder, zadaj svoj namespace (napríklad mymenus) a názov menu (napríklad shop).
Vyexportované PNG má šírku 256 pixelov. Jeho výška závisí od počtu riadkov, od 164 pixelov pre jeden riadok po 254 pixelov pre šesť. Priestor navyše okolo truhlice umožňuje, aby rámy a dekorácie presahovali bežný obrys menu.
Krok 2: Zaregistruj font image v ItemsAdder
Skopíruj PNG do svojho namespace a pridaj položku font_images. Toto GUI Maker vyexportuje pre menu so šiestimi riadkami:
info:
namespace: mymenus
font_images:
gui_shop:
path: gui/shop
show_in_gui: false
suggest_in_command: false
scale_ratio: 254
y_position: 45Samotný obrázok patrí do plugins/ItemsAdder/contents/mymenus/resourcepack/assets/mymenus/textures/gui/shop.png.
scale_ratioje výška, v ktorej sa obrázok vykreslí. Použi skutočnú výšku PNG v pixeloch, aby sa nič neroztiahlo.y_positionposúva obrázok zvislo. ItemsAdder vyžaduje, aby bola menšia alebo rovnáscale_ratio, pretože hra viac nedovolí.show_in_gui: falsedrží pozadie mimo zoznamu emoji v ItemsAdder.
Krok 3: Vlož obrázok do nadpisu menu v DeluxeMenus
DeluxeMenus spracúva placeholdery PlaceholderAPI v menu_title. ItemsAdder poskytuje %img_<name>% pre obrázok a %img_offset_<pixels>% pre prázdne miesto, ktoré môže byť aj záporné.
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'&fna začiatku zachová obrázok v jeho skutočných farbách. Bez toho sa obrázok zafarbí farbou nadpisu.%img_offset_-48%posunie kurzor pred obrázkom o 48 pixelov doľava. GUI Maker túto hodnotu používa pre svoje plátno: 8 pixelov za odsadenie nadpisu truhlice plus 40-pixelový okraj, ktorý pridáva na každej strane.%img_gui_shop%je samotné pozadie.- Druhý offset vráti kurzor späť, takže
&8Shopsa napíše na obrázok tam, kde nadpis patrí. Jeho hodnota závisí od šírky tvojho obrázka; GUI Maker ju vypočíta za teba.
Ak v GUI Makeri vkreslíš nadpis priamo do obrázka, nadpis končí za placeholderom pozadia a druhý offset nie je potrebný.
Krok 4: Zaregistruj menu a znova zostav pack
DeluxeMenus načíta len menu uvedené v jeho config.yml:
gui_menus:
shop:
file: shop.yml- Spusti
/iazip, aby ItemsAdder znova zostavil resource pack s novým obrázkom. - Spusti
/dm reload. Otvor menu raz príkazom/dm open shopa skontroluj ho. register_command: truezaregistruje/shopako skutočný príkaz, ale len pri štarte servera. Po pridaní nového menu server raz reštartuj.- Pripoj sa znova, prijmi resource pack a otvor menu.
Bežné chyby a ich riešenia
| Čo vidíš | Príčina a riešenie |
|---|---|
Nadpis ukazuje %img_gui_shop% ako text | Chýba PlaceholderAPI alebo je názov zlý. Placeholder používa názov font imagu z konfigurácie, bez namespace. |
| Namiesto obrázka prázdny štvorček alebo zlý symbol | Pack sa znova nezostavil alebo má hráč starý pack. Spusti /iazip a pripoj sa znova. |
| Niektorí hráči nevidia obrázok vôbec | Odmietli serverový resource pack. Skontroluj hosting packu a nastavenia servera v klientovi. |
| Obrázok je posunutý | Prvý offset alebo y_position nesedí s okrajmi tvojho PNG. Radšej exportuj znova, než by si hádal čísla. |
| Obrázok je sivý alebo tmavší | Pred obrázkom chýba &f. |
/shop je neznámy príkaz | Server sa po pridaní menu nereštartoval alebo menu chýba v config.yml. |
| ItemsAdder font image odmietne | y_position je väčšia ako scale_ratio alebo je obrázok väčší ako 256×256. |