Refactoring Retreat

Just 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).

Advertisements


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s