Здравствуйте, gyraboo, Вы писали:
G>Я тоже не занимаюсь играми профессионально. Но как хобби — лет наверное 15. По моему опыту — использование машины состояний — наиболее оптимальное решение по соотношению простота реализации/эффективность. Причем машину состояний как модель первого приближения удобно использовать не только для описания персонажей, но и описания всей "инфраструктуры" игры (состояния "заставка"-"экран помощи"-"пауза"-"загрузка уровня"-"процесс игры"-"демо"), а также других элементов. На реализацию машины (в виде паттерна State) можно навесить механизм событий (оповещение об изменении состояния), и в этом случае машина состояний идеально ложится на архитектуру MVC.
Я думаю, что прислушаюсь к вашей рекомендации. Идея вообщем-то такая: сделать "экосистему" с расширяемым количеством существ живущих в ней, их состояний и их способностей. Чтобы потом, в последствии, можно было создавать новых, комбинировать существующих и т.д.