#include "dungeon.h"
-#define LINESIZE 100
#define NDWARVES 6 // number of dwarves
#define PIRATE NDWARVES // must be NDWARVES-1 when zero-origin
#define DALTLC LOC_NUGGET // alternate dwarf location
-#define MAXPARMS 25 // Max parameters for speak()
#define INVLIMIT 7 // inverntory limit (# of objects)
#define INTRANSITIVE -1 // illegal object number
#define SPECIALBASE 300 // base number of special rooms
typedef long token_t; // word token - someday this will be char[TOKLEN+1]
typedef long vocab_t; // index into a vocabulary array */
-extern const char advent_to_ascii[128];
-extern const char ascii_to_advent[128];
-extern const char new_advent_to_ascii[64];
-extern const char new_ascii_to_advent[128];
-
enum bugtype {
- SPECIAL_TRAVEL_500_GT_L_GT_300_EXCEEDS_GOTO_LIST = 20, // 20
- VOCABULARY_TYPE_N_OVER_1000_NOT_BETWEEN_0_AND_3 = 22, // 22
- INTRANSITIVE_ACTION_VERB_EXCEEDS_GOTO_LIST, // 23
- TRANSITIVE_ACTION_VERB_EXCEEDS_GOTO_LIST, // 24
- CONDITIONAL_TRAVEL_ENTRY_WITH_NO_ALTERATION, // 25
- LOCATION_HAS_NO_TRAVEL_ENTRIES, // 26
- HINT_NUMBER_EXCEEDS_GOTO_LIST, // 27
- TOO_MANY_PARAMETERS_GIVEN_TO_SETPRM, // 28
- SPEECHPART_NOT_TRANSITIVE_OR_INTRANSITIVE_OR_UNKNOWN=99, // 99
- ACTION_RETURNED_PHASE_CODE_BEYOND_END_OF_SWITCH, // 100
+ SPECIAL_TRAVEL_500_GT_L_GT_300_EXCEEDS_GOTO_LIST,
+ VOCABULARY_TYPE_N_OVER_1000_NOT_BETWEEN_0_AND_3,
+ INTRANSITIVE_ACTION_VERB_EXCEEDS_GOTO_LIST,
+ TRANSITIVE_ACTION_VERB_EXCEEDS_GOTO_LIST,
+ CONDITIONAL_TRAVEL_ENTRY_WITH_NO_ALTERATION,
+ LOCATION_HAS_NO_TRAVEL_ENTRIES,
+ HINT_NUMBER_EXCEEDS_GOTO_LIST,
+ SPEECHPART_NOT_TRANSITIVE_OR_INTRANSITIVE_OR_UNKNOWN,
+ ACTION_RETURNED_PHASE_CODE_BEYOND_END_OF_SWITCH,
};
/* Alas, declaring this static confuses the coverage analyzer */
extern struct game_t game;
-extern long LNLENG, LNPOSN;
-extern char rawbuf[LINESIZE], INLINE[LINESIZE + 1];
-extern const char ascii_to_advent[];
-extern const char advent_to_ascii[];
extern FILE *logfp;
extern bool oldstyle, editline, prompt;
extern void speak(const char*, ...);
extern void pspeak(vocab_t, enum speaktype, int, ...);
extern void rspeak(vocab_t, ...);
-extern bool GETIN(FILE *, token_t*, token_t*, token_t*, token_t*);
extern void echo_input(FILE*, char*, char*);
extern int word_count(char*);
extern char* get_input(void);
extern bool silent_yes(void);
extern bool yes(const char*, const char*, const char*);
-extern long GETTXT(bool, bool, bool);
-extern token_t MAKEWD(long);
-extern long vocab(long, long);
extern int get_motion_vocab_id(const char*);
extern int get_object_vocab_id(const char*);
extern int get_action_vocab_id(const char*);
extern long atdwrf(long);
extern long setbit(long);
extern bool tstbit(long, int);
-extern long rndvoc(long, long);
extern void make_zzword(char*);
-extern bool MAPLIN(FILE *);
extern void datime(long*, long*);
enum termination {endgame, quitgame, scoregame};
/* hack to ignore GCC Unused Result */
#define IGNORE(r) do{if (r){}}while(0)
-/*
- * FIXME: These constants should be replaced by strings, at their usage sites.
- * They are sixbit-packed representations of vocabulary words. This, and code
- * left in misc.c, is the only place left in the runtime that knows about
- * word packing.
- */
-#define WORD_CATCH 301200308
-#define WORD_GO 715
-#define WORD_POUR 16152118
-#define WORD_BACK 2010311
-#define WORD_CAVE 3012205
-#define WORD_DPRSSN 405161805
-#define WORD_ENTER 514200518
-#define WORD_ENTRNC 514201801
-#define WORD_LOOK 12151511
-#define WORD_NUL 14211212
-#define WORD_STREAM 1920180501
-#define WORD_FIND 6091404
-#define WORD_INVENT 914220514
-#define WORD_LOCK 12150311
-#define WORD_SAY 190125
-#define WORD_THROW 2008181523
-#define WORD_WEST 23051920
-#define WORD_YES 250519
-#define WORD_YINIT 25
-
/* end */
-