Скокни до содржината

Сопствена GUI позадина во DeluxeMenus со ItemsAdder

Minecraft нема поставка за слика како позадина на мени, а сепак многу сервери имаат chest менија што изгледаат како сопствени екрани. Трикот е font image во насловот на менито: ItemsAdder ја претвора твојата PNG во знак, а негативните поместувања го носат тој знак над сандакот. Овој водич го поставува тоа чекор по чекор за DeluxeMenus.

Ажурирано:

Како функционира GUI со текстура

Chest менито го прикажува својот наслов во горниот лев агол. Насловот е текст, а текстот може да содржи знаци од resource pack-от на серверот. ItemsAdder може секоја PNG да ја претвори во таков знак, наречен font image. Стави голема font image во насловот и клиентот ќе ја нацрта преку екранот на сандакот.

Уште два дела се потребни за сѐ да се порамни. Негативното поместување (offset) го поместува курсорот налево пред сликата, за сликата да почне на левиот раб на сандакот наместо по вовлекувањето на насловот. y_position на font image ја поместува нагоре или надолу додека не го покрие целото мени.

Слотовите остануваат обични слотови. Каде што твојата слика покажува копче, менито има празен слот на кој може да се кликне, со material: air и свои акции при клик.

Што ти треба

  • DeluxeMenus и PlaceholderAPI на Spigot или Paper сервер.
  • ItemsAdder, кој го гради resource pack-от и ги дава %img_…% placeholders.
  • Исправно доставување на resource pack-от, за играчите навистина да го преземат (ItemsAdder нуди self-hosting и други опции за хостирање).
  • PNG за позадина. Minecraft не дозволува font глифови поголеми од 256×256 пиксели, па сликата мора да собере во тоа.

Чекор 1: Направи ја сликата за позадина

Дизајнирај го менито во GUI креаторот: избери редови, тема или шаблон и нацртај големи копчиња преку повеќе слотови. Избери ItemsAdder како извоз, внеси го твојот namespace (на пример mymenus) и името на менито (на пример shop).

Извезената PNG е широка 256 пиксели. Нејзината висина зависи од редовите, од 164 пиксели за еден ред до 254 пиксели за шест. Дополнителниот простор околу сандакот им овозможува на рамките и украсите да излезат надвор од нормалниот контур на менито.

Чекор 2: Регистрирај ја font image во ItemsAdder

Копирај ја PNG во твојот namespace и додај запис во font_images. Ова е она што GUI креаторот го извезува за мени со шест реда:

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

Самата слика оди во plugins/ItemsAdder/contents/mymenus/resourcepack/assets/mymenus/textures/gui/shop.png.

  • scale_ratio е висината на која се црта сликата. Користи ја вистинската висина на PNG во пиксели за ништо да не се развлече.
  • y_position ја поместува сликата вертикално. ItemsAdder бара да биде помала или еднаква на scale_ratio, бидејќи играта не дозволува повеќе.
  • show_in_gui: false ја држи позадината надвор од листата со емоџи на ItemsAdder.

Чекор 3: Стави ја сликата во насловот на DeluxeMenus менито

DeluxeMenus ги обработува PlaceholderAPI placeholders во menu_title. ItemsAdder дава %img_<name>% за сликата и %img_offset_<pixels>% за празен простор, кој може да биде негативен.

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 на почетокот ја чува сликата во нејзините вистински бои. Без него сликата се обојува со бојата на насловот.
  2. %img_offset_-48% го поместува курсорот 48 пиксели налево пред сликата. GUI креаторот ја користи оваа вредност за своето платно: 8 пиксели за вовлекувањето на насловот на сандакот плус маргината од 40 пиксели што ја додава од секоја страна.
  3. %img_gui_shop% е самата позадина.
  4. Второто поместување го враќа курсорот назад, за &8Shop да се напише врз сликата, таму каде што припаѓа насловот. Неговата вредност зависи од ширината на твојата слика; GUI креаторот ја пресметува наместо тебе.

Ако го вцрташ насловот во сликата во GUI креаторот, насловот завршува по placeholder-от за позадината и нема второ поместување.

Чекор 4: Регистрирај го менито и изгради го пакетот повторно

DeluxeMenus ги вчитува само менијата наведени во неговиот config.yml:

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Изврши /iazip за ItemsAdder повторно да го изгради resource pack-от со новата слика.
  2. Изврши /dm reload. Отвори го менито еднаш со /dm open shop за да го провериш.
  3. register_command: true го регистрира /shop како вистинска команда, но само при стартување на серверот. Рестартирај го серверот еднаш откако ќе додадеш ново мени.
  4. Влези повторно, прифати го resource pack-от и отвори го менито.

Чести грешки и решенија

Што гледашПричина и решение
Насловот го прикажува %img_gui_shop% како текстPlaceholderAPI недостасува или името е погрешно. Placeholder-от го користи името на font image од конфигурацијата, без namespace.
Празна кутија или погрешен симбол наместо сликатаПакетот не е повторно изграден или играчот има стар пакет. Изврши /iazip и влези повторно.
Некои играчи воопшто не ја гледаат сликатаГо одбиле resource pack-от на серверот. Провери го хостирањето на пакетот и поставките за серверот кај клиентот.
Сликата е поместенаПрвото поместување или y_position не се совпаѓа со маргините на твојата PNG. Извези повторно наместо да погодуваш бројки.
Сликата е сива или потемнаНедостасува &f пред сликата.
/shop е непозната командаСерверот не е рестартиран откако е додадено менито, или менито недостасува во config.yml.
ItemsAdder ја одбива font imagey_position е поголема од scale_ratio или сликата е поголема од 256×256.

Често поставувани прашања

Дали играчите треба да преземат нешто за сопствена GUI позадина?

Да, resource pack-от на серверот што го гради ItemsAdder. Без него насловот прикажува празен квадрат или ништо. ItemsAdder може автоматски да го испрати пакетот кога играчите влегуваат.

Зошто насловот во DeluxeMenus го прикажува %img_…% како текст?

Placeholder-от не се заменува. Провери дали е инсталиран PlaceholderAPI, дали ItemsAdder е вчитан и дали името по img_ е точно името на font image од твојата конфигурација.

Можам ли да ја користам истата позадина за менија со помалку редови?

Само ако сликата одговара на редовите. Сандак со три реда е понизок од сандак со шест, па му треба своја PNG и свој scale_ratio. GUI креаторот ја извезува точната висина за секој број редови.

Дали ова работи без ItemsAdder?

Истиот трик работи со Nexo или Oraxen глифови. Без никаков плагин за resource pack сепак можеш да направиш уредно мени со обоени стаклени панели, што GUI креаторот го извезува со опцијата „None“.

Извори

Проверено според официјалната документација: