Всем привет, хотел попросить совета, относительно организации функционала по созданию «волн» врагов.
Есть такая известная игра как Zombie Rampage:
http://www.kongregate.com/games/Weas...zombie-rampage
В ней, на сколько я понимаю, ни о каких волнах речь не идёт, просто, через определённое время создаются враги, причём уровень врагов в новых раундах повышается, а промежуток времени между их созданием — наоборот, уменьшается.
Мне же, хотелось бы реализовать создание врагов «волнами», чтобы можно было самому настроить какие враги в каком порядке и в каком количестве будут создаваться. Единственное, что мне сейчас пришло на ум — это создание примерно следующей структуры:
1) Объект
EnemiesWave с параметрами
createTimeout и
enemiesIds, где
createTimeout — время, которое должно пройти от начала игры или от предыдущей волны, перед созданием этой волны, а
enemiesIds - типизированный массив с идентификаторами всех врагов, которых нужно создать.
2) Объекты
EnemiesWave будут сами храниться в типизированном массиве, с которым будет работать уровень и создавать в нужном порядке «волны» врагов.
В принципе, данный подход мне нравится своей настраиваемостью, но не нравится тем, что для того, чтобы организовать простое увеличение врагов в зависимости от времени, нам нужно будет очень много информации о волнах заносить в массив.
Надеюсь, что не очень расплывчато описал принцип создания врагов, и буду благодарен всем, кто поделится своими знаниями в области логики создания врагов или пнёт на сайт или книжку, где об этом можно будет подробно почитать.