Какую задачу выполняют?
В качестве мишеней в Игре используются враги (пришельцы). За сбитие врагов начисляются очки исследования. Они же создают конфликт: нельзя допустить разрушения города ракетами (дадут меньше звёзд, от которых зависит бонус к очкам исследования) и высадку десанта (миссия будет провалена).
Типы пришельцев
Планируется 5 типов врагов:
- Штурмовик. Запускает ракеты по городу. Помимо рандома наверняка будет отслеживаться максимальное количество одновременно запущенных ракет. Варианты реализации:
- Использовать пул объектов. Если в пуле закончились ракеты, они не запускаются.
- Запущенная ракета добавляется в List<Projectile> projectiles, а при уничтожении удаляется. Если projectiles.Count() > maxCount ракета не запускается.
- Ракета. В принципе, тоже враг. Наносит повреждения городу, уменьшая количество звёзд, которые игрок получает за прохождение миссии. Меньше звёзд - меньше бонусных очков исследования. И незакрытый гештальт в придачу в карточке города (защита города на три звезды).
- Транспорт. Высаживает десант.
- Десантник. Сбрасывается с транспорта. Достигнув земли захватывает город.
- Босс. Большой инопланетный корабль, стреляющий ракетами, исторгающий из себя штурмовиков и транспорты. Впитывает много урона, постепенно теряет части, и эпично гибнет.
Эстетика, параметры, и варианты врагов будут выбираться на этапе прототипирования.
Общие особенности врагов
- Враги двигаются в формациях (см. 7.4 Формации и схемы движения ) в соответствии со схемами движения.
- Враги составные и имеют сменные цветовые схемы, чтобы для каждой миссии можно было генерировать уникализированных врагов в плане их геометрии и раскраски. Это позволит создать у игрока иллюзию прогресса врагов от миссии к миссии, хотя на самом деле нерфится оружие (см. 8. Баланс).
- Индикация повреждений, если враг не уничтожен с первого выстрела.
- Сбитые из зенитки враги будут разваливаться на части, разрезаться лазером, и пока не совсем понятно с каким спецэффектом враги будут уничтожаться аэростатом.
Из врагов (штурмовики, транспорты, десантники) случайным образом выпадают бонусы (см. 7.2 Бонусы).
Настраиваемые переменные врагов
- shotsFlak - количество выстрелов, которые может пережить враг от зенитки текущего грейда (см. 8. Баланс).
- shotsLaser - количество выстрелов, которые может пережить враг от лазера текущего грейда.
- shotsBalloon - количество выстрелов, которые может пережить враг от взрыва аэростата.
- shakeForce - сила, с которой трясёт камеру при подрыве врага. У ракеты отсутствует, у десантника под вопросом.