The Best Resource for Minecraft
The Best Resource for Minecraft

Приховування та зміна розміру елементів HUD за допомогою пакета ресурсів

Приховування та зміна розміру елементів HUD за допомогою пакета ресурсів

Панель швидкого доступу, перехрестя та смужка досвіду знаходяться в одному атласі текстур. Ось як зробити їхні частини невидимими, що не можна переміщати, а також трюк зі шрифтами для власного тексту HUD.

Налаштування для приховування панелі швидкого доступу немає. Але є текстура — зробивши її частину прозорою, можна приховати її візуально, зберігши працездатність.

Усе в одному файлі

assets/minecraft/textures/gui/sprites/hud/

Сучасні версії розділили старий widgets.png atlas into individual sprites: hotbar.png, crosshair.png, experience_bar_background.png, heart/full.png, and so on. Replacing any one with a fully transparent PNG of the same dimensions hides it.

Однаковий розмір має значення. Прозорий PNG 1×1 там, де очікується панель швидкого доступу 182×22, розтягнеться замість зникнення, утворивши розмиту смугу.

Що можна і чого не можна робити

Можна:

  • приховати будь-який елемент, зробивши його спрайт прозорим
  • змінити стиль усього — інші серця, мінімалістичне перехрестя, тематичну панель швидкого доступу
  • змінити видимий розмір, намалювавши менший вміст на полотні того ж розміру

Не можна:

  • перемістити елемент. Позиції жорстко закодовані; змінюється лише графіка.
  • приховати панель швидкого доступу слоти окремо від рамки — вони є одним спрайтом.
  • змінити функції слота. Це лише косметика, і предмет усе одно можна вибрати.

Останній пункт варто уточнити: прихована панель швидкого доступу залишається панеллю. Це не обмеження інвентарю, і гравець усе одно може використовувати слоти.

Пастка nine-slice

Кілька спрайтів HUD використовують nine-slice — фіксовані кути, розтягнуті краї. A .mcmeta beside the PNG declares the borders:

{ "gui": { "scaling": { "type": "nine_slice", "width": 200, "height": 20,
  "border": { "left": 2, "top": 2, "right": 2, "bottom": 2 } } } }

Замініть такий спрайт без відповідного mcmeta, і він розтягнеться неправильно. Скопіюйте ванільний .mcmeta alongside your PNG when in doubt.

Власний текст HUD через шрифти

Дійсно потужний трюк: визначте font provider, чиїми гліфами є зображення, а потім виводьте ці символи через /title or a bossbar. The text renders as your artwork.

assets/<namespace>/font/default.json
{ "providers": [
  { "type": "bitmap", "file": "my_pack:font/icons.png", "ascent": 8, "height": 9,
    "chars": [""] }
] }

Використовуйте кодові точки приватної зони ( upward) so nothing collides with real text. Then /title @a actionbar {"text":""} draws your image on the action bar.

Саме так сервери відображають власні смужки здоров'я, піктограми валюти та індикатори прогресу без модів на клієнті — лише за допомогою пакета ресурсів.

Шрифти з від'ємними інтервалами

Визначте гліф із від'ємним advances and you can move the cursor backwards, layering images on top of each other. That is the technique behind server HUDs that look like proper interfaces. It is fiddly, and it is the only way to position anything.

Приховуйте або змінюйте стиль елементів HUD та створюйте font providers із виділеними кодовими точками в HUD Customizer & Font Pack Maker.

Спробувати інструмент: HUD Customizer & Font Pack Maker →