X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=advent.h;h=16b721c7414fd6d56f3394070efc5f570b57a1d6;hb=a4da53086b676b0c8416ae338abc030fac3b8022;hp=5cda6ea0bf40f83f6b6977191337358ad57569f3;hpb=b1fafc4d4db33580b1966dfe46d9b54e61c9c0d7;p=open-adventure.git diff --git a/advent.h b/advent.h index 5cda6ea..16b721c 100644 --- a/advent.h +++ b/advent.h @@ -1,7 +1,7 @@ #include #include -#include "sizes.h" +#include "common.h" #define LINESIZE 100 #define NDWARVES 6 @@ -76,7 +76,9 @@ struct game_t { extern struct game_t game; extern long LNLENG, LNPOSN, PARMS[]; -extern char rawbuf[LINESIZE], INLINE[LINESIZE+1], MAP1[], MAP2[]; +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; extern lcg_state lcgstate; @@ -89,27 +91,13 @@ extern void SPEAK(vocab_t); extern void PSPEAK(vocab_t,int); extern void RSPEAK(vocab_t); extern void SETPRM(long,long,long); - -extern bool fGETIN(FILE *,token_t*,token_t*,token_t*,token_t*); -#define GETIN(input,WORD1,WORD1X,WORD2,WORD2X) fGETIN(input,&WORD1,&WORD1X,&WORD2,&WORD2X) - +extern bool GETIN(FILE *,token_t*,token_t*,token_t*,token_t*); extern long YES(FILE *,vocab_t,vocab_t,vocab_t); extern long GETTXT(bool,bool,bool); extern token_t MAKEWD(long); - -extern void fPUTTXT(token_t,long*,long); -#define PUTTXT(WORD,STATE,CASE) fPUTTXT(WORD,&STATE,CASE) - +extern void PUTTXT(token_t,long*,long); extern void SHFTXT(long,long); extern void TYPE0(void); - -extern void fSAVWDS(long*,long*,long*,long*,long*,long*,long*); -#define SAVWDS(W1,W2,W3,W4,W5,W6,W7) fSAVWDS(&W1,&W2,&W3,&W4,&W5,&W6,&W7) -extern void fSAVARR(long*,long); -#define SAVARR(ARR,N) fSAVARR(ARR,N) -extern void fSAVWRD(long,long*); -#define SAVWRD(OP,WORD) fSAVWRD(OP,&WORD) - extern long VOCAB(long,long); extern void DSTROY(long); extern void JUGGLE(long); @@ -122,20 +110,16 @@ extern long SETBIT(long); extern bool TSTBIT(long,int); extern long RNDVOC(long,long); extern void BUG(long) __attribute__((noreturn)); -extern void MAPLIN(FILE *); +extern bool MAPLIN(FILE *); extern void TYPE(void); -extern void MPINIT(void); - -extern void fSAVEIO(long,long,long*); -#define SAVEIO(OP,IN,ARR) fSAVEIO(OP,IN,ARR) extern void DATIME(long*, long*); - extern long MOD(long,long); extern void set_seed(long); extern unsigned long get_next_lcg_value(void); extern long randrange(long); extern void score(long); +extern int saveresume(FILE *, bool); /* Statement functions * @@ -185,5 +169,12 @@ extern long AMBER, ATTACK, AXE, BACK, BATTER, BEAR, STEPS, STICK, STREAM, THROW, TRIDNT, TROLL, TROLL2, URN, VASE, VEND, VOLCAN, WATER; /* everything else */ -extern long I, K, SPK, WD1, WD1X, WD2, WD2X; +extern long K, SPK, WD1, WD1X, WD2, WD2X; + +enum speechpart {unknown, intransitive, transitive}; + +/* hack to ignore GCC Unused Result */ +#define IGNORE(r) do{if (r){}}while(0) + +/* end */