#define STASHED(obj) (-1 - game.prop[obj])
/*
+ * DESTROY(N) = Get rid of an item by putting it in LOC_NOWHERE
* MOD(N,M) = Arithmetic modulus
+ * TOTING(OBJ) = true if the OBJ is being carried
* AT(OBJ) = true if on either side of two-placed object
- * CNDBIT(L,N) = true if COND(L) has bit n set (bit 0 is units bit)
- * DARK(LOC) = true if location "LOC" is dark
- * FORCED(LOC) = true if LOC moves without asking for input (COND=2)
- * FOREST(LOC) = true if LOC is part of the forest
- * GSTONE(OBJ) = true if OBJ is a gemstone
* HERE(OBJ) = true if the OBJ is at "LOC" (or is being carried)
+ * CNDBIT(L,N) = true if COND(L) has bit n set (bit 0 is units bit)
* LIQUID() = object number of liquid in bottle
* LIQLOC(LOC) = object number of liquid (if any) at LOC
+ * FORCED(LOC) = true if LOC moves without asking for input (COND=2)
+ * DARK(LOC) = true if location "LOC" is dark
* PCT(N) = true N% of the time (N integer from 0 to 100)
- * TOTING(OBJ) = true if the OBJ is being carried */
+ * GSTONE(OBJ) = true if OBJ is a gemstone
+ * FOREST(LOC) = true if LOC is part of the forest
+ * OUTSID(LOC) = true if locaiton not in the cave
+ * INSIDE(LOC) = true if locaiton is in the cave or the building at the beginning of the game
+ * INDEEP(LOC) = true if locaiton is in the Hall of Mists or deeper
+ * BUG(X) = report bug and exit
+ */
#define DESTROY(N) move(N, LOC_NOWHERE)
#define MOD(N,M) ((N) % (M))
#define TOTING(OBJ) (game.place[OBJ] == CARRIED)