Появилась панелька для отображения параметров выделенного объекта и его действий. InfoPanel.as
Для Штаба добавлено 1 здание которое можно построить - обыкновенная турель, пока без пушки. GunTower.as
При постройке проверяются условия (общие для всех зданий, такие как достаточность ресурсов и свободность клетки(которая пока return true везде, пока нет редактора карт для задания проходимости и типов местности...)).
Здания сажаются в ячейки сетки.
По наведению на здание на панели действий показывается хинт. HintPanel.as
Появился static класс State, в котором хранятся текущие параметры игры - актуальная цена зданий, апгрейдов, количество ресурсов и т.д. Раньше было в Battle, и частично в GameStats, теперь понял, что нужен отдельный класс, в котором всё это можно инкапсулировать. В GameStats хранятся начальные значения, базовые величины для расчёта и т.п. а в State - актуальные для данного момента, которые получаются на основе базовых, взятых из файлов на этапе компиляции, в результате игрового процесса.
Код стал немного походить на код пробной демк... в основном из-за индивидуальной обработки зданий. Они такие разные, что у каждого свои параметры, свои действия и т.д. поэтому в хинте надо
смотреть на что наведена мышка, если на здание на панельке действия главного штаба - то на какое здание...
Естественно общие вещи для зданий наследуются от Building, но всё равно придётся делать ифы по количеству классов зданий для почти всего, что работает со зданиями. (Но, скажем, построить здание можно и без знания о том, какого именно оно типа, по крайней мере пока).
Выход я вижу только в том, чтобы засовывать обработку себя в сами же классы зданий. То есть, к примеру, чтобы табличку статы, хинты там и сям здания делали сами. Это было бы логично и удобно... может так и следует сделать...
Но тогда надо приводить список действий и т.п. к какому-то общему виду. Например чтобы класс здания сообщал основному окну данные, которые необходимо вывести на экран в виде пары тройки массивов со строками, картинками и функциями, а основное окно их выводило и цепляло. Пока что общим видом и не пахнет.
Олсо отсутствия перегрузки функций и множественного наследования.
Subscribe to:
Post Comments (Atom)

0 comments:
Post a Comment