typedef long token_t; /* word token - someday this will be char[TOKLEN+1] */
typedef long vocab_t; /* index into a vocabulary array */
typedef long token_t; /* word token - someday this will be char[TOKLEN+1] */
typedef long vocab_t; /* index into a vocabulary array */
extern void set_seed(long);
extern unsigned long get_next_lcg_value(void);
extern long randrange(long);
extern void set_seed(long);
extern unsigned long get_next_lcg_value(void);
extern long randrange(long);
* TOTING(OBJ) = true if the OBJ is being carried */
#define MOD(N,M) ((N) % (M))
* TOTING(OBJ) = true if the OBJ is being carried */
#define MOD(N,M) ((N) % (M))
#define AT(OBJ) (game.place[OBJ] == game.loc || game.fixed[OBJ] == game.loc)
#define HERE(OBJ) (AT(OBJ) || TOTING(OBJ))
#define LIQ2(PBOTL) ((1-(PBOTL))*WATER+((PBOTL)/2)*(WATER+OIL))
#define AT(OBJ) (game.place[OBJ] == game.loc || game.fixed[OBJ] == game.loc)
#define HERE(OBJ) (AT(OBJ) || TOTING(OBJ))
#define LIQ2(PBOTL) ((1-(PBOTL))*WATER+((PBOTL)/2)*(WATER+OIL))
#define HOGRE 19 /* Trying to deal with ogre */
#define HJADE 20 /* Found all treasures except jade */
#define HOGRE 19 /* Trying to deal with ogre */
#define HJADE 20 /* Found all treasures except jade */