authors_main:task_editor:advanced:inventory

Это старая версия документа!


Инвентарь игрока

Движок QEng поддерживает систему виртуального инвентаря команд или одиночных игроков. Это позволяет реализовывать квесты с поиском и использованием предметов (ключей, инструментов, валюты).

В интерфейсе игрового окна инвентарь отображается как список предметов с изображениями, кратким описанием и кнопкой действия.

Пример отображения инвентаря на уровне

Каждый предмет представляет собой уникальный текстовый идентификатор (ключ), который можно добавлять, удалять или «активировать» (использовать).

1. В тексте задания (в режиме «Источник») вставьте HTML-блок, где должен отображаться список предметов:

<div id="inventory_container">Загрузка инвентаря...</div>

2. В скрипт задания (поле скрипта внизу уровня) добавьте JS-вызов:

showInventoryItems('inventory_container');

Добавление предметов привязано к решению бонусов (или сквозных бонусов). 1. Создайте бонус на уровне (например, «Найти молоток»). 2. В поле «Текст после решения» бонуса в режиме «Источник» (Source) вставьте скрипт:

<script>
addInventoryItem('hammer123');
</script>

После того как команда введет верный ответ для этого бонуса, предмет с ключом hammer123 появится в их инвентаре.

Для корректного отображения предмета hammer123 загрузите на cdn игры два файла картинок со строгими названиями:

  • item_hammer123.jpg — превью предмета, показываемое в списке инвентаря.
  • item_hammer123_big.jpg — детальное изображение, показываемое при клике по значку глаза (детальный просмотр).

Чтобы забрать предмет у команды (например, при отдаче персонажу или использовании для открытия двери): 1. Создайте бонус, активируемый при прохождении. 2. В его «Текст после решения» в режиме «Источник» пропишите:

<script>
removeInventoryItem('hammer123');
</script>

<note important> Важно: Если предмет был добавлен с помощью сквозного бонуса, то удалить его обычным бонусом нельзя. Его нужно удалять также через сквозной бонус с более высоким порядковым номером. </note>

При клике игроком по кнопке «Использовать» у предмета в инвентаре, движок автоматически пытается вбить код, совпадающий с идентификатором предмета. * Например, при использовании предмета hammer123 в поле ввода ответов автоматически отправится код hammer123.

Рабочий пример уровня с инвентарем и кодом можно посмотреть в Демо-игре для авторов.

  • authors_main/task_editor/advanced/inventory.1781562765.txt.gz
  • Последние изменения: 2026/06/15 22:32
  • admin