As mentioned by @bb ([[ https://code.wildfiregames.com/D1838#inline-40794 | here ]]) there are some schema's duplicated in `Attack.js` and `DeathDamage.js` (and in the future maybe in `ProximityDamage.js`; D1838), which could be moved to a seperate helper.
Currently moved:
- Status effects (introduced in rP22304)
- Bonuses (introduced in rP10804)
- Preferred classes (introduced in rP11710)
- Restricted classes (introduced in rP11710)
In the future, `Projectile` might be moved here also, but I think first consensus ought to be reached about what should be in it and whether it is beneficial at all. Therefore this is not included in this patch.
The reason that the bonus schema was duplicated was that it was first only called from `Attack.js` itself, but with the introduction of `DeathDamage.js` (rP19950) it was copy-pastad to that file as well. In the future, we probably want to support status effects for death damage as well as restricted classes for proximity damage.
With that in mind the move is even more logical.