Refactor Spells
Twintop opened this issue ยท 0 comments
Presently, the TRB.Data.spells
object and its derivatives are fairly consistent but still unstructured data. This leads to problems when passing a spell
into a method as we can't be certain all of the right properties are present or set. Additionally, many functions in the TRB.Functions.Spell
namespace could be moved to being methods on a new TRB.Classes.SpellBase
or decendant object instead.
- Core classes/logic moved
-
- Base Class
-
- Threshold
-
- Combo Points
-
- Combo Point + Threshold
- Healer specific implementations
- Demon Hunter
- Druid
- Evoker
- Hunter
- Monk
- Paladin
- Priest
- Rogue
- Shaman
- Warrior
Extra bits to explore (maybe separate issues?)
- Use
GetSpellPowerCost()
for all spenders instead of having hardcoded resource values. -
- There may need to be some exceptions.
-
- Check performance impact on how frequently this needs to be run/updated. Will every frame be OK? Does it need to be run based off the gain/loss of a buff for specific spells (see: Balance Druids)?
-
- Demon Hunter
-
- Druid
-
- Evoker
-
- Hunter
-
- Monk
-
- Paladin
-
- Priest
-
- Rogue
-
- Shaman
-
- Warrior