Сценарии и интерактивные элементы в заданиях
Динамическая информация о игроке/команде
Движок поддерживает специальные плейсхолдеры, которые автоматически заменяются на актуальные значения:
!username!— логин текущего игрока.!name!— имя текущего игрока.!teamname!— название команды.!game_id!— ID текущей игры.!task_id!— ID текущего задания.!task_n!— порядковый номер задания в игре.!bonus!— суммарная стоимость всех набранных бонусов (баллов) команды.!task_bonus!— сумма бонусов, набранных командой на текущем задании.
Отображение суммарного бонуса в штурмовой игре
Описано подробно на странице стилизации уровней.
Кнопки для автоматического ввода ответов
Если игроку нужно предложить нажать на кнопку вместо ручного ввода кода, переключите редактор задания в режим исходного кода (“Источник”) и вставьте один из вариантов:
<!-- Обычный ввод кода -->
<button type="button" class="btn btn-default btn-block shadow" onclick="enter('Код который надо вбить')">Вбить код</button>
<!-- Ввод без отображения результата на экране -->
<button type="button" class="btn btn-default btn-block shadow" onclick="enter_silent('Код который надо вбить')">Вбить код без отображения результата</button>
<!-- Ввод с подтверждением действия (диалоговое окно) -->
<button type="button" class="btn btn-default btn-block shadow confirm" onclick="enter('Код который надо вбить')">Вбить код с подтверждением</button>
<!-- Ввод с подтверждением и скрытием результата -->
<button type="button" class="btn btn-default btn-block shadow confirm" onclick="enter_silent('Код который надо вбить')">Вбить код с подтверждением и без отображения результата</button>
Динамическое замещение контента (Replacer)
Вы можете заменять куски текста или медиа на текущем уровне на содержимое других игровых элементов (правильно вбитых кодов, открывшихся подсказок или бонусов) по мере прохождения:
<span class='replacer' data-find='чем заменять'>Любой текст до замены</span>
или
<div class='replacer' data-find='чем заменять'>Любой текст до замены</div>
Параметр data-find указывает, что именно нужно скопировать на место этого тега:
#b3 .bonus-hint— содержимое (описание) 3-го бонуса.#b3 .bonus-description— формулировка задания 2-го (или 3-го) бонуса.#c4 .right-answer— правильно вбитый игроками 4-й код (показывает сам вбитый ответ).#hb2— текст 2-й подсказки (или штрафной подсказки).
<note important>
Важно: Между номером элемента (например, #c4) и его классом (например, .right-answer) обязательно должен стоять пробел.
* Неверно: #c4.right-answer
* Верно: #c4 .right-answer
</note>
Скрипты в заданиях и бонусах
Готовые шаблоны и примеры JavaScript-сценариев для уровней можно посмотреть на странице: Типичные скрипты.