Недавно была просьба подробнее расписать, как сделать множество случайных событий и я сделал это.
Пошаговая инструкция:
- Подготовка:
- Создаем новое событие
- сразу создаем в нем новую страницу, переходим на нее
- задаем условие: локальный переключатель А ВКЛ
- задаем графику и расписываем все, что будет, когда игрок использует это событие
- создаем аналогично еще столько событий, сколько необходимо
- Построение цикла:
- Создаем новое событие
- задаем условие для выполнения: автоматически
- в событии вызываем команду "Цикл" с первой вкладки
- сразу после цикла вызываем команду "Удалить событие" со второй вкладки
- далее - вызываем команду "Переменные" с первой владки
- выбираем переменную и называем ее "рандом"
- ставим точку напротив =
- ставим точку напротив "Случайное"
- задаем интервал от 0(или 1, если вам так удобней) до необходимого количества (в демке - 3)
- далее мы будет делать счетчик циклов, чтобы потом игра не зависла
- вызываем команду "Переменные" еще раз и выбираем новую переменную, называем ее "счетчик"
- ставим точку напротив +
- ставим значение 1, таким образом, после каждого цикла счетчик будет увеличиваться на один
- определим заранее, сколько циклов нам необходимо. чтобы этой сделать,рассуждайте так:
- каждый цикл переменная получает случайное значение и только одно
- в ходе проверки может быть активировано только одно случайное событие
- максимальное число циклов - это количество событий, которые появятся
- создадим сразу проверку условия для переменной "счетчик" - если счетчик равен посчитанному нами числу (в демке это число - 5), то мы вызываем команду "Прервать цикл".
Таким образом, когда создание случайностей завершится, событие будет удалено из памяти и мы сможем посмотреть, что у нас получилось.
- Проверка случайных значений:
- создаем условие: если переменная "счетчик" равна 1
- внутри пишем условие: если переменная "рандом" равна 0 (или то число, которое вы указывали как менбшую границу интервала)
- внутри уже этого условия вызываем нужные нам команды: анимации, перемещения, появление ивентов и прочее, все, что будет угодно
- затем создаем новое условие под условием "счетчика": если переменная "рандом" равна 1, то... и тут тоже прописываем что-нибудь
- таким образом мы заполняем все проверки на все числа заданного интервала
- после этого создаем такие же условия для "счетчика", равного двум (2) и заполняем все события, которые выполняются по условию
В итоге условий получается очень много, но зато без использования скриптов и нужды в их настройке!
Скачать демку можно здесь:
yadi.sk/d/l4Qn8prR7YW22
Кстати,
один-единственный скрипт я применил в демке, он позволяет из события изменить локальный прееключатель другого события, всего лишь используя команду "Вызвать скрипт" с третьей вкладки.
key = [MAP_ID, EVENT_ID, "A"]
$game_self_switches[key] = true
где
MAP_ID - номер карты,
EVENT_ID - номер события,
"А" - локальный переключатель, может быть от "A" до "D" (обратите внимание на то, что буквы латинские).
Номера карты и события вы можете посмотреть, перейдя на нужную карту и выделив нужное событие - вся информация будет написана в уголке внизу справа, например:
001:Стронгхолд (имя карты) 068:Король Ричард (выделенное событие)
За сим все, Светлая пополнилась еще одной интересной , надеюсь, полезной статьей.