
В любом случае ситуации "пока первая команда инициализировалась, вторая позабивала голы" не будет - я буду терпеливо ждать, пока очередной мультик выдаст все действия.
Игра будет идти в псевод-пошаговом режиме, очерёдность будет выбираться случайным образом для каждого шага. Для каждого игрока разрешается только одно действие:
- DropBall - "отпустить" мяч (мяч перестаёт "следовать" за игроком)
- Go - переместиться в направлении, заданном парой чисел X, Y; точная формула расчёта будет опубликована позже
- PickUpBall - "подобрать" мяч (мяч начинает "следовать" за игроком)
- Shoot - ударить мяч в направлении, заданном парой чисел X, Y с "силой" F (но мяч полетит не точно в заданном направлении, а около него - точная формула будет потом)
- ShootGoal - ударить мяч в направлении вражеских ворот с "силой" F
- Tackle - попытаться сбить вражеского игрока номер N (есть вероятность того, что промахнёшься; это действие нельзя делать каждый ход)
- Wait - ничего не делать, ждать на месте.
Как происходит каждый игровой цикл:
- Каждая команда опрашивается на предмет действий, действия планируются, т.е. пока что не исполняются
- Случайным образом выбирается первая команда
- Первая команда выполняет запланированные действия в порядке "Голкипер", "Левый защитник", "Правый защитник", "Левый форвард", "Нападающий", "Правый форвард".
- Вторая команда выполняет запланированные действич
- Обновляются позиции игроков и мяча
- Обновляются таймеры сбивания и сбитых игроков
Да, в прошлом посте ошибочка вышла, невнимательно я описание читал. Мультик будет обычный (MultiElementEx), с одним входом. А вот для всех действий надо будет указывать игрока, производящего действие.
Ход считается законченным после того, как мультиэлемент выдаст событие "End"
------------ Дoбавленo в 07.38:
На всякий случай предупреждаю: система будет готова не сегодня и не завтра. Код и без того запутанный (многопоточный, да с reflection), да ещё и обфусцирован жутким образом, так что разбирать его - дело долгое.