Темплейты
Темплейты - это выражения, которые вычисляются на сервере до отправки игрокам, а во время игры игрокам будет показан только результат выражения для именно их команды и их положения в игре. Код темплейта НЕ виден даже в исходном коде страницы, в коде будет только результат вычисления темплейта.
Классические применения темплейтов - это индивидуальные задания для команды либо бонусы, текст которых зависит от того, каким кодом был закрыт бонус.
Темплейты можно прописывать в обычном режиме редактора или в режиме исходника.
Сейчас темплейты можно прописывать в текст задания, текст подсказки, тексты бонусов. Темплейты могут быть вложенными.
Google документ для генерации темплейтов
Этот док можно скопировать к себе и использовать для лёгкого создания темплейтов в уровнях.
Различные виды темплейтов
Модификация задания для команды
Можно часть текста задания показывать разным для разных команд.
По ID линейки
{% match line }:{ {%= 688 /*можно добавить комментарий с названием линейки*/}:{ Текст для линейки с id 688 %} {%= 643 }:{ Текст для линейки с id 643 %} {%= 653,655 }:{ Текст для линейки с id 653 или 655 %} {%= ?}:{ Текст для любой другой линейки %} %}
По ID команды
{% match team }:{ {%= 688 /*можно добавить комментарий с названием команды*/}:{ Текст для команды с id 688 %} {%= 643 }:{ Текст для команды с id 643 %} {%= 653,655 }:{ Текст для команды с id 653 или 655 %} {%= ?}:{ Текст для любой другой команды %} %}
Привязка события в задании к реальному времени
{% unix_time 1639999296/*дата в unix time*/, Откроется, Осталось}:{ Этот текст будет показан после наступления указанного времени %}
Темплейты с использованием ответов в задании
Проверка последнего (текущего) вбитого ответа в первый код
code_1 - можно заменить 1 на номер нужного кода
{% match code_1 }:{ {%= abc}:{ В первый код вбит ответ abc %} {%= bac, cba}:{ В первый код вбит ответ bac или cba %} {%= !no_answer!}:{ В первый код ещё не вбит ответ %} {%= ?}:{ Какой-то другой ответ вбит в первый код %} %}
Проверка первого вбитого ответа в первый код
code_first_1 - можно заменить 1 на номер нужного кода
{% match code_first_1 }:{ {%= abc}:{ В первый код первым вбит ответ abc %} {%= bac, cba}:{ В первый код первым вбит ответ bac или cba %} {%= !no_answer!}:{ В первый код ещё не вбит ответ %} {%= ?}:{ Какой-то другой ответ вбит в первый код %} %}
Также можно использовать для проверки бонусов:
bonus_1 - последний (текущий) вбитый ответ в первый бонус. 1 можно заменить на нужный номер бонуса.
bonus_first_1 - первый вбитый ответ в первый бонус. 1 можно заменить на нужный номер бонуса.
Также можно использовать ответы сквозных бонусов. Сквозные бонусы можно использовать в темплейтах и в заданиях, где их не видно.
gbonus_1 - последний (текущий) вбитый ответ в первый сквозной бонус. 1 можно заменить на нужный номер сквозного бонуса.
gbonus_first_1 - первый вбитый ответ в первый сквозной бонус. 1 можно заменить на нужный номер сквозного бонуса.
Темплейты с проверкой кто вбил код
К темплейтам в предыдущей секции можно добавить who_, чтобы проверить кто вбил код или бонус. Или кто первый вбил код или бонус.
Значения будут:
me - если ответ вбил текущий игрок
other - если ответ вбил, какой-то другой игрок
!no_answer!- если ответ еще не вбит
При этом анонимные игроки считаются за одного и того же.
Например
{% match who_code_1 }:{ {%= me}:{ В первый код вбил ответ я %} {%= other}:{ В первый код вбил ответ кто-то другой %} {%= !no_answer!}:{ В первый код ещё не вбит ответ %} %}
Темплейты, зависящие от языка интерфейса
{% match lang }:{ {%= ru}:{ Русский %} {%= uk }:{ Украинский %} {%= en }:{ Английский %} {%= lv }:{ Латышский %} {%= ?}:{ Какой-то другой язык %} %}