Ресурс пак для ваших игроков позволяющий добавлять кастомное ui сундуков как на джаве в items-adder на минималках . Сам ресурс пак нуждается в минимальных знаниях написания плагинов и их редактирования .
Показанный пример -
Автор (оригинальная страница)
Отличие Api
• Сундуки и другие блоки не размещаются.
• Если игрок получит урон , когда инвентарь открыт, инвентарь не закроется.
• Вы можете указать любое количество слотов в вашем инвентаре. (До 1000 подтверждено)
• Можно указать вертикальную длину слотов инвентаря. (макс. 6)
Добавление на сервер
Можете прочитать инструкцию которая здесь переведенна или же перейти на оригинальную страницу и прочитать инструкцию без перевода .
Добавление ресурс пака -
Скачиваем ресурс пак и закидаваем на сервер , открываем файл recource_pack.yml , ставим значение force_resources на true чтобы игроки обязательно скачивали дополнение в виде ресурс пака и в списке под resource_stack пишем наш ресурс пак под названием которое вы поставили на ресурс пак .
Вид кода (если вы не чего не поняли)
force_resources: true
resource_stack:
- InventoryUIResourcePack.mcpack
Код для добавлении кастомного UI -
1 шаг
Следующий код должен быть вызван, когда плагин включен.
InventoryUI::setup($this)
2 шаг
Открытие кастомного инвентаря
$slot указывает количество слотов в инвентаре и должно быть числом больше нуля.
$title это название инвентаря.
$length вводится как вертикальная длина инвентаря. Если ноль, он автоматически корректируется.
/** @var Player $player */
$player->setCurrentWindow(new CustomInventory($slot, $title, $length));
3 шаг
Расширение для кастомного инвентаря
class SampleInventory extends CustomInventory {
public function __construct() {
parent::__construct(54, "Sample Inventory");
}
public function open(Player $player): void {
// Открытие инвертаря.
}
public function tick(int $tick): void {
//Вызывание тика когда кто то открывает инвентарь.
}
public function click(Player $player, int $slot, Item $sourceItem, Item $targetItem): bool {
//Вызывается при работе слота в инвентаре.
//Если возвращаемое значение истинно, операция отменяется.
return false;
}
public function close(Player $player): void {
//Вызывается, когда игрок закрывает инвентарь.
}
}
Зачем это тебе?
Я незнаю , думай сам для чего это тебе . Я буду юзать для уменьшения инвентаря от лишнего места в интерфейсах сундуков на старых версиях