Цитата:
А если например, метод расчёта урона, который наносит гоблин (т.е. не значения дамага из справочника, а что-то типа вероятности попадания или какие-то ещё модификаторы), отличается от аналогичного для мага? Как тогда обойтись без наследования классов юнитов в Модели?
|
Я уже сказал, в моём примере всё взаимодействие с миром происходит через апи объекта World. У этого класса будет, в том числе метод:
Код AS3:
function unitAttack(unit1:uint, unit2:uint):void;
Который примет id атакующего и атакуемого юнитов. Выполнит все проверки, посчитает модификаторы урона и т.д. Объект World содержит данные обо всех сущностях в игре. (В нём есть списки юнитов, бафов/дебафов, вся необходимая информация)