Шаблоны строк
Шаблоны строк позволяют создавать динамический текст, который меняется в зависимости от переменных или просто случайным образом. Это особенно полезно для создания разнообразных диалогов, отслеживания прогресса или создания более захватывающего игрового процесса, где актёры не повторяют одни и те же фразы как роботы.
Где можно использовать шаблоны
Шаблоны строк могут использоваться в нескольких блоках узлов сценария:
- Блок "Сказать реплику"
- Блок "Показать сообщение"
- Блок "Выполнить шаблон"
- Блок "Дать выбор", включая его варианты выбора
- Блок "Спросить (да/нет)"
Синтаксис шаблонов
Whimtale поддерживает два основных варианта шаблонизации:
1. Подстановка переменных: ${переменная}
Вы можете вставить значение переменной, используя синтаксис ${имя переменной:
Привет, меня зовут ${characterName}!
Если переменная characterName содержит "Алиса", вывод будет таким: Привет, меня зовут Алиса!
2. Случайный выбор текста: {вариант1|вариант2|вариант3}
Вы можете выводить случайный текст из списка вариантов, используя символ вертикальной черты (|) в качестве разделителя:
{Добрый день|Привет|Здравствуй}, путник!
При каждом отображении этого текста Whimtale будет случайным образом выбирать одно из приветствий. Например, Здравствуй, путник!
Комбинирование шаблонов
Вы можете комбинировать оба варианта в одном тексте:
{Привет|Здарова|Здравствуй}, ${playerName}! У тебя ${flowerCount} цветов.
Возможный вывод: Привет, Куплинов! У тебя 5 цветов.
Экранирование шаблонов
Если вы хотите отобразить синтаксис шаблона как простой текст, вы можете экранировать его обратной косой чертой (\) перед символами $ и скобками:
Чтобы использовать переменные, введите \$\{имяПеременной\}. Чтобы вывести случайный результат, используйте \{то|сё\}.
В результате будет выведено следующее: Чтобы использовать переменные, введите ${имяПеременной}. Чтобы вывести случайный результат, используйте {то|сё}.
Использование шаблонов в блоках сценария
В блоках "Сказать реплику" и "Показать сообщение"
Когда актёр должен сказать что-то меняющееся:
- Добавьте блок "Сказать реплику" к вашему сценарию
- В поле текста введите свой шаблон:
Я смотрю, у тебя ${flowerCount} цветов. {Это здорово|Впечатляет|Как мило}!
Если вам нужно сделать отображаемой переменной радужным или стилизовать его другим способом, убедитесь, что вы применяете стиль ко всему шаблону, включая $, { и }.
В блоке "Выполнить шаблон"
Блок «Выполнить шаблон» обрабатывает шаблон и позволяет вам сохранять результат в переменной или использовать в других блоках. Это полезно для:
- Генерации случайных имён или описаний, которые будут постоянными;
- Создания постоянных ответов, которые вы будете отображать не один раз;
- Предварительной обработки сложного текста перед его отображением.
В любом блоке, если в получившемся тексте всё ещё есть символы шаблонизации, текст будет шаблонизирован повторно.
Например, у вас может быть переменная положительноеПрилагательное типа "строка" с содержимым {крутой|добрый|дружелюбный|смелый|спокойный|...}, и вы можете использовать её как Все знают, что он ${положительноеПрилагательное}, которое может превратиться во Все знают, что он крутой..
Примеры
Разнообразные приветствия NPC
{Доброе утро|Привет|Здравствуй}, путник.
{Добро пожаловать в нашу деревню!|Прекрасный день, не правда ли?|Чем я могу вам помочь сегодня?}
Диалог с показом прогресса квеста
У вас ${счётчикЦветов} из 10 цветов.
{Продолжайте искать!|Вы близки к цели!|Почти готово!}