Написать основу боевого модуля на laravel
Требуется написать боевой модуль для карточной игры на Laravel с использованием MongoDB.
Типы сражений делятся на:
- бой с другим игроком
- бой с боссом (несколько игроков нападают на одного бота)
- бой с ботом (подключается отдельный файл с логикой бота)
- командные бои (подключатся до 5 игроков к каждой стороне, где игроки сами выбирают свободного противника для начала боя)
Нужно реализовать только самую основу боевого модуля. От исполнителя требуется написать методы:
- Начала боя с игроком / ботом
- Интерфейс для подключения логики ботов
- Выбор цели атаки (игроки могут использовать больше одной карты сразу - бой происходит 2 на 2, то есть по 2 карты с каждой стороны)
- Выбор действия игроком, с возможностью отмены, если второй игрок не сделал ход
- Таймер
- Использование атаки (первый ходит тот, у кого показатель скорости больше)
- Замена карты
- Использование вспомогательных предметов
- Нанесение урона, лечение
- Защита от двойного выполнения сценария
- Сохранение результатов, начисление бонусов и рейтинга каждому игроку
КОМАНДНЫЙ БОЙ
В бою между игроками есть возможность включить режим командного боя. При включение данного режима, у других игроков появляется возможность присоединиться к любой стороне (до 5 человек для каждой стороны). Каждый игрок может выбрать свободного противника для начала боя с ним. Побеждает та сторона, которая останется в живых до конца, либо ничья.
БОЙ С БОССОМ
Босс имеет HP, и каждый игрок наносит урон по нему. Босс выбирает атаки, которые атакует сразу все цели, либо имеет только одну цель.