Menyembunyikan dan Mengubah Ukuran Elemen HUD dengan Paket Sumber Daya
Bilah pintasan (hotbar), bidikan (crosshair), dan bilah XP semuanya berada dalam satu atlas tekstur. Berikut cara membuat bagian-bagiannya tidak terlihat, apa yang tidak bisa dipindahkan, dan trik font untuk teks HUD kustom.
Tidak ada konfigurasi untuk menyembunyikan bilah pintasan (hotbar). Yang ada hanyalah tekstur — dan membuat sebagian darinya transparan akan menghilangkannya secara visual sementara semuanya tetap berfungsi.
Semuanya ada dalam satu berkas
assets/minecraft/textures/gui/sprites/hud/
Versi modern memisahkan atlas widgets.png lama menjadi sprite individual: hotbar.png, crosshair.png, experience_bar_background.png, heart/full.png, dan seterusnya. Mengganti salah satunya dengan PNG yang sepenuhnya transparan dengan dimensi yang sama akan menyembunyikannya.
Dimensi yang sama itu penting. PNG transparan 1×1 di tempat bilah pintasan 182×22 diharapkan akan meregang daripada menghilang, menghasilkan pita yang buram.
Apa yang bisa dan tidak bisa Anda lakukan
Bisa:
- menyembunyikan elemen apa pun dengan membuat sprite-nya transparan
- menata ulang semuanya — hati yang berbeda, bidikan minimal, bilah pintasan bertema
- mengubah ukuran yang terlihat dengan menggambar konten yang lebih kecil di dalam kanvas berukuran sama
Tidak bisa:
- memindahkan elemen. Posisi sudah diatur secara baku (hardcoded); hanya karya seni yang berupa data.
- menyembunyikan slot bilah pintasan secara independen dari bingkai — keduanya adalah satu sprite.
- mengubah fungsi slot. Ini hanya kosmetik, dan item masih bisa dipilih.
Poin terakhir ini patut dinyatakan dengan jelas: bilah pintasan yang tersembunyi tetaplah bilah pintasan. Ini bukan pembatasan inventaris, dan Pemain masih bisa menggunakan slot tersebut.
Jebakan sembilan-potongan (nine-slice)
Beberapa sprite HUD adalah sembilan-potongan (nine-sliced) — sudut tetap, tepi diregangkan. Berkas .mcmeta di samping PNG menyatakan batas-batasnya:
{ "gui": { "scaling": { "type": "nine_slice", "width": 200, "height": 20,
"border": { "left": 2, "top": 2, "right": 2, "bottom": 2 } } } }
Ganti sprite tersebut tanpa mencocokkan mcmeta dan itu akan meregang dengan salah. Salin .mcmeta bawaan (vanilla) di samping PNG Anda jika ragu.
Teks HUD Kustom melalui Font
Trik yang benar-benar ampuh: definisikan penyedia font (font provider) yang glyph-nya adalah gambar, lalu cetak karakter-karakter tersebut dengan /title atau bilah bos (bossbar). Teks akan dirender sebagai karya seni Anda.
assets/<namespace>/font/default.json
{ "providers": [
{ "type": "bitmap", "file": "my_pack:font/icons.png", "ascent": 8, "height": 9,
"chars": [""] }
] }
Gunakan titik kode penggunaan pribadi (private-use codepoints) ( ke atas) agar tidak ada yang bertabrakan dengan teks asli. Kemudian /title @a actionbar {"text":""} akan menggambar gambar Anda di bilah aksi (action bar).
Ini adalah cara server menampilkan bilah kesehatan kustom, ikon mata uang, dan pengukur kemajuan tanpa mod pada klien — hanya paket sumber daya.
Font Ruang Negatif (Negative-space fonts)
Definisikan glyph dengan advances negatif dan Anda dapat memindahkan kursor mundur, melapisi gambar satu sama lain. Itulah teknik di balik HUD server yang terlihat seperti antarmuka yang tepat. Ini rumit, dan ini satu-satunya cara untuk memposisikan apa pun.
Sembunyikan atau tata ulang elemen HUD dan buat penyedia font dengan titik kode yang dialokasikan untuk Anda di HUD Customizer & Font Pack Maker.