{{indexmenu_n>30}}
====== Инвентарь игрока ======
Движок QEng поддерживает систему виртуального инвентаря команд или одиночных игроков. Это позволяет реализовывать квесты с поиском и использованием предметов (ключей, инструментов, валюты).
===== Что такое инвентарь? =====
В интерфейсе игрового окна инвентарь отображается как список предметов с изображениями, кратким описанием и кнопкой действия.
{{ :authors_main:inventory.png?800 |Пример отображения инвентаря на уровне}}
Каждый предмет представляет собой уникальный текстовый идентификатор (ключ), который можно добавлять, удалять или "активировать" (использовать).
===== Как отобразить инвентарь на уровне =====
- В тексте задания (в режиме **"Источник"**) вставьте HTML-блок, где должен отображаться список предметов:
Загрузка инвентаря...
- В скрипт задания (поле скрипта внизу уровня) добавьте JS-вызов:
showInventoryItems('inventory_container');
===== Управление предметами =====
==== Добавление предмета в инвентарь ====
Добавление предметов привязано к решению бонусов (или сквозных бонусов).
- Создайте бонус на уровне (например, "Найти молоток").
- В поле **"Текст после решения"** бонуса в режиме **"Источник"** (Source) вставьте скрипт:
После того как команда введет верный ответ для этого бонуса, предмет с ключом ''hammer123'' появится в их инвентаре.
==== Изображения предметов ====
Для корректного отображения предмета ''hammer123'' загрузите на cdn игры два файла картинок со строгими названиями:
* **''item_hammer123.jpg''** — превью предмета, показываемое в списке инвентаря.
* **''item_hammer123_big.jpg''** — детальное изображение, показываемое при клике по значку глаза (детальный просмотр).
==== Удаление предмета из инвентаря (Использование/Потеря) ====
Чтобы забрать предмет у команды (например, при отдаче персонажу или использовании для открытия двери):
- Создайте бонус, активируемый при прохождении.
- В его **"Текст после решения"** в режиме **"Источник"** пропишите:
**Важно:** Если предмет был добавлен с помощью **сквозного** бонуса, то удалить его обычным бонусом нельзя. Его нужно удалять также через сквозной бонус с более высоким порядковым номером.
==== Кнопка "Использовать" ====
При клике игроком по кнопке **"Использовать"** у предмета в инвентаре, движок автоматически пытается вбить код, совпадающий с идентификатором предмета.
* Например, при использовании предмета ''hammer123'' в поле ввода ответов автоматически отправится код ''hammer123''.
===== Демонстрация =====
Рабочий пример уровня с инвентарем и кодом можно посмотреть в [[https://qeng.org/game.php?gid=3493&tid=68367|Демо-игре для авторов]].