Mainly trying to reduce hardcoded magic numbers by pulling them out into parameters, or extracting as little as needed in child classes into new virtuals, since it seems most of if not all addon armours seem to simply tweak damage numbers or location calculations, and the remaining boilerplate can remain unnecessary to re-implement.
To give some examples of some addon armours that leverage these, here's a few diffs comparing their existing code and my forks:
I did notice Hideous Helmet's code was quite a bit different though, still working through that one.
Mainly trying to reduce hardcoded magic numbers by pulling them out into parameters, or extracting as little as needed in child classes into new virtuals, since it seems most of if not all addon armours seem to simply tweak damage numbers or location calculations, and the remaining boilerplate can remain unnecessary to re-implement.
To give some examples of some addon armours that leverage these, here's a few diffs comparing their existing code and my forks:
- [RadTech's Leather Armor](https://git.gay/swampyrad/RadTechItemPack/compare/main...Undead_Zeratul/RadTechItemPack:main#diff-85f8bc7041a40f7b7e848cb6a04ece1c4d045694)
- [Icarus' HEV Armor](https://github.com/HDest-Community/icarus-innovations-improved/pull/40/changes#diff-e555355c031c463ac0dae93c1f70181914ddf156a7dad70f6b2534634ebbf082)
- [Potetobloke's Armor Plates](https://github.com/Potetobloke/PB_HDAddon_ArmorPlates/compare/main...UndeadZeratul:PB_HDAddon_ArmorPlates:develop#diff-f2927df3a9176b1b1a252ec89e123ffcdfee4046607021b2512f57fb944b90eb)
- [Half-Baked Cake's UAC Corporate Armor](https://github.com/HDest-Community/hd-uacarmor/pull/2/changes#diff-11e45c8c538f97d1c5f02924033c2579d312bc86a6918d740618b868eb9f28a0)
I did notice Hideous Helmet's code was quite a bit different though, still working through that one.