int holdng; // number of objects being carried
int igo; // # uses of "go" instead of a direction
int iwest; // # times he's said "west" instead of "w"
- int knfloc; // knife location; 0 if none, -1 after caveat
+ loc_t knfloc; // knife location; LOC_NOWERE if none, -1 after caveat
turn_t limit; // lifetime of lamp
loc_t loc; // where player is now
loc_t newloc; // where player is going
char zzword[TOKLEN + 1]; // randomly generated magic word from bird
int abbrev[NLOCATIONS + 1]; // has location been seen?
int atloc[NLOCATIONS + 1]; // head of object linked list per location
- int dseen[NDWARVES + 1]; // true if dwarf has seen him
- loc_t dloc[NDWARVES + 1]; // location of dwarves, initially hard-wired in
- loc_t odloc[NDWARVES + 1]; // prior loc of each dwarf, initially garbage
+ struct {
+ int seen; // true if dwarf has seen him
+ loc_t loc; // location of dwarves, initially hard-wired in
+ loc_t oldloc; // prior loc of each dwarf, initially garbage
+ } dwarves[NDWARVES + 1];
loc_t fixed[NOBJECTS + 1]; // fixed location of object (if not IS_FREE)
obj_t link[NOBJECTS * 2 + 1];// object-list links
loc_t place[NOBJECTS + 1]; // location of object
- int hinted[NHINTS]; // hinted[i] = true iff hint i has been used.
- int hintlc[NHINTS]; // hintlc[i] = how int at LOC with cond bit i
+ bool hinted[NHINTS]; // hinted[i] = true iff hint i has been used.
+ int hintlc[NHINTS]; // hintlc[i] = show int at LOC with cond bit i
int prop[NOBJECTS + 1]; // object state array */
};