home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / games / volume15 / dinkum2 / part07 / dink_sym.h
C/C++ Source or Header  |  1993-01-27  |  12KB  |  573 lines

  1. /***********************************************************/
  2. /*                                                         */
  3. /*          --- Dinkum Symbol Definition File ---          */
  4. /*                                                         */
  5. /*            Version:  Mk 1.12,   21 December 1992        */
  6. /*                                                         */
  7. /***********************************************************/
  8.  
  9. #include <stdio.h> 
  10.  
  11. /* Deal with K&R C */
  12. #if sun
  13. #define void    int
  14. #define PROTOTYPE    0
  15. #else
  16. #define PROTOTYPE    1
  17. #endif
  18.  
  19. /* Room code numbers */
  20. /*  These code numbers 'n' point to the table entry in room[n][] */
  21. #define R_wall        -1
  22. #define R_meadow    0
  23. #define R_dike        3
  24. #define R_river_edge    4
  25. #define R_river        5
  26. #define R_stream    6
  27. #define R_slime        7
  28. #define R_bunyip    8
  29. #define R_river_exit    9
  30. #define R_forest    11
  31. #define R_billabong    14
  32. #define R_taipan    18
  33. #define R_mine_head    22
  34. #define R_lift_entr    27
  35. #define R_bitumen    29
  36. #define R_office_entr    36
  37. #define R_office_hall    37
  38. #define R_office_mang    38
  39. #define R_geo_w        39
  40. #define R_store_room    40
  41. #define R_geo_e        41
  42. #define R_lift_inside    43
  43. #define R_L49_entr      44
  44. #define R_L67_entr      45
  45. #define R_L82_entr      46
  46. #define R_hideout_entr    144
  47. #define R_hideout    146
  48. #define R_bend        147
  49. #define R_no_treasure    159
  50. #define R_manhole_1    166
  51. #define R_manhole_2    170
  52. #define R_foreman    177
  53. #define R_blast_point    185
  54. #define R_ufo_w        191
  55. #define R_ufo_nw    192
  56. #define R_ufo_n        193
  57. #define R_ufo_ne    194
  58. #define R_ufo_e        195
  59. #define R_ufo_se    196
  60. #define R_ufo_s        197
  61. #define R_ufo_sw    198
  62. #define R_air_lock    199
  63. #define R_ship_passage    200
  64. #define R_flight_deck    201
  65. #define R_panel        202
  66. #define R_transport    203
  67. #define R_gleep_tank    206
  68. #define R_warning    217
  69. #define R_gong        238
  70. #define R_closet    240 
  71. #define R_guard     241
  72. #define R_prayer    242
  73. #define R_road_kill_s    245
  74. #define R_road_kill_n    248
  75.  
  76. /* Room category indicator for room[n][i] where "i" is below */
  77. #define M_rm_type    10
  78. #define M_obj_cnt    11
  79. #define M_rm_status    12
  80. #define M_monster    13
  81. #define M_gleep        14
  82. #define M_descp        15
  83.  
  84. /* Object category indicator for object[n][i] where "i" is below */
  85. #define J_loc        0
  86. #define J_value         1
  87. #define J_type        2
  88. #define J_parse_id    3
  89. #define J_weight    4
  90. #define J_property    5
  91.  
  92. /* Room type, referred to by room[n][M_rm_type] */
  93. #define T_lethal    -1
  94. #define T_short_descp    0
  95. #define T_long_descp    1
  96. #define T_action_obj    2
  97. #define T_was_long    3
  98. #define T_unmovable_obj    4
  99. #define T_looping    5
  100.  
  101. /* Room status, referred to by room[n][M_rm_status] */
  102. #define S_closed    0
  103. #define S_revealed    1
  104. #define S_flashing    1
  105. #define S_dialed    2
  106. #define S_unlocked    2
  107. #define S_open        3
  108. #define S_L0        4
  109. #define S_L49        5
  110. #define S_L67        6
  111. #define S_L82        7
  112. #define S_kicked    8
  113. #define S_off        0
  114. #define S_on        1
  115.  
  116. /* Vocabulary code numbers */
  117. #define V_LINE_END    -1
  118. #define V_NULL        0
  119. #define V_MOVE        1
  120. #define V_PLURAL    2
  121. #define V_VERB_ONLY    3
  122. #define V_DIRECTION    4
  123. /* --- below are real word symbols --- */
  124. #define V_east        3
  125. #define V_west        4
  126. #define V_up        5
  127. #define V_down         6
  128. #define V_u        15
  129. #define V_quit        21
  130. #define V_unlock    22
  131. #define V_lock        23
  132. #define V_take        24
  133. #define V_leave        25
  134. #define V_drop        26
  135. #define V_can        27
  136. #define V_bottle    28
  137. #define V_mat        29  
  138. #define V_key        30
  139. #define V_butt        31
  140. #define V_look        32
  141. #define V_door        33
  142. #define V_open        34
  143. #define V_get        35
  144. #define V_throw        36
  145. #define V_turn        37
  146. #define V_on        38
  147. #define V_off        39
  148. #define V_push        40
  149. #define V_button    41
  150. #define V_enter        42
  151. #define V_switch    43
  152. #define V_zero        44
  153. #define V_forty_nine    45
  154. #define V_sixty_seven    46
  155. #define V_eighty_two    47
  156. #define V_0        48
  157. #define V_49        49
  158. #define V_67        50
  159. #define V_82        51
  160. #define V_beer        52
  161. #define V_lager        53
  162. #define V_doormat    54
  163. #define V_lift        55
  164. #define V_on_q        56
  165. #define V_off_q        57
  166. #define V_svc        58
  167. #define V_map        59
  168. #define V_picture    60
  169. #define V_safe        61
  170. #define V_dial        62
  171. #define V_paper        63
  172. #define V_put        64
  173. #define V_close        65
  174. #define V_read        66
  175. #define V_gold        67
  176. #define V_bar        68
  177. #define V_dynamite    69
  178. #define V_rifle        70
  179. #define V_M16        71
  180. #define V_m16        72
  181. #define V_cap        73
  182. #define V_matches    74
  183. #define V_diamond    75
  184. #define V_ring        76
  185. #define V_ruby        77
  186. #define V_silver    78
  187. #define V_coin        79
  188. #define V_bill        80
  189. #define V_money        81
  190. #define V_teapot    82
  191. #define V_clip        83
  192. #define V_ammo        84
  193. #define V_box        85
  194. #define V_stick        86
  195. #define V_pills        87
  196. #define V_orange    88
  197. #define V_glowing    89
  198. #define V_saphire    90
  199. #define V_emerald    91
  200. #define V_score        92
  201. #define V_inventory    93
  202. #define V_examine    94
  203. #define V_describe    95
  204. #define V_drink     96
  205. #define V_fill        97
  206. #define V_water        98
  207. #define V_fourex    99
  208. #define V_invent    100
  209. #define V_l        101
  210. #define V_press        102
  211. #define V_exit        103
  212. #define V_all        104
  213. #define V_Fourex    105
  214. #define V_everything    106
  215. #define V_shoot        107
  216. #define V_kill        108
  217. #define V_ned        109
  218. #define V_Ned        110
  219. #define V_kelly        111
  220. #define V_Kelly        112
  221. #define V_pick        113
  222. #define V_grab        114
  223. #define V_combination    115
  224. #define V_select    116
  225. #define V_safety    117
  226. #define V_SAFE        118
  227. #define V_triple    119
  228. #define V_III        120
  229. #define V_single    121
  230. #define V_I        122
  231. #define V_auto        123
  232. #define V_AUTO        124
  233. #define V_automatic    125
  234. #define V_set        126
  235. #define V_insert    127
  236. #define V_attach    128
  237. #define V_plan        129
  238. #define V_gun        130
  239. #define V_magazine    131
  240. #define V_hoop        132
  241. #define V_snake        133
  242. #define V_bear        134
  243. #define V_wombat    135
  244. #define V_remove    136
  245. #define V_eject        137
  246. #define V_org_clip    138
  247. #define V_shut        139
  248. #define V_gleep        140
  249. #define V_gleeps    141
  250. #define V_letter    142
  251. #define V_envelope    143
  252. #define V_torch        144
  253. #define V_mail        145
  254. #define V_tank        146
  255. #define V_carefully    147
  256. #define V_gently    148
  257. #define V_softly    149
  258. #define V_slow_drop    150
  259. #define V_light        151
  260. #define V_ignite    152
  261. #define V_fuse        153
  262. #define V_slowly    154
  263. #define V_match        155
  264. #define V_cube        156
  265. #define V_blue        157
  266. #define V_blue_button    158
  267. #define V_gray        159
  268. #define V_gray_button    160
  269. #define V_clapper    161
  270. #define V_sound        162
  271. #define V_bang        163
  272. #define V_hit        164
  273. #define V_strike    165
  274. #define V_gong        166
  275. #define V_detector    167
  276. #define V_give        168
  277. #define V_stats        169
  278. #define V_jsys        170
  279. #define V_su        171
  280. #define V_yellow    172
  281. #define V_yellow_button    173
  282. #define V_poster    174
  283. #define V_eat        175
  284. #define V_swallow    176
  285. #define V_pill        177
  286. #define V_atropine    178
  287. #define V_packet    179
  288. #define V_wrapper    180
  289. #define V_tire        181
  290. #define V_shell        182
  291. #define V_brick        183
  292. #define V_rope        184
  293. #define V_package    185
  294. #define V_belt        186
  295. #define V_filter    187
  296. #define V_string    188
  297. #define V_cabinet    189
  298. #define V_calendar    190
  299. #define V_tackle    191
  300. #define V_bit        192
  301. #define V_jack        193
  302. #define V_pen        194
  303. #define V_pencil    195
  304. #define V_wire        196
  305. #define V_pipe        197
  306. #define V_panel        198
  307. #define V_opener    199
  308. #define V_cord        200
  309. #define V_photo        201
  310. #define V_chair        202
  311. #define V_bulb        203
  312. #define V_rag        204
  313. #define V_tube        205
  314. #define V_carpet    206
  315. #define V_branch    207
  316. #define V_cork        208
  317. #define V_trap        209
  318. #define V_lighter    210
  319. #define V_lace        211
  320. #define V_comb        212
  321. #define V_umbrella    213
  322. #define V_meadow    214
  323. #define V_billabong    215
  324. #define V_river        216
  325. #define V_road        217
  326. #define V_forest    218
  327. #define V_grass        219
  328. #define V_stream    220
  329. #define V_desert    221
  330. #define V_building    222
  331. #define V_office    223
  332. #define V_hideout    224
  333. #define V_dust        225
  334. #define V_mine        226
  335. #define V_tunnel    227
  336. #define V_tree        228
  337. #define V_spinifex    229
  338. #define V_hexagon    230
  339. #define V_spacecaft    231
  340. #define V_airlock    232
  341. #define V_wing        233
  342. #define V_hole        234
  343. #define V_tray        235
  344. #define V_liquid    236
  345. #define V_cockroach    237
  346. #define V_go        238
  347. #define V_scream    239
  348. #define V_yell        240
  349. #define V_bring        241
  350. #define V_help        242
  351. #define V_dump        243
  352. #define V_attack    244
  353. #define V_check        245
  354. #define V_inspect    246
  355. #define V_place        247
  356. #define V_touch        248
  357. #define V_pull        249
  358. #define V_extinguish    250
  359. #define V_ask        251
  360. #define V_talk        252
  361. #define V_tell        253
  362. #define V_find        254
  363. #define V_move        255
  364. #define V_break        256
  365. #define V_kick        257
  366. #define V_smash        258
  367. #define V_feed        259
  368. #define V_taste        260
  369. #define V_smell        261
  370. #define V_slam        262
  371. #define V_desk        263
  372. #define V_in        264
  373. #define V_into        265
  374. #define V_under        266
  375. #define V_out        267
  376. #define V_from        268
  377. #define V_by        269
  378. #define V_with        270
  379. #define V_fling        271
  380. #define V_what        272
  381. #define V_where        273
  382. #define V_are        274
  383. #define V_am        275
  384. #define V_have        276
  385. #define V_QUESTION    277
  386. #define V_how        278
  387. #define V_why        279
  388. #define V_who        280
  389. #define V_when        281
  390. #define V_bop        282
  391. #define V_walk        283
  392. #define V_run        284
  393. #define V_jump        285
  394. #define V_hop        286
  395. #define V_stroll    287
  396. #define V_saunter    288
  397. #define V_swagger    289
  398. #define V_swing        290
  399. #define V_dig        291
  400. #define V_swim        292
  401. #define V_depart    293
  402. #define V_info        294
  403. #define V_back        295
  404. #define V_hold        296
  405. #define V_fire        297
  406. #define V_stand        298
  407. #define V_painting    299
  408. #define V_doors        300
  409. #define V_treasure    301
  410. #define V_trigger    302
  411. #define V_load        303
  412. #define V_unload    304
  413. #define V_sand        305
  414. #define V_cockroaches    306
  415. #define V_kangaroo    307
  416. #define V_climb        308
  417. #define V_bulldust    309
  418. #define V_kangaroos    310
  419. #define V_spinifexes    311
  420. #define V_fuze        312
  421. #define V_message    313
  422. #define V_wall        314
  423. #define V_recorder    315
  424. #define V_red        316
  425. #define V_white        317
  426. #define V_green        318
  427. #define V_red_button    319
  428. #define V_white_button    320
  429. #define V_green_button    321
  430. #define V_grey        322
  431. #define V_matchbox    323
  432.  
  433. /* Object status as referred to in object[n][0] */
  434. #define B_have      -1
  435. #define B_unmade    -2
  436. #define B_destroyed    -3
  437. #define B_in_safe    -5
  438.  
  439. /* Object pointer code number "i" for object[i][j] and obj[i]  */
  440. /*  four digit numbers are ***not*** objects and not in object[n][j] */
  441. #define O_can        0
  442. #define O_butt        1
  443. #define O_bottle    2
  444. #define O_mat        3
  445. #define O_key        4
  446. #define O_umbrella    5
  447. #define O_tackle    6
  448. #define O_bit        7
  449. #define O_map        8
  450. #define O_map_frag    9
  451. #define O_paper        10
  452. #define O_gold        11
  453. #define O_jack        12
  454. #define O_dynamite    13
  455. #define O_clip        14
  456. #define O_pen        15
  457. #define O_org_clip    16
  458. #define O_pencil    17
  459. #define O_rifle        18
  460. #define O_wire        19
  461. #define O_pipe        20
  462. #define O_cap        21
  463. #define O_matches    22
  464. #define O_ring        23
  465. #define O_opener    24
  466. #define O_ruby        25
  467. #define O_teapot    26
  468. #define O_coin        27
  469. #define O_cord        28
  470. #define O_bill        29
  471. #define O_photo        30
  472. #define O_chair        31
  473. #define O_bulb        32
  474. #define O_pills        33
  475. #define O_saphire    34
  476. #define O_emerald    35
  477. #define O_rag        36
  478. #define O_tube        37
  479. #define O_carpet    38
  480. #define O_branch    39
  481. #define O_letter    40
  482. #define O_cork        41
  483. #define O_torch        42
  484. #define O_trap        43
  485. #define O_lighter    44
  486. #define O_cube        45
  487. #define O_clapper    46
  488. #define O_detector    47
  489. #define O_lace        48
  490. #define O_comb        49
  491. #define O_wrapper    50
  492. #define O_tire        51
  493. #define O_shell        52
  494. #define O_brick        53
  495. #define O_rope        54
  496. #define O_package    55
  497. #define O_belt        56
  498. #define O_filter    57
  499. #define O_string    58
  500. #define O_recorder    59
  501. #define O_safe        1000
  502. #define O_message    2000
  503.  
  504. /* Miscellaneous flags */
  505. #define FALSE        0
  506. #define TRUE        1
  507. #define F_safe_drop    2
  508. #define F_normal_drop    3
  509. #define F_not_done    4
  510. #define F_done        5
  511. #define F_get_all    6
  512. #define F_no_have    7
  513. #define F_asleep    8
  514. #define F_stealing    9
  515. #define F_passive    10
  516. #define F_aggressive    11
  517. #define F_killing    12
  518. #define F_no_monster    13
  519. #define F_monster_active    14
  520. #define F_no_argument    15
  521. #define F_safety    16
  522. #define F_single    17
  523. #define F_triple    18
  524. #define F_auto        19
  525. #define F_no_clip    20
  526. #define F_normal_clip    21
  527. #define F_org_clip    22
  528. #define F_wounded    23
  529. #define F_replace    24
  530. #define F_ignore    25
  531. #define F_died        26
  532. #define F_quit        27
  533.  
  534. /* enemy/monster symbols */
  535. #define N_ned        0
  536. #define N_wombat    1
  537. #define N_drop_bear    2
  538. /* 2-5 drop bear   */
  539. #define N_hoop_snake    6
  540. /* 6-13 hoop snake */
  541. #define N_guards    14
  542. #define N_mullah    15
  543.  
  544. #define E_location    0
  545. #define E_status    1
  546. #define E_hits        2
  547.  
  548. /* adjective pointer */
  549. #define Av_adv        0
  550. #define Av_verb_old     1
  551. #define Av_verb_new    2
  552.  
  553. /* adjective pointer */
  554. #define Aj_adj        0
  555. #define Aj_trig_noun    1
  556. #define Aj_act_noun    2
  557. #define Aj_adj_cmd    3
  558.  
  559. /* Object external property as referred to in object[n][J_type] */
  560. #define Z_normal    0
  561. #define Z_transform    1
  562. #define Z_alias        2
  563. #define Z_unmovable    3
  564.  
  565. /* Structure for monsters */
  566. struct monster_struct { 
  567.     int Type ;    /* Monster type                  */
  568.     int Location ;    /* Location of the monster            */
  569.     int Status ;    /* Status of the monster              */
  570.     int Hits ;    /* Number of bullet hits into monster */
  571. } ;
  572.  
  573.