Begin gathering saveable game state into a structure. Not yet complete.

No logic changes.  A bunch of globals turn into fields (with the same names
except for lowercasing) in struct game_t.

Eventually this will allow drastic simplification of the save/load logic.
This commit is contained in:
Eric S. Raymond 2017-05-23 18:47:04 -04:00
parent dc9d9e467b
commit 42189d79d7
11 changed files with 260 additions and 231 deletions

23
share.h
View file

@ -1,17 +1,17 @@
extern void score(long);
extern long ABBNUM, ACTSPK[], AMBER, ATTACK, AXE, BACK, BATTER, BEAR,
BIRD, BLOOD, BONUS,
extern long ACTSPK[], AMBER, ATTACK, AXE, BACK, BATTER, BEAR,
BIRD, BLOOD,
BOTTLE, CAGE, CAVE, CAVITY, CHAIN, CHASM, CHEST, CHLOC, CHLOC2,
CLAM, CLOCK1, CLOCK2, CLOSED, CLOSNG, CLSHNT, CLSMAX, CLSSES,
COINS, COND[], CONDS, CTEXT[], CVAL[], DALTLC, DETAIL,
DKILL, DOOR, DPRSSN, DRAGON, DSEEN[], DTOTAL, DWARF, EGGS,
EMRALD, ENTER, ENTRNC, FIND, FISSUR, FIXD[], FOOBAR, FOOD,
CLAM, CLSHNT, CLSMAX, CLSSES,
COINS, COND[], CONDS, CTEXT[], CVAL[], DALTLC,
DOOR, DPRSSN, DRAGON, DSEEN[], DWARF, EGGS,
EMRALD, ENTER, ENTRNC, FIND, FISSUR, FIXD[], FOOD,
GRATE, HINT, HINTED[], HINTLC[], HINTS[][5], HNTMAX,
HNTSIZ, I, INVENT, IGO, IWEST, J, JADE, K, K2, KEY[], KEYS, KK,
KNFLOC, KNIFE, KQ, L, LAMP, LIMIT, LINSIZ, LINUSE, LL,
LMWARN, LOC, LOCK, LOCSIZ, LOCSND[], LOOK, LTEXT[],
HNTSIZ, I, INVENT, IGO, J, JADE, K, K2, KEY[], KEYS, KK,
KNIFE, KQ, L, LAMP, LINSIZ, LINUSE, LL,
LOC, LOCK, LOCSIZ, LOCSND[], LOOK, LTEXT[],
MAGZIN, MAXDIE, MAXTRS, MESH, MESSAG, MIRROR, MXSCOR,
NEWLOC, NOVICE, NUGGET, NUL, NUMDIE, OBJ, OBJSND[],
NOVICE, NUGGET, NUL, OBJ, OBJSND[],
OBJTXT[], ODLOC[], OGRE, OIL, OLDLC2, OLDLOC, OLDOBJ, OYSTER,
PANIC, PEARL, PILLOW, PLAC[], PLANT, PLANT2, PROP[], PYRAM,
RESER, ROD, ROD2, RTXSIZ, RUBY, RUG, SAPPH, SAVED, SAY,
@ -20,5 +20,4 @@ extern long ABBNUM, ACTSPK[], AMBER, ATTACK, AXE, BACK, BATTER, BEAR,
TRNDEX, TRNLUZ, TRNSIZ, TRNVAL[], TRNVLS, TROLL, TROLL2, TRVS,
TRVSIZ, TTEXT[], TURNS, URN, V1, V2, VASE, VEND, VERB,
VOLCAN, VRBSIZ, VRSION, WATER, WD1, WD1X, WD2, WD2X,
WZDARK, ZZWORD;
ZZWORD;