1 /* funcs.h -- functions for dungeon */ 2 3 #ifndef FUNCS_H 4 #define FUNCS_H 5 6 /* If __STDC__ is not defined, don't use function prototypes, void, or 7 * const. 8 */ 9 10 #ifdef __STDC__ 11 #define P(x) x 12 #else 13 #define P(x) () 14 #define void int 15 #define const 16 #endif 17 18 /* Try to guess whether we need "rb" to open files in binary mode. 19 * If this is unix, it doesn't matter. Otherwise, assume that if 20 * __STDC__ is defined we can use "rb". Otherwise, assume that we 21 * had better use "r" or fopen will fail. 22 */ 23 24 #ifdef unix 25 #define BINREAD "r" 26 #define BINWRITE "w" 27 #else /* ! unix */ 28 #ifdef __STDC__ 29 #define BINREAD "rb" 30 #define BINWRITE "wb" 31 #else /* ! __STDC__ */ 32 #define BINREAD "r" 33 #define BINWRITE "w" 34 #endif /* ! __STDC__ */ 35 #endif /* ! unix */ 36 37 typedef int integer; 38 typedef int logical; 39 40 #define TRUE_ (1) 41 #define FALSE_ (0) 42 43 #define abs(x) ((x) >= 0 ? (x) : -(x)) 44 #define min(a,b) ((a) <= (b) ? (a) : (b)) 45 #define max(a,b) ((a) >= (b) ? (a) : (b)) 46 47 extern logical 48 protected P((void)), 49 wizard P((void)); 50 51 extern void 52 more_init P((void)), 53 more_output P((const char *)), 54 more_input P((void)); 55 56 extern void 57 bug_ P((integer, integer)), 58 cevapp_ P((integer)), 59 cpgoto_ P((integer)), 60 cpinfo_ P((integer, integer)), 61 encryp_ P((const char *, char *)), 62 exit_ P((void)), 63 fightd_ P((void)), 64 game_ P((void)), 65 gdt_ P((void)), 66 gttime_ P((integer *)), 67 invent_ P((integer)), 68 itime_ P((integer *, integer *, integer *)), 69 jigsup_ P((integer)), 70 newsta_ P((integer, integer, integer, integer, integer)), 71 orphan_ P((integer, integer, integer, integer, integer)), 72 princo_ P((integer, integer)), 73 princr_ P((logical, integer)), 74 rdline_ P((char *, integer)), 75 rspeak_ P((integer)), 76 rspsb2_ P((integer, integer, integer)), 77 rspsub_ P((integer, integer)), 78 rstrgm_ P((void)), 79 savegm_ P((void)), 80 score_ P((logical)), 81 scrupd_ P((integer)), 82 swordd_ P((void)), 83 thiefd_ P((void)), 84 valuac_ P((integer)); 85 extern integer 86 blow_ P((integer, integer, integer, logical, integer)), 87 fights_ P((integer, logical)), 88 fwim_ P((integer, integer, integer, integer, integer, logical)), 89 getobj_ P((integer, integer, integer)), 90 schlst_ P((integer, integer, integer, integer, integer, integer)), 91 mrhere_ P((integer)), 92 oactor_ P((integer)), 93 rnd_ P((integer)), 94 robadv_ P((integer, integer, integer, integer)), 95 robrm_ P((integer, integer, integer, integer, integer)), 96 sparse_ P((const integer *, integer, logical)), 97 vilstr_ P((integer)), 98 weight_ P((integer, integer, integer)); 99 extern logical 100 aappli_ P((integer)), 101 ballop_ P((integer)), 102 clockd_ P((void)), 103 cyclop_ P((integer)), 104 drop_ P((logical)), 105 findxt_ P((integer, integer)), 106 ghere_ P((integer, integer)), 107 init_ P((void)), 108 lightp_ P((integer)), 109 lit_ P((integer)), 110 moveto_ P((integer, integer)), 111 nobjs_ P((integer, integer)), 112 oappli_ P((integer, integer)), 113 objact_ P((void)), 114 opncls_ P((integer, integer, integer)), 115 parse_ P((char *, logical)), 116 prob_ P((integer, integer)), 117 put_ P((logical)), 118 rappli_ P((integer)), 119 rappl1_ P((integer)), 120 rappl2_ P((integer)), 121 rmdesc_ P((integer)), 122 sobjs_ P((integer, integer)), 123 sverbs_ P((integer)), 124 synmch_ P((void)), 125 take_ P((logical)), 126 thiefp_ P((integer)), 127 trollp_ P((integer)), 128 qempty_ P((integer)), 129 qhere_ P((integer, integer)), 130 vappli_ P((integer)), 131 walk_ P((void)), 132 winnin_ P((integer, integer)), 133 yesno_ P((integer, integer, integer)); 134 135 #endif 136