# Библиотека hud ```lua -- Открывает инвентарь. hud.open_inventory() -- Закрывает инвентарь. hud.close_inventory() -- Открывает инвентарь и UI. -- Если макет UI не существует - бросается исключение. -- Если invid не указан, создаётся виртуальный (временный) инвентарь. -- Возвращает invid или id виртуального инвентаря. hud.open( -- Макет UI layoutid: str, -- Не открывать инвентарь игрока [опционально] disablePlayerInventory: bool, -- Инвентарь, к которому будет привязан UI макет [опционально] invid: int ) -> int -- Открывает инвентарь и UI блока. -- Если блок не имеет макета UI - бросается исключение. -- Возвращает id инвентаря блока -- (при *"inventory-size"=0* создаётся виртуальный инвентарь, -- который удаляется после закрытия), и id макета UI. hud.open_block(x: int, y: int, z: int) -> int, str ``` > [!NOTE] > Одновременно может быть открыт только один блок ```lua -- Показывает элемент в режиме оверлея. -- Также показывает инвентарь игрока, если playerinv - **true**. -- Через args можно указать массив значений параметров, что будут переданы -- в on_open показываемого оверлея. hud.show_overlay(layoutid: str, playerinv: bool, [опционально] args: table) -- Добавляет постоянный элемент на экран. Элемент не удаляется при -- закрытии инвентаря. Чтобы не перекрывать затенение в режиме -- инвентаря нужно установить z-index элемента меньшим чем -1. -- В случае тега inventory, произойдет привязка слотов к инвентарю игрока. hud.open_permanent(layoutid: str) -- Удаляет элемент с экрана. hud.close(layoutid: str) -- Дает ID инвентаря открытого блока или 0. hud.get_block_inventory() -> int -- Дает ID игрока, к которому привязан пользовательский интерфейс. hud.get_player() -> int -- Открывает меню паузы. hud.pause() -- Закрывает меню паузы. hud.resume() -- Возвращает true если открыто меню паузы. hud.is_paused() -> bool -- Возвращает true если открыт инвентарь или оверлей. hud.is_inventory_open() -> bool ```