Сценарії та інтерактивні елементи в завданнях
Динамічна інформація про гравця/команду
Движок підтримує спеціальні плейсхолдери, які автоматично замінюються на актуальні значення:
!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-сценаріїв для рівнів можна подивитися на сторінці: Типові скрипти.