LINUX.ORG.RU

История изменений

Исправление Midael, (текущая версия) :

По-хорошему у спелла могут быть самые различные эффекты, накладывающиеся как на кастующего, так и на цель. Трата ресурсов - тоже эффект.

Т.е. объект типа Spell должен содержать например List<Effect> CasterEffects и TargetEffects, а у персонажа, который наследуется от Target или реализует Targettable (целью ведь может быть не только персонаж, но например объекты окружения), должен быть метод applyEffects(List<Effect> effects), который вызывается на себя при касте: applyEffects(spell.CasterEffects), и на цели, при попадании, и учитывает имеющиеся статус эффекты (баффы, дебаффы итп).

Но это так, оффтопик. Если начинать обобщать, когда это не нужно, то можно и с ума сойти :)

Исправление Midael, :

По-хорошему у спелла могут быть самые различные эффекты, накладывающиеся как на кастующего, так и на цель. Трата ресурсов - тоже эффект.

Т.е. объект типа Spell должен содержать например List<Effect> CasterEffects и TargetEffects, а у персонажа, который наследуется от Target или реализует Targettable (целью ведь может быть не только персонаж, но например объекты окружения), должен быть метод applyEffects(List<Effect> effects), который вызывается на себя при касте applyEffects(spell.CasterEffects) и на цели при попадании и учитывает имеющиеся статус эффекты (баффы, дебаффы итп).

Но это так, оффтопик. Если начинать обобщать, когда это не нужно, то можно и с ума сойти :)

Исправление Midael, :

По-хорошему у спелла могут быть самые различные эффекты, накладывающиеся как на кастующего, так и на цель. Трата ресурсов - тоже эффект.

Т.е. объект типа Spell должен содержать например List<Effect> CasterEffects и TargetEffects, а у персонажа, который наследуется от Target или реализует Targettable(целью ведь может быть не только персонаж, но например объекты окружения), долнен быть метод applyEffects(List<Effect> effects), который вызывается на себя при касте applyEffects(spell.CasterEffects) и на цели при попадании и учитывает имеющиеся статус эффекты (баффы, дебаффы итп).

Но это так, оффтопик. Если начинать обобщать, когда это не нужно, то можно и с ума сойти :)

Исправление Midael, :

По-хорошему у спелла могут быть самые различные эффекты, накладывающиеся как на кастующего, так и на цель. Трата ресурсов - тоже эффект.

Т.е. объект типа Spell должен содержать например List<Effect> CasterEffects и TargetEffects, а у персонажа, который наследуется от Target (целью ведь может быть не только персонаж, но например объекты окружения), долнен быть метод applyEffects(List<Effect> effects), который вызывается на себя при касте applyEffects(spell.CasterEffects) и на цели при попадании и учитывает имеющиеся статус эффекты (баффы, дебаффы итп).

Но это так, оффтопик. Если начинать обобщать, когда это не нужно, то можно и с ума сойти :)

Исходная версия Midael, :

По-хорошему у спелла могут быть самые различные эффекты, накладывающиеся как на кастующего, так и на цель. Трата ресурсов - тоже эффект.

Т.е. объект типа Spell должен содержать например List<Effect> CasterEffects и TargetEffects, а у персонажа, который наследуется от Target (целью ведь может быть не только персонаж, но например объекты окружения), долнен быть метод applyEffects(List<Effect> effects), который вызывается на себя при касте applyEffects(spell.CasterEffects) и на цели при попадании.

Но это так, оффтопик. Если начинать обобщать, когда это не нужно, то можно и с ума сойти :)