1 /* Declarations of common data structures. */ 2 3 #define DATAFILE_LEN1 (7924) 4 #define DATAFILE_LEN2 (3391) 5 6 extern strid_t datafile; 7 extern glsi32 datafile_strings; 8 extern glsi32 datafile_strindex[DATAFILE_LEN2]; 9 10 extern struct prsvec_1_ { 11 integer prsa, prsi, prso; 12 logical prswon; 13 integer prscon; 14 } prsvec_1; 15 16 extern struct prssta_1_ { 17 integer oflag, oact, oprep1, oobj1, oprep; 18 char oname[8]; 19 integer oprep2, oobj2, lastit, act, obj1, obj2, prep1, prep2, vflag, dobj, 20 dfl1, dfl2, dfw1, dfw2, iobj, ifl1, ifl2, ifw1, ifw2, bunlnt, 21 bunsub, bunvec[10]; 22 } prssta_1; 23 24 extern struct misc_1_ { 25 integer mbase, strbit, pltime, shour, smin, ssec, batdrp[9], inpch, outch, 26 dbch, dbgflg, prsflg, gdtflg, vmaj, vmin; 27 char vedit[1]; 28 } misc_1; 29 30 extern struct curxt_1_ { 31 integer xelnt[4], xtype, xroom1, xstrng, xactio, xobj; 32 } curxt_1; 33 34 extern struct play_1_ { 35 integer winner, here; 36 logical telflg; 37 integer moves, deaths, rwscor, mxscor, mxload, ltshft, bloc, mungrm, hs, 38 egscor, egmxsc; 39 } play_1; 40 41 extern struct rmsg_1_ { 42 integer mlnt, rtext[1500]; 43 } rmsg_1; 44 45 extern struct input_1_ { 46 integer inlnt; 47 char inbuf[76]; 48 integer sublnt; 49 char subbuf[76]; 50 } input_1; 51 52 extern struct screen_1_ { 53 integer fromdr, scolrm, scolac, scoldr[8], scolwl[12]; 54 } screen_1; 55 56 extern struct rooms_1_ { 57 integer rlnt, rdesc2, rdesc1[200], rexit[200], ractio[200], rval[200], 58 rflag[200]; 59 } rooms_1; 60 61 extern struct exits_1_ { 62 integer xlnt, travel[1000]; 63 } exits_1; 64 65 extern struct objcts_1_ { 66 integer olnt, odesc1[300], odesc2[300], odesco[300], oactio[300], oflag1[ 67 300], oflag2[300], ofval[300], otval[300], osize[300], ocapac[300] 68 , oroom[300], oadv[300], ocan[300], oread[300]; 69 } objcts_1; 70 71 extern struct puzzle_1_ { 72 integer cpdr[16], cpwl[8], cpvec[64]; 73 } puzzle_1; 74 75 extern struct oroom2_1_ { 76 integer r2lnt, o2[20], r2[20]; 77 } oroom2_1; 78 79 extern struct cevent_1_ { 80 integer clnt, ctick[30], cactio[30]; 81 logical cflag[30], ccncel[30]; 82 } cevent_1; 83 84 extern struct hack_1_ { 85 integer thfpos; 86 logical thfflg, thfact, swdact; 87 integer swdsta; 88 } hack_1; 89 90 extern struct vill_1_ { 91 integer vlnt, villns[4], vprob[4], vopps[4], vbest[4], vmelee[4]; 92 } vill_1; 93 94 extern struct advs_1_ { 95 integer alnt, aroom[4], ascore[4], avehic[4], aobj[4], aactio[4], astren[ 96 4], aflag[4]; 97 } advs_1; 98 99 extern struct findex_1_ { 100 /* flags */ 101 logical trollf, cagesf, bucktf, caroff, carozf, lwtidf, domef, glacrf, 102 echof, riddlf, lldf, cyclof, magicf, litldf, safef, gnomef, 103 gnodrf, mirrmf, egyptf, onpolf, blabf, brieff, superf, buoyf, 104 grunlf, gatef, rainbf, cagetf, empthf, deflaf, glacmf, frobzf, 105 endgmf, badlkf, thfenf, singsf, mrpshf, mropnf, wdopnf, mr1f, 106 mr2f, inqstf, follwf, spellf, cpoutf, cpushf, deadf, zgnomf, matf, 107 plookf, ptoucf, broc1f, broc2f, exorbf, exorcf, punlkf; 108 /* switch__ */ 109 integer btief, binff, rvmnt, rvclr, rvcyc, rvsnd, rvgua, orrug, orcand, 110 ormtch, orlamp, mdir, mloc, poleuf, quesno, nqatt, corrct, lcell, 111 pnumb, acell, dcell, cphere, ttie, matobj; 112 } findex_1; 113 114 /* We're going to take a chance here, and assume that the flags and switches 115 above are really packed like an array. So findex_flags[0..55] are the 116 flags, and findex_switches[0..23] are the switches. If your compiler 117 doesn't deal with this, you're in trouble. --Z */ 118 #define findex_flags (&findex_1.trollf) 119 #define findex_switches (&findex_1.btief) 120 121 extern integer c__0, c__1, c__2, c__3, c__4, c__5, c__6, c__7, c__8, 122 c__9, c__10, c__11, c__12, c__14, c__15, c__16, c__18, c__19, c__20, 123 c__21, c__22, c__23, c__24, c__25, c__27, c__30, c__31, c__33, c__34, 124 c__35, c__36, c__38, c__39, c__40, c__42, c__43, c__44, c__45, c__46, 125 c__47, c__48, c__49, c__50, c__51, c__52, c__53, c__54, c__55, c__56, 126 c__57, c__58, c__59, c__60, c__61, c__62, c__63, c__64, c__65, c__66, 127 c__67, c__69, c__70, c__71, c__75, c__76, c__79, c__80, c__81, c__82, 128 c__84, c__85, c__87, c__88, c__89, c__90, c__93, c__94, c__96, c__98, 129 c__99, c__100, c__103, c__104, c__107, c__108, c__109, c__110, c__111, 130 c__112, c__113, c__115, c__118, c__119, c__121, c__122, c__123, 131 c__124, c__126, c__128, c__129, c__130, c__131, c__132, c__133, 132 c__134, c__135, c__136, c__137, c__138, c__139, c__140, c__141, 133 c__142, c__143, c__144, c__145, c__148, c__149, c__150, c__151, 134 c__152, c__153, c__154, c__155, c__156, c__158, c__159, c__160, 135 c__161, c__162, c__163, c__164, c__165, c__166, c__169, c__170, 136 c__171, c__172, c__173, c__175, c__176, c__177, c__178, c__179, 137 c__180, c__181, c__182, c__183, c__184, c__185, c__186, c__187, 138 c__188, c__189, c__190, c__191, c__195, c__197, c__200, c__201, 139 c__202, c__203, c__204, c__205, c__207, c__208, c__209, c__210, 140 c__211, c__212, c__213, c__214, c__217, c__218, c__219, c__220, 141 c__226, c__227, c__228, c__229, c__232, c__233, c__234, c__235, 142 c__236, c__238, c__239, c__240, c__241, c__242, c__243, c__244, 143 c__247, c__248, c__249, c__250, c__256, c__257, c__258, c__259, 144 c__260, c__261, c__262, c__263, c__264, c__265, c__269, c__270, 145 c__272, c__273, c__279, c__280, c__282, c__283, c__284, c__285, 146 c__286, c__287, c__288, c__289, c__290, c__291, c__292, c__293, 147 c__294, c__295, c__296, c__297, c__298, c__299, c__300, c__301, 148 c__302, c__310, c__326, c__327, c__328, c__334, c__335, c__336, 149 c__337, c__338, c__339, c__340, c__341, c__343, c__344, c__345, 150 c__350, c__356, c__357, c__358, c__361, c__362, c__363, c__364, 151 c__365, c__366, c__367, c__368, c__369, c__370, c__371, c__378, 152 c__379, c__380, c__381, c__382, c__385, c__386, c__387, c__390, 153 c__391, c__396, c__397, c__398, c__400, c__401, c__402, c__403, 154 c__404, c__405, c__406, c__407, c__408, c__409, c__410, c__411, 155 c__412, c__413, c__414, c__419, c__420, c__421, c__422, c__423, 156 c__424, c__425, c__426, c__427, c__428, c__429, c__430, c__431, 157 c__432, c__437, c__438, c__439, c__442, c__443, c__445, c__447, 158 c__448, c__452, c__453, c__454, c__455, c__456, c__457, c__458, 159 c__459, c__460, c__461, c__462, c__463, c__464, c__465, c__466, 160 c__469, c__470, c__498, c__499, c__502, c__505, c__506, c__507, 161 c__510, c__511, c__512, c__515, c__516, c__519, c__520, c__521, 162 c__522, c__523, c__525, c__527, c__528, c__529, c__530, c__531, 163 c__532, c__533, c__534, c__535, c__536, c__537, c__538, c__539, 164 c__540, c__541, c__542, c__543, c__544, c__545, c__546, c__547, 165 c__548, c__549, c__550, c__551, c__559, c__560, c__561, c__562, 166 c__563, c__564, c__565, c__566, c__567, c__568, c__569, c__570, 167 c__571, c__572, c__573, c__577, c__578, c__579, c__580, c__583, 168 c__584, c__585, c__590, c__591, c__592, c__593, c__594, c__595, 169 c__596, c__597, c__598, c__599, c__600, c__601, c__603, c__604, 170 c__605, c__606, c__612, c__613, c__614, c__615, c__616, c__617, 171 c__618, c__619, c__620, c__621, c__622, c__623, c__625, c__626, 172 c__627, c__628, c__629, c__630, c__631, c__632, c__633, c__634, 173 c__635, c__636, c__637, c__638, c__639, c__640, c__641, c__642, 174 c__643, c__644, c__645, c__646, c__647, c__648, c__649, c__650, 175 c__651, c__658, c__659, c__660, c__662, c__663, c__664, c__666, 176 c__667, c__668, c__672, c__673, c__674, c__675, c__676, c__681, 177 c__682, c__683, c__684, c__685, c__686, c__687, c__688, c__694, 178 c__705, c__706, c__707, c__708, c__709, c__710, c__711, c__712, 179 c__723, c__724, c__725, c__726, c__727, c__728, c__729, c__730, 180 c__733, c__734, c__735, c__736, c__737, c__738, c__741, c__742, 181 c__743, c__744, c__745, c__746, c__747, c__748, c__751, c__752, 182 c__753, c__756, c__757, c__758, c__759, c__760, c__763, c__764, 183 c__765, c__766, c__767, c__768, c__769, c__778, c__779, c__780, 184 c__781, c__782, c__783, c__786, c__792, c__797, c__798, c__799, 185 c__800, c__806, c__807, c__808, c__809, c__810, c__811, c__818, 186 c__825, c__826, c__827, c__828, c__829, c__832, c__838, c__843, 187 c__846, c__847, c__848, c__851, c__855, c__856, c__857, c__858, 188 c__859, c__860, c__863, c__864, c__865, c__866, c__867, c__868, 189 c__869, c__870, c__871, c__874, c__875, c__876, c__877, c__880, 190 c__882, c__885, c__886, c__889, c__891, c__894, c__895, c__896, 191 c__897, c__898, c__899, c__900, c__903, c__904, c__905, c__906, 192 c__907, c__908, c__909, c__910, c__911, c__913, c__914, c__915, 193 c__923, c__924, c__925, c__926, c__927, c__928, c__929, c__930, 194 c__931, c__933, c__934, c__935, c__936, c__937, c__938, c__939, 195 c__942, c__943, c__944, c__945, c__946, c__947, c__948, c__949, 196 c__950, c__951, c__952, c__953, c__954, c__955, c__956, c__959, 197 c__960, c__961, c__962, c__963, c__967, c__968, c__969, c__970, 198 c__971, c__972, c__973, c__974, c__976, c__977, c__978, c__979, 199 c__980, c__981, c__983, c__984, c__985, c__986, c__987, c__990, 200 c__991, c__992, c__993, c__994, c__995, c__996, c__999, c__1000, 201 c__1001, c__1002, c__1003, c__1004, c__1005, c__1006, c__1007, 202 c__1008, c__1009, c__1010, c__1011, c__1012, c__1013, c__1014, 203 c__1015, c__1016, c__1017, c__1020, c__1021, c__1022, c__1023, 204 c__1024, c__1025, c__1026, c__1028, c__1029, c__1034, c__1036, 205 c__1038, c__1039, c__1040, c__1042, c__1043, c__1044, c__1046, 206 c__1047, c__1048, c__1049, c__1050, c__1051, c__1052, c__1053, 207 c__1054, c__1056, c__1057, c__1063, c__1064, c__1065, c__1066, 208 c__1067, c__1070, c__1071, c__1075, c__1076, c__1077, c__1081, 209 c__1500, c__10240, c_n1, c_n10, c_n61, c_n5555; 210 211 extern logical c_true; 212 extern logical c_false; 213