Pereiti prie turinio

DeluxeMenus GUI fonas su Nexo arba Oraxen

Savi meniu ekranai Minecraft yra triukas: fono paveikslėlis yra vienas simbolis meniu pavadinime. Nexo ir Oraxen tokius simbolius vadina glyph’ais. Šis gidas parodo abiejų pluginų glyph config, shift placeholder’ius, kurie perkelia paveikslėlį į vietą, ir kaip viską sujungti su DeluxeMenus.

Atnaujinta:

Kaip glyph’as tampa meniu fonu

Skrynios meniu rašo pavadinimą viršutiniame kairiajame kampe, o tame pavadinime gali būti simbolių iš serverio resursų paketo. Glyph’as yra toks simbolis, nupieštas iš tavo PNG. Įdėk didelį glyph’ą į pavadinimą, ir klientas jį nupieš per visą skrynios ekraną.

Jo vietą nustato dvi reikšmės. Neigiamas shift prieš glyph’ą perkelia žymeklį į kairę, todėl paveikslėlis prasideda nuo skrynios krašto, o ne nuo pavadinimo įtraukos. Glyph’o ascent perkelia jį vertikaliai, kol jis uždengia meniu. Slotai lieka tikri slotai: ten, kur paveikslėlyje matosi mygtukas, meniu turi tuščią slotą su material: air, kuris vis tiek vykdo paspaudimo veiksmus.

Jei vietoj to naudoji ItemsAdder, skaityk šio gido ItemsAdder versiją. Idėja ta pati, skiriasi tik config ir placeholder’ių pavadinimai.

Ko tau reikia

  • DeluxeMenus ir PlaceholderAPI tavo serveryje. DeluxeMenus apdoroja PlaceholderAPI placeholder’ius menu_title lauke.
  • Nexo arba Oraxen, kurie sukuria resursų paketą ir pateikia glyph bei shift placeholder’ius.
  • Oraxen atveju: glyph’ai inventoriaus pavadinimuose natūraliai veikia Paper 1.21.2 ar naujesnėje versijoje. Pagal Oraxen dokumentaciją senesniems serveriams reikia PacketEvents.
  • Fono PNG, ne didesnis nei 256×256 pikselių. Didesnės tekstūros vienam glyph’ui neleidžiamos.

1 žingsnis: suprojektuok foną

Sukurk meniu GUI kūrėje: pasirink eilutes, šabloną ar temą ir nupiešk didelius mygtukus per kelis slotus. Prie eksporto pasirink Nexo arba Oraxen, nustatyk namespace (pavyzdžiui, mymenus) ir meniu pavadinimą (pavyzdžiui, shop).

PNG yra 256 pikselių pločio ir nuo 164 pikselių (viena eilutė) iki 254 pikselių (šešios eilutės) aukščio. Paraštė aplink skrynią suteikia rėmeliams vietos išlįsti už įprasto meniu kontūro.

2a žingsnis: Nexo glyph config

Nexo skaito glyph’us iš bet kurio YAML failo savo glyphs aplanke. Tekstūra rašoma kaip namespace:path, čia tai PNG, esantis 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 yra piešiamas aukštis. Naudok tikrąjį PNG aukštį pikseliais.
  • ascent pakelia glyph’ą aukštyn. Nexo sako, kad height niekada negali būti mažesnis už ascent.
  • Placeholder’iai yra %nexo_gui_shop% glyph’ui ir %nexo_shift_<pixels>% tarpui, kuris gali būti neigiamas.

2b žingsnis: Oraxen glyph config

Oraxen skaito glyph’us iš plugins/Oraxen/glyphs/. Jo tekstūros kelias yra santykinis pack/textures/ atžvilgiu, todėl PNG keliauja į plugins/Oraxen/pack/textures/gui/shop.png:

plugins/Oraxen/glyphs/gui_shop.yml
gui_shop:
  texture: gui/shop
  ascent: 45
  height: 254
  • Oraxen reikalauja, kad height būtų didesnis arba lygus ascent; to reikalauja Minecraft.
  • Glyph’o placeholder’is yra %oraxen_gui_shop%. Poslinkiams yra du placeholder’iai: %oraxen_shift_<pixels>% perkelia į dešinę, %oraxen_neg_shift_<pixels>% į kairę. Kiekvienas palaiko iki 2047 pikselių.
  • Yra ir char raktas, kuriuo simbolį gali pasirinkti pats, bet jis neprivalomas.

