Перейти к основному содержимому

Использование переменных

Переменные позволяют хранить данные, которые могут изменяться в зависимости от действий игрока и влиять на дальнейшее развитие сюжета. В прошлый раз мы сохранили выбор нашего главного героя и ввели переменную здоровья. Теперь давайте поговорим о том, как использовать переменные в вашей истории.

Предположим, что в конце нашего побега всё прошло хорошо, и пора приступать к первой миссии. Создайте новую главу, нажав + в боковой панели:

title: mission
checkpoint_name: "First Mission"
---
===

В конце глав побега добавьте <<jump mission>>, чтобы связать их с новой нодой.

Кивки (Callbacks)

Кивки — это способ показать игроку, что его действия влияют на развитие сюжета, даже если это не совсем так. Давайте добавим несколько кивков.

Например, мы можем упомянуть путь, который был выбран в начале истории. Добавьте следующее в главу mission:

title: mission
checkpoint_name: "First Mission"
---
<<if $escape_choice == "ventilation">>
Спасибо, бежать через вентиляцию было хорошим ходом.
<<elseif $escape_choice == "scaffolding">>
В следующий раз лучше не спускаться по строительным лесам. Там было жарко.
<<endif>>

===
Быстрая вставка

Введите \if в редакторе, чтобы быстро вставить блок <<if>> / <<endif>>. Курсор сразу окажется на месте условия — просто начинайте вводить.

Здесь мы используем конструкцию <<if>>, чтобы проверить значение переменной $escape_choice и показать разные сообщения в зависимости от результата. Это не влияет на ход сюжета, но помогает игроку чувствовать себя частью истории.

Варианты ответов

...
Ну что, пора готовиться к следующей миссии?
-> Пришли мне план операции
-> Для начала сходи в медпункт, тебе нужно восстановиться <<if $health < 100>>
Ок, скоро буду.
<<set $health = 100>>
<<wait 10>>
Порядок, сейчас скину тебе подробности операции.

В этом примере мы добавили вариант ответа, который зависит от значения переменной $health. Если здоровье агента ниже 100, мы можем отправить его в медпункт для восстановления. Игрок не увидит этот вариант, если здоровье агента уже полное.

Тестирование через отладчик

Используйте панель Переменные в отладчике, чтобы изменять значение $health и проверять обе ветки без необходимости проходить историю с начала.

Это простые примеры работы с переменными. Вы можете настраивать ход сюжета гораздо тоньше, добавляя новые переменные и условия. Например, можно добавить переменную $money и в зависимости от её значения предлагать игроку разные варианты действий, или ввести переменную $weapon, которая будет менять ход сюжета в зависимости от снаряжения агента. Возможности безграничны.