Extending the Effect Manager beyond items and skills
So I thought that it would be cool if effects weren’t limited to just items or skills. What if the weapons we used had their own effects, or the armors have effects. Or maybe the states themselves have effects? So I extended the effects to weapons, armors, and states, re-structured the script somewhat, and now it is possible to write all sorts of things using effects trivially whereas before it would have required lengthy amounts of code to handle all the re-writes and aliases. And it probably still wouldn’t be as nice.
At the moment, the following effect triggers are available
- Item effect – when an item is used
- Skill effect – when a skill is used.
- Weapon effect – when the weapon is used (eg: basically when a skill is used)
- Armor effect – when you are attacked (by a skill or item)
- State effect – activated when a state is active.
I’ve broken down the state effects into separate triggers to allow more flexibility
- add_state state effect: triggers when state is added
- remove_state state effect: triggers when state is removed
- attack_state state effect: triggers when you attack (use item or skill)
- guard_state state effect: triggers when you are attacked (by item or skill)
To test these triggers I’ve written several different effect plugins to demonstrate how they are used and to see whether it is easy to use or whether I should change the API. For now it seems good to enough.