Så fungerar ett textur-GUI
En kistmeny visar sin titel i det övre vänstra hörnet. Titeln är text, och text kan innehålla tecken från serverns resource pack. ItemsAdder kan göra om vilken PNG som helst till ett sådant tecken, en så kallad font image (typsnittsbild). Lägg en stor typsnittsbild i titeln så ritar klienten den över kistskärmen.
Två saker till får allt att hamna rätt. En negativ offset flyttar markören åt vänster före bilden, så att bilden börjar vid kistans vänsterkant i stället för efter titelns indrag. Typsnittsbildens y_position flyttar den upp eller ner tills den täcker hela menyn.
Slotsen förblir vanliga slots. Där din bild visar en knapp har menyn en tom, klickbar slot med material: air och egna klickactions.
Det här behöver du
- DeluxeMenus och PlaceholderAPI på en Spigot- eller Paper-server.
- ItemsAdder, som bygger resource packet och ger dig placeholders av typen
%img_…%. - En fungerande leverans av resource packet, så att spelarna faktiskt laddar ner det (ItemsAdder erbjuder self-hosting och andra hostingalternativ).
- En PNG som bakgrund. Minecraft tillåter inte typsnittsglyphs större än 256×256 pixlar, så bilden måste rymmas inom det.
Steg 1: Gör bakgrundsbilden
Designa menyn i GUI-skaparen: välj antal rader, ett tema eller en förinställning och rita stora knappar över flera slots. Välj ItemsAdder som export, ange ditt namespace (till exempel mymenus) och menynamnet (till exempel shop).
Den exporterade PNG:en är 256 pixlar bred. Höjden beror på antalet rader, från 164 pixlar för en rad till 254 pixlar för sex. Det extra utrymmet runt kistan låter ramar och dekorationer sticka ut utanför menyns vanliga kontur.
Steg 2: Registrera typsnittsbilden i ItemsAdder
Kopiera PNG:en till ditt namespace och lägg till en post under font_images. Så här ser exporten från GUI-skaparen ut för en meny med sex rader:
info:
namespace: mymenus
font_images:
gui_shop:
path: gui/shop
show_in_gui: false
suggest_in_command: false
scale_ratio: 254
y_position: 45Själva bilden hamnar i plugins/ItemsAdder/contents/mymenus/resourcepack/assets/mymenus/textures/gui/shop.png.
scale_ratioär höjden som bilden ritas i. Använd PNG:ens verkliga höjd i pixlar så att inget sträcks ut.y_positionflyttar bilden vertikalt. ItemsAdder kräver att värdet är mindre än eller lika medscale_ratio, eftersom spelet inte tillåter mer.show_in_gui: falsehåller bakgrunden borta från ItemsAdders emojilista.
Steg 3: Lägg in bilden i DeluxeMenus-menyns titel
DeluxeMenus tolkar PlaceholderAPI-placeholders i menu_title. ItemsAdder ger dig %img_<name>% för bilden och %img_offset_<pixels>% för tomrum, som kan vara negativt.
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'&fi början behåller bildens riktiga färger. Utan det tonas bilden med titelns färg.%img_offset_-48%flyttar markören 48 pixlar åt vänster före bilden. GUI-skaparen använder det värdet för sin duk: 8 pixlar för kisttitelns indrag plus marginalen på 40 pixlar som den lägger till på varje sida.%img_gui_shop%är själva bakgrunden.- Den andra offseten flyttar tillbaka markören, så att
&8Shopskrivs ovanpå bilden där en titel hör hemma. Värdet beror på bildens bredd; GUI-skaparen räknar ut det åt dig.
Om du bakar in titeln i bilden i GUI-skaparen slutar titeln efter bakgrundens placeholder och det blir ingen andra offset.
Steg 4: Registrera menyn och bygg om packet
DeluxeMenus laddar bara menyer som står i dess config.yml:
gui_menus:
shop:
file: shop.yml- Kör
/iazipså att ItemsAdder bygger om resource packet med den nya bilden. - Kör
/dm reload. Öppna menyn en gång med/dm open shopför att kontrollera den. register_command: trueregistrerar/shopsom ett riktigt kommando, men bara när servern startar. Starta om servern en gång efter att du har lagt till en ny meny.- Joina igen, godkänn resource packet och öppna menyn.
Vanliga fel och lösningar
| Det här ser du | Orsak och lösning |
|---|---|
Titeln visar %img_gui_shop% som text | PlaceholderAPI saknas, eller så är namnet fel. Placeholdern använder typsnittsbildens namn från configen, utan namespace. |
| En tom ruta eller fel symbol i stället för bilden | Packet har inte byggts om, eller så har spelaren ett gammalt pack. Kör /iazip och joina igen. |
| Ingen bild alls för vissa spelare | De har tackat nej till serverns resource pack. Kontrollera hostingen av packet och klientens serverinställningar. |
| Bilden är förskjuten | Den första offseten eller y_position stämmer inte med PNG:ens marginaler. Exportera igen i stället för att gissa siffror. |
| Bilden är grå eller mörkare | &f saknas framför bilden. |
/shop är ett okänt kommando | Servern startades inte om efter att menyn lades till, eller så saknas menyn i config.yml. |
| ItemsAdder vägrar ta emot typsnittsbilden | y_position är större än scale_ratio, eller så är bilden större än 256×256. |