Big ball-of-mud commit
Whole bunch of things in here, including:
* Files which don't need to refer to specific permons or permobjs by ID should
no longer need to depend on the ID-list headers, as the NUM_OF_xxx constants
for these arrays have been converted from preprocessor macros to objects of
type "const int".
* A modicum of version-checking and referential integrity checking has been
added to load_game(), which has also been converted to use exceptions to
indicate failure.
* A bunch of things now use lookup tables (either indexed or linear search)
instead of big clunky switches.
* Some item-attribute work is still in progress, which should allow a bunch
of switches on permobj IDs to be replaced with tests for object flags.
(Also, in principle the game should now support any piece of equipment
conveying any resistance.)
* A few other lingering bugs from Victrix Abyssi have been caught and fixed.
* The nutritional value of different pieces of food is now defined in the
permobj database rather than being a single hard-coded constant in
eat_food().
* There is now a choice of three character classes: Princess, Demon Hunter,
and Thanatophile.
27 files changed: