Refactoring Retreat
Posted: 2014-05-29 Filed under: Uncategorized Leave a commentJust finished my third (and hopefully final for this year) road-trip to Atlanta and back. Flights were crazy expensive over Memorial Weekend, so I opted to take a day off work and drive my daughter to her drum corps camp. While there, I followed my usual practice of major refactoring (since I’ve got little else to do on Saturday).
Amongst the things I accomplished:
- defined a MagicAugment adjunct for enhancing weapons and armor, replacing a rather loosely defined “IsDependent” property of base adjuncts
- allowed natural weapons to be augmented (and included ability to have +0 augmentation to overcome damage reduction)
- excluded species from the species selection list if the constructor has arguments (such as a Skeleton, which needs a source creature to work)
- fixed some icons on menus by going through the resource manager instead of directly at the package
- Traits became adjuncts
- changed some magic-styles back to match OGL names
- created an UndeadClass
- defined BaseMonsterClass as an IPowerClass (so it can source powers)
- removed GetTraits (which just enumerated strings)
- did some housecleaning on power classes and fractional power dice
- defined body cloning (for skeleton/zombie at the very least)
Since I got back, I did a few more things:
- refactored PowerDefs and PowerSources (and their interfaces) to have non-action oriented versions in support of qualities that do not have actions associated with them (think: magical damage reduction). My goal here is to get all power sources running as adjuncts so that anti-magic fields (and such) can shut down everything magical without having to write tons of specialized code
- made the PickUpHandler check load limits
Next:
Finish equipment and natural weapon transfer for skeleton, follow similar pattern for zombie (possibly generalize).