İçeriğe geç

Nexo veya Oraxen ile DeluxeMenus GUI arka planı

Minecraft’taki özel menü ekranları aslında bir numara: arka plan resmi, menü başlığındaki tek bir karakterdir. Nexo ve Oraxen bu karakterlere glyph der. Bu rehber iki eklentinin glyph config’ini, resmi yerine oturtan shift placeholder’larını ve her şeyi DeluxeMenus’e nasıl bağlayacağını gösteriyor.

Güncellendi:

Bir glyph nasıl menü arka planına dönüşür

Bir sandık menüsü başlığını sol üst köşeye yazar ve bu başlık sunucunun kaynak paketindeki (resource pack) karakterleri içerebilir. Glyph, PNG’nden çizilen böyle bir karakterdir. Başlığa büyük bir glyph koyarsan istemci onu bütün sandık ekranının üzerine boyar.

Konumunu iki değer belirler. Negatif bir shift, glyph’ten önce imleci sola kaydırır; böylece resim başlık girintisinden değil, sandığın kenarından başlar. Glyph’in ascent değeri ise onu menüyü kaplayana kadar dikey olarak taşır. Slotlar gerçek slot olarak kalır: resimde buton görünen yerde menüde material: air olan ve yine de tıklama eylemlerini çalıştıran boş bir slot vardır.

Bunun yerine ItemsAdder kullanıyorsan bu rehberin ItemsAdder sürümünü oku. Fikir aynı, yalnızca config ve placeholder adları farklı.

Neye ihtiyacın var

  • Sunucunda DeluxeMenus ve PlaceholderAPI. DeluxeMenus, menu_title içindeki PlaceholderAPI placeholder’larını işler.
  • Kaynak paketini oluşturan ve glyph ile shift placeholder’larını sağlayan Nexo veya Oraxen.
  • Oraxen için: envanter başlıklarındaki glyph’ler Paper 1.21.2 veya daha yenisinde doğrudan çalışır. Oraxen dokümantasyonuna göre daha eski sunucularda PacketEvents gerekir.
  • En fazla 256×256 piksellik bir arka plan PNG’si. Tek bir glyph için daha büyük dokulara izin verilmez.

1. adım: Arka planı tasarla

Menüyü GUI Maker’da kur: satır sayısını, bir hazır şablon veya tema seç ve birden fazla slota yayılan büyük butonlar çiz. Dışa aktarma altında Nexo veya Oraxen’i seç, bir namespace (örneğin mymenus) ve bir menü adı (örneğin shop) belirle.

PNG 256 piksel genişliğinde ve 164 piksel (tek satır) ile 254 piksel (altı satır) arasında yüksekliktedir. Sandığın etrafındaki boşluk, çerçevelerin normal menü çerçevesinin dışına taşmasına yer açar.

2a. adım: Nexo glyph config’i

Nexo, glyph’leri glyphs klasöründeki herhangi bir YAML dosyasından okur. Doku namespace:path olarak yazılır; burada plugins/Nexo/pack/assets/mymenus/textures/gui/shop.png konumundaki PNG:

plugins/Nexo/glyphs/gui_shop.yml
gui_shop:
  texture: mymenus:gui/shop
  ascent: 45
  height: 254
  • height çizilen yüksekliktir. PNG’nin gerçek piksel yüksekliğini kullan.
  • ascent glyph’i yukarı taşır. Nexo’ya göre height asla ascent’ten küçük olmamalı.
  • Placeholder’lar glyph için %nexo_gui_shop%, boşluk için de negatif olabilen %nexo_shift_<pixels>%.

2b. adım: Oraxen glyph config’i

Oraxen glyph’leri plugins/Oraxen/glyphs/ klasöründen okur. Doku yolu pack/textures/ klasörüne görelidir, bu yüzden PNG plugins/Oraxen/pack/textures/gui/shop.png konumuna gider:

plugins/Oraxen/glyphs/gui_shop.yml
gui_shop:
  texture: gui/shop
  ascent: 45
  height: 254
  • Oraxen, height değerinin ascent değerinden büyük veya ona eşit olmasını ister; Minecraft bunu zorunlu kılar.
  • Glyph placeholder’ı %oraxen_gui_shop%. Shift için iki placeholder var: %oraxen_shift_<pixels>% sağa, %oraxen_neg_shift_<pixels>% sola kaydırır. İkisi de 2047 piksele kadar destekler.
  • Karakteri kendin seçmek için bir char anahtarı var, ama isteğe bağlı.