3 žingsnis: DeluxeMenus meniu pavadinimas

Pavadinimas sujungia spalvą, poslinkį į kairę, glyph’ą, poslinkį atgal ir pavadinimo tekstą. Nexo atveju:

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'

Oraxen atveju keičiasi tik pavadinimas, nes poslinkiai į kairę turi savo placeholder’į:

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%oraxen_neg_shift_48%%oraxen_gui_shop%%oraxen_neg_shift_201%&8Shop'
  1. &f išlaiko paveikslėlio savas spalvas, o ne nuspalvina jį pavadinimo spalva.
  2. Pirmas poslinkis perkelia žymeklį 48 pikselius į kairę: GUI kūrėjas skaičiuoja 8 pikselius skrynios pavadinimo įtraukai plius 40 pikselių savo drobės paraštę.
  3. Antras poslinkis grąžina žymeklį atgal, kad &8Shop atsidurtų ant paveikslėlio. Jo reikšmė priklauso nuo paveikslėlio pločio; GUI kūrėjas ją apskaičiuoja.

Nexo ir Oraxen taip pat turi MiniMessage žymes, pavyzdžiui, <glyph:gui_shop> ir <shift:-48>. GUI kūrėjas rašo %…% formą, nes DeluxeMenus dokumentuoja PlaceholderAPI placeholder’ius menu_title laukui.

4 žingsnis: užregistruok meniu ir perkrauk

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Perkurk paketą: /nexo reload (arba /nexo reload pack) Nexo atveju, /oraxen reload all Oraxen atveju.
  2. Paleisk /dm reload ir išbandyk su /dm open shop.
  3. Vieną kartą perkrauk serverį. DeluxeMenus /shop iš register_command: true užregistruoja tik startuodamas.
  4. Prisijunk iš naujo, kad gautum naują resursų paketą.

Dažnos klaidos ir jų taisymas

Ką mataiPriežastis ir sprendimas
%nexo_gui_shop% arba %oraxen_gui_shop% kaip tekstasTrūksta PlaceholderAPI arba glyph ID placeholder’yje nesutampa su raktu glyph faile.
Tuščias langelis arba neteisingas simbolisPaketas nebuvo perkurtas arba žaidėjas turi seną paketą. Perkrauk pluginą ir prisijunk iš naujo.
Oraxen glyph’o trūksta tik meniu pavadinimuoseServeris senesnis nei Paper 1.21.2 ir PacketEvents neįdiegtas.
Paveikslėlis pasislinkęsShift arba ascent neatitinka PNG. Eksportuok iš naujo iš to paties dizaino.
Paveikslėlis tamsesnis nei PNGPrieš pirmą placeholder’į trūksta &f.
Glyph’as atmetamas įkeliantascent didesnis už height arba PNG didesnis nei 256×256.
/shop nieko nedaroMeniu nėra config.yml arba jį pridėjus serveris nebuvo perkrautas.

Dažniausiai užduodami klausimai

Ar nustatymas skiriasi Nexo ir Oraxen?

Tik detalėmis. Nexo tekstūrą rašo kaip namespace:path ir naudoja %nexo_shift_N% su neigiamais skaičiais. Oraxen priima kelią, santykinį pack/textures/ atžvilgiu, ir turi %oraxen_neg_shift_N% poslinkiui į kairę.

Kodėl mano glyph’as nerodomas DeluxeMenus pavadinime?

Dažniausiai placeholder’is nepakeičiamas (trūksta PlaceholderAPI arba neteisingas glyph ID), resursų paketas nebuvo perkurtas arba žaidėjas neįsikėlė naujo paketo. Su Oraxen serveriuose, senesniuose nei Paper 1.21.2, pavadinimams reikia PacketEvents.

Kokios perkrovimo komandos man reikia?

Nexo atveju /nexo reload, kuri perkrauna viską, arba /nexo reload pack tik paketui. Oraxen atveju /oraxen reload all. Tada /dm reload meniu failui.

Ar galiu naudoti didesnę nei 256×256 pikselių tekstūrą?

Ne kaip vieną glyph’ą. Minecraft riboja glyph’us iki 256×256 pikselių. Meniu fonas iš GUI kūrėjo bet kokiam eilučių skaičiui telpa į šią ribą.

Šaltiniai

Patikrinta pagal oficialią dokumentaciją: