Item Actives behave like BaseSpells. They have everything in common except spell_nature and spell level.
I am torn between several solutions:
Rewrite damage mechanism inside BaseItem. Easy to do but there is redundancy with BaseSpell
Rewrite damage mechanism inside a ActiveItem(BaseItem) subclass of BaseItem (same problem)
Create a BaseActiveDamage class with the damage mechanism from which we can create a BaseSpell(BaseActiveDamage) subclass and maybe a BaseItem(BaseActiveDamage) or ActiveItem(BaseItem, BaseActiveDamage)
Have BaseItem.active = BaseSpell (+ code adaptation as it was not written for that)
Define an active like GaleForceActive(BaseSpell) and assign it to the GaleForce BaseItem
What do you think ?
(current solution is to hardcode the spell damage which can make sense for complex actives such as Galeforce --> see galeforce implem)
Item Actives behave like BaseSpells. They have everything in common except
spell_nature
and spelllevel
.I am torn between several solutions:
BaseItem
. Easy to do but there is redundancy withBaseSpell
ActiveItem(BaseItem)
subclass of BaseItem (same problem)BaseActiveDamage
class with the damage mechanism from which we can create aBaseSpell(BaseActiveDamage)
subclass and maybe aBaseItem(BaseActiveDamage)
orActiveItem(BaseItem, BaseActiveDamage)
BaseItem.active = BaseSpell
(+ code adaptation as it was not written for that)GaleForceActive(BaseSpell)
and assign it to the GaleForce BaseItemWhat do you think ?
(current solution is to hardcode the spell damage which can make sense for complex actives such as Galeforce --> see galeforce implem)