3. adım: DeluxeMenus menü başlığı

Başlık renk, sola bir shift, glyph, geri bir shift ve başlık metnini birleştirir. Nexo için:

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 için yalnızca başlık değişir, çünkü sola kaydırmaların kendi placeholder’ı var:

plugins/DeluxeMenus/gui_menus/shop.yml
menu_title: '&f%oraxen_neg_shift_48%%oraxen_gui_shop%%oraxen_neg_shift_201%&8Shop'
  1. &f resmi başlık rengiyle boyamak yerine kendi renklerinde tutar.
  2. İlk shift imleci 48 piksel sola kaydırır: GUI Maker sandık başlığı girintisi için 8 piksel artı tuvalinin 40 piksellik kenar boşluğunu sayar.
  3. İkinci shift imleci geri getirir, böylece &8Shop resmin üzerine oturur. Değeri resminin genişliğine bağlıdır; GUI Maker bunu hesaplar.

Nexo ve Oraxen’de <glyph:gui_shop> ve <shift:-48> gibi MiniMessage etiketleri de var. GUI Maker %…% biçimini yazar, çünkü DeluxeMenus menu_title için PlaceholderAPI placeholder’larını belgeliyor.

4. adım: Menüyü kaydet ve yeniden yükle

plugins/DeluxeMenus/config.yml
gui_menus:
  shop:
    file: shop.yml
  1. Paketi yeniden oluştur: Nexo için /nexo reload (veya /nexo reload pack), Oraxen için /oraxen reload all.
  2. /dm reload çalıştır ve /dm open shop ile test et.
  3. Sunucuyu bir kez yeniden başlat. DeluxeMenus, register_command: true ile /shop komutunu yalnızca açılışta kaydeder.
  4. Yeni kaynak paketini alman için sunucuya yeniden gir.

Sık görülen hatalar ve çözümleri

Ne görüyorsunNeden ve çözüm
%nexo_gui_shop% veya %oraxen_gui_shop% metin olarak görünüyorPlaceholderAPI eksik ya da placeholder’daki glyph ID’si glyph dosyasındaki anahtarla uyuşmuyor.
Boş bir kutu veya yanlış bir sembolPaket yeniden oluşturulmamış ya da oyuncuda eski paket var. Eklentiyi yeniden yükle ve sunucuya tekrar gir.
Oraxen glyph’i yalnızca menü başlıklarında yokSunucu Paper 1.21.2’den eski ve PacketEvents kurulu değil.
Resim kaymışShift veya ascent PNG ile uyuşmuyor. Aynı tasarımdan yeniden dışa aktar.
Resim PNG’den daha koyuİlk placeholder’ın önünde &f eksik.
Glyph yüklenirken reddediliyorascent, height değerinden büyük ya da PNG 256×256’dan büyük.
/shop hiçbir şey yapmıyorMenü config.yml’de yok ya da eklendikten sonra sunucu yeniden başlatılmamış.

Sıkça sorulan sorular

Nexo ve Oraxen için kurulum farklı mı?

Yalnızca ayrıntılarda. Nexo dokuyu namespace:path olarak yazar ve negatif sayılarla %nexo_shift_N% kullanır. Oraxen pack/textures/ klasörüne göreli bir yol alır ve sola kaydırmak için %oraxen_neg_shift_N% kullanır.

Glyph’im neden DeluxeMenus başlığında görünmüyor?

Genelde placeholder yerine konmuyordur (PlaceholderAPI eksik veya glyph ID’si yanlış), kaynak paketi yeniden oluşturulmamıştır ya da oyuncu yeni paketi yüklememiştir. Paper 1.21.2’den eski sunuculardaki Oraxen’de başlıklar için PacketEvents gerekir.

Hangi yeniden yükleme komutuna ihtiyacım var?

Nexo için her şeyi yeniden yükleyen /nexo reload ya da yalnızca paket için /nexo reload pack. Oraxen için /oraxen reload all. Ardından menü dosyası için /dm reload.

256×256 pikselden büyük bir doku kullanabilir miyim?

Tek bir glyph olarak hayır. Minecraft glyph’leri 256×256 piksel ile sınırlar. GUI Maker’dan çıkan bir menü arka planı her satır sayısında bu sınırın içinde kalır.

Kaynaklar

Resmî dokümantasyonla karşılaştırıldı: