|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
|
На самом деле наследуется. То есть метод override-ится в наследниках, но в каждом - отсылка на свой вариант расчёта. Всё понял, отстал. Оставлю пока как временную отладочную фишку, потом внесу в тело класса, когда будет рабочий вариант.
__________________
Не сломано - не чини! |
|
|||||
То есть там и перезапись и в каждом перезаписанно еще и вызов статического? Это конечно вообще дичь, как по мне) Лучше действительно прямо в этих методах написать рассчет.
п.с. А можно глянуть что там за расчет?
__________________
Ко мне можно и нужно обращаться на ты) |
|
|||||
Регистрация: Jan 2012
Сообщений: 836
|
Есть расчет жизней в методе, относительно выносливости персонажа. Расчет применяется в инвентаря и в бое. Смысл наследовать класс, в котором прописан этот метод и инвентарю, и бою? Почему бы его не сделать статичным?
|
|
|||||
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
|
Цитата:
public class Hero extends Character { override public function get attackRating() { return AttackRating.calculate(this); } } public class AttackRating { static private const POW: uint = 3; // степень static private const BASE: Nubmer = 1.5; // база расчёта static public function calculate(ch: Character) : Number { // Всякие расчёты return result; } Добавлено через 27 часов 7 минут Ребята! Давайте забудем про статические классы, с ними всё понятно. Я тут пока обдумывал ситуацию, мне такая крамольная мысль в голову пришла. А верно ли я вообще втыкаю приведённый выше расчёт в наследника класса Character. Что Вы думаете с точки зрения философии ООП, принципа одной ответственности класса и т.п.? Смотрите. Сейчас у меня метод execute() класса Action ломится в наследника Character за показателем attackRating, который рассчитывается на основе свойств персонажа, хранящихся в Character. Корректно ли в данном случае помещать подобный метод в Character? Или правильнее запросить из Character значения необходимых свойств, и посчитать непосредственно в классе Action, создав там отдельный приватный метод?
__________________
Не сломано - не чини! |
|
|||||
Lorem ipsum
|
Правильно было бы иметь какой-то XML со всеми св-вами, грузить его в какую-то модель и таким образом вынести в нее подсчет результата тех или иных событий: кто-то поднял аптечку — насколько поправилось здоровье, кто-то треснулся в препятствие — насколько покалечился, кто-то с кем-то обменялся ударами — чо-там-кто-кого. Это еще более-менее норм было бы.
__________________
Поймай яблоко 2! |
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
Изначально ты говорил, что этот пресловутый метод — всего-лишь геттер свойства Характера. Не имеет никакого значения, насколько сложно там это свойство вычисляется: тем, кто обращается за ним к персонажу, нужно всего-лишь получить значение этого свойства. Почему расчет должен происходить где-то еще, совершенно не понятно. Тогда вообще не надо обращаться к персонажу, а сразу идти к сионским мудрецам AttackRating.calculate(_hero); Но если это свойство ПЕРСОНАЖА, присущее ЕМУ, то немозголомно было бы _hero.attackRating; Не? Почему ты считаешь, что его свойство — это не его ответственность? Цитата:
__________________
Reality.getBounds(this); |
|
|||||
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 479
|
Вот это точно! Как с письмом от руки, когда напишешь сразу правильно, а потом задумаешься, и начинаешь переписывать с ошибками Всем откликнувшимся спасибо. Всё разложил по полочкам.
__________________
Не сломано - не чини! |
Часовой пояс GMT +4, время: 15:10. |
|
« Предыдущая тема | Следующая тема » |
|
|