Deme

Как работают боевые события в RM2k/RM2k3

Оценить эту запись
Вчера в чате EasyRPG Ghabry рассказывал, как работает выбор страниц в боевых событиях. Оказалось, что это не так-то просто!

Боевые события и события на карте работают по-разному. На карте всегда может выполняться только одна страница. Например, если есть две страницы, которые по условиям должны показываться, то покажется самая правая (последняя).

В битве всё иначе: могут выполняться сразу несколько страниц за ход. Причём выполнение идёт слева направо, а не справа налево.

Если у первой страницы условие выполнения — «переключатель N включён», а страница 2 включает этот переключатель, то страницы будут выполнены в порядке «2, 1, 3...». Кроме того, страницы, зависящие от хода, выполняются не первом ходу в обычном порядке, а на остальных ходах самыми первыми.


Вот алгоритм (псевдокод), который выполняется при каждом ходу:

Цитата Сообщение от Алгоритм
Если ход не первый, то выполнить страницы, которые зависят от номера хода, слева направо, и пометить их как выполненные.

Пока все страницы не выполнены ИЛИ не подходят по условиям выполнения, цикл:

Найти выполняемую страницу: пройтись по страницам слева направо (начиная с самой левой) и найти такую, которая ещё не выполнялась, но подходит по условиям выполнения.

Выполнить команды на этой странице и пометить её как выполненную.

Если все страницы либо выполнены, либо условие их выполнения не наступило, то прекратить цикл.
Ши ши ши ши!

Отправить "Как работают боевые события в RM2k/RM2k3" в Digg Отправить "Как работают боевые события в RM2k/RM2k3" в del.icio.us Отправить "Как работают боевые события в RM2k/RM2k3" в StumbleUpon Отправить "Как работают боевые события в RM2k/RM2k3" в Google Отправить "Как работают боевые события в RM2k/RM2k3" в VKontakte Отправить "Как работают боевые события в RM2k/RM2k3" в Facebook

Комментарии

  1. Аватар для DeadElf79
    Чудеса и магия О.о Спасибо за алгоритм, есть над чем подумать на досуге