Ẩn và thay đổi kích thước các yếu tố HUD bằng gói tài nguyên
Thanh công cụ nhanh, tâm ngắm và thanh XP đều nằm trong một atlas texture. Dưới đây là cách làm cho một số phần của chúng trở nên vô hình, những gì không thể di chuyển và thủ thuật phông chữ cho văn bản HUD tùy chỉnh.
Không có cấu hình nào để ẩn thanh công cụ nhanh (hotbar). Cái có là một texture — và việc làm cho một phần của nó trong suốt sẽ loại bỏ nó về mặt hình ảnh trong khi mọi thứ vẫn hoạt động.
Mọi thứ đều nằm trong một tệp
assets/minecraft/textures/gui/sprites/hud/
Các phiên bản hiện đại chia atlas widgets.png cũ thành các sprite riêng lẻ: hotbar.png, crosshair.png, experience_bar_background.png, heart/full.png, v.v. Thay thế bất kỳ sprite nào bằng một PNG trong suốt hoàn toàn có cùng kích thước sẽ ẩn nó đi.
Cùng kích thước rất quan trọng. Một PNG trong suốt 1×1 ở nơi dự kiến có thanh công cụ nhanh 182×22 sẽ bị kéo giãn thay vì biến mất, tạo ra một dải bị nhòe.
Những gì bạn có thể và không thể làm
Có thể:
- ẩn bất kỳ yếu tố nào bằng cách làm cho sprite của nó trong suốt
- thiết kế lại mọi thứ — các trái tim khác nhau, tâm ngắm tối giản, thanh công cụ nhanh theo chủ đề
- thay đổi kích thước hiển thị bằng cách vẽ nội dung nhỏ hơn bên trong một khung vẽ cùng kích thước
Không thể:
- di chuyển một yếu tố. Vị trí được mã hóa cứng; chỉ có hình ảnh là dữ liệu.
- ẩn các ô thanh công cụ nhanh độc lập với khung — chúng là một sprite.
- thay đổi chức năng của một ô. Đây chỉ là yếu tố thẩm mỹ, và vật phẩm vẫn có thể chọn được.
Điểm cuối cùng đáng được nói rõ ràng: một thanh công cụ nhanh bị ẩn vẫn là một thanh công cụ nhanh. Đây không phải là một hạn chế về kho đồ, và Người chơi vẫn có thể sử dụng các ô.
Bẫy chín lát cắt
Một số sprite HUD được chín lát cắt (nine-sliced) — các góc cố định, các cạnh được kéo giãn. Một .mcmeta bên cạnh PNG khai báo các đường viền:
{ "gui": { "scaling": { "type": "nine_slice", "width": 200, "height": 20,
"border": { "left": 2, "top": 2, "right": 2, "bottom": 2 } } } }
Thay thế một sprite như vậy mà không khớp với mcmeta sẽ làm nó bị kéo giãn sai. Sao chép .mcmeta mặc định cùng với PNG của bạn khi nghi ngờ.
Văn bản HUD tùy chỉnh qua phông chữ
Thủ thuật thực sự mạnh mẽ: định nghĩa một nhà cung cấp phông chữ (font provider) mà các ký tự (glyph) của nó là hình ảnh, sau đó in các ký tự đó bằng /title hoặc một thanh bossbar. Văn bản sẽ hiển thị dưới dạng tác phẩm nghệ thuật của bạn.
assets/<namespace>/font/default.json
{ "providers": [
{ "type": "bitmap", "file": "my_pack:font/icons.png", "ascent": 8, "height": 9,
"chars": [""] }
] }
Sử dụng các điểm mã riêng tư (private-use codepoints) (từ trở lên) để không có gì xung đột với văn bản thực. Sau đó, /title @a actionbar {"text":""} sẽ vẽ hình ảnh của bạn lên thanh hành động (action bar).
Đây là cách các máy chủ hiển thị thanh máu tùy chỉnh, biểu tượng tiền tệ và thanh tiến trình mà không cần mod trên máy khách — chỉ cần một gói tài nguyên.
Phông chữ khoảng trống âm
Định nghĩa một ký tự với advances âm và bạn có thể di chuyển con trỏ ngược lại, xếp chồng các hình ảnh lên nhau. Đó là kỹ thuật đằng sau các HUD của máy chủ trông giống như các giao diện thực sự. Nó phức tạp, và đó là cách duy nhất để định vị bất cứ thứ gì.
Ẩn hoặc thiết kế lại các yếu tố HUD và xây dựng các nhà cung cấp phông chữ với các điểm mã được phân bổ cho bạn trong HUD Customizer & Font Pack Maker.