home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / games / agt3.zip / CRUSADE.CMD < prev    next >
OS/2 REXX Batch file  |  1988-05-21  |  35KB  |  1,166 lines

  1. (***************************************************)
  2. (* Flags & Counters --- What they stand for        *)
  3. (* Flags 0   Display CMD detail as being processed *)
  4. (*           enter DEBUG to toggle ON and OFF      *)
  5. (* Flags 1   ON if player has been in cave         *)
  6. (* Flags 2   Has thrown something into chasm if ON *)
  7. (* Flags 3   Harp is in tune if ON                 *)
  8. (* Flags 5   Has met toad if ON                    *)
  9. (* Flags 6   Has met princess if ON                *)
  10. (* Flags 7   Has met horse if ON                   *)
  11. (* Counter 1 Number of turns torch has been lit    *)
  12. (* Counter 2 Number of turns player has been       *)
  13. (*           stumbling around in the dark          *)
  14. (***************************************************)
  15.  
  16. (***************************************************)
  17. (*   First -- Automatic commands executed each turn*)
  18. (*   Part     regardless of command's VERB etc     *)
  19. (***************************************************)
  20.  
  21. (***************************************************)
  22. (*  Automatic commands to control time torch is ON *)
  23. (*   -- Torch starts to flicker at 50 turns        *)
  24. (*   -- Torch goes off at 75 turns                 *)
  25. (*   -- Player dies if he stumbles around in dark  *)
  26. (*      for 5 turns                                *)
  27. (***************************************************)
  28.  
  29.  
  30. COMMAND ANY
  31. Present 210 (* Blazing torch *)
  32. CounterEquals 1 50 (* light has been on for 50 turns *)
  33. PrintMessage 74 (* light is flickering *)
  34. RoomNeedsLight (* will be dark if no light *)
  35. PrintMessage 75 (* Better get out before light goes out *)
  36. END_COMMAND
  37.  
  38. COMMAND ANY
  39. Present 210 (* Blazing torch *)
  40. CounterGT 1 50 (* light has been on for more than 50 turns *)
  41. CounterLT 1 75 (* light has been on for less than 75 turns *)
  42. PrintMessage 74 (* light is flickering *)
  43. END_COMMAND
  44.  
  45. COMMAND ANY
  46. Present 210 (* Blazing torch *)
  47. CounterEquals 1 75 (* light has been on for 75 turns *)
  48. PrintMessage 76 (* light has gone out *)
  49. SwapLocations 210 203 (* switch to unlit torch *)
  50. Destroy 207 (* dry matches *)
  51. RoomNeedsLight (* will be dark if no light *)
  52. TurnCounterON 2 (* now stumbling around in dark *)
  53. LookAtRoom
  54. END_COMMAND
  55.  
  56. COMMAND ANY
  57. RoomNeedsLight (* will be dark if no light *)
  58. NOT LightPresent (* no light in room *)
  59. CounterEquals 2 0 (* stumbling counter not currently on *)
  60. PrintMessage 77 (* stumbling is dangerous *)
  61. TurnCounterON 2 (* now start counter for stumbling around in dark *)
  62. END_COMMAND
  63.  
  64. COMMAND ANY
  65. CounterGT 2 1 (* stumbling around in dark *)
  66. RoomNeedsLight (* will be dark if no light *)
  67. NOT LightPresent (* no light in room *)
  68. PrintMessage 77 (* stumbling is dangerous *)
  69. CounterEquals 2 5
  70. KillPlayer (* Player dies *)
  71. DoneWithTurn (* no further action -- get next input *)
  72. END_COMMAND
  73.  
  74. COMMAND ANY
  75. CounterGT 2 5 (* have previously been stumbling around in dark *)
  76. RoomNeedsLight (* will be dark if no light *)
  77. NOT LightPresent (* no light in room *)
  78. TurnCounterON 2 (* re-start counter for stumbling around in dark *)
  79. END_COMMAND
  80.  
  81. (***************************************************)
  82. (*  Automatic commands to offer player hint if     *)
  83. (*  player has not been in cave by TURN 10         *)
  84. (***************************************************)
  85.  
  86. COMMAND ANY
  87. ATlocation 7 (* in cave *)
  88. TurnFlagON 1 (* has visited cave *)
  89. END_COMMAND
  90.  
  91. COMMAND ANY
  92. FlagOFF 1 (* hasn't visited cave yet *)
  93. TurnsEquals 10
  94. PrintMessage 14 (* offer player a hint for 10 points *)
  95. PromptForYes (* get player's answer *)
  96. PrintMessage 16 (* give hint *)
  97. MinusScore 10 (* subtract 10 points from score *)
  98. DoneWithTurn (* no further action -- get next input *)
  99. END_COMMAND
  100.  
  101. (***************************************************)
  102. (*  Automatic commands to control appearance and   *)
  103. (*  disappearance of guard at various locations    *)
  104. (***************************************************)
  105.  
  106. COMMAND ANY
  107. Chance 20
  108. AtLocation 24  (* Baron's private chamber *)
  109. NOT InRoom 301  (* Guard *)
  110. PutInCurrentRoom 301  (* Put guard in room *)
  111. PrintMessage 33   (* Guard suddenly appears *)
  112. BlankLine
  113. END_COMMAND
  114.  
  115. COMMAND ANY
  116. Chance 50
  117. AtLocation 17  (* Guard's quarters *)
  118. NOT InRoom 301  (* guard *)
  119. PutInCurrentRoom 301 (* angry guard *)
  120. PrintMessage 33 (* guard appears *)
  121. BlankLine
  122. END_COMMAND
  123.  
  124. COMMAND ANY
  125. Chance 50
  126. AtLocation 39 (* passage near cell *)
  127. NOT InRoom 301 (* guard *)
  128. NOT InRoom 259 (* unconscious guard *)
  129. PutInCurrentRoom 301 (* angry guard *)
  130. PrintMessage 33 (* Guard appears *)
  131. BlankLine
  132. END_COMMAND
  133.  
  134. COMMAND ANY
  135. InRoom 301 (* guard *)
  136. NOT atLocation 39 (* passage near cell *)
  137. IsWearing 230 (* Baron's Armor *)
  138. SendToRoom 301 11 (* guard leaves *)
  139. PrintMessage 45 (* Guard leaves *)
  140. AtLocation 11 (* small room in cave *)
  141. Destroy 301 (* Guard disappears *)
  142. END_COMMAND
  143.  
  144. (***************************************************)
  145. (*  Automatic commands to give and heal player     *)
  146. (*  a broken leg                                   *)
  147. (***************************************************)
  148.  
  149. COMMAND ANY
  150. IsCarrying 215 (* Broken leg *)
  151. VerbIsDirection (* Trying to move *)
  152. PrintMessage 8 (* Sorry, but you can't *)
  153. PrintMessage 43 (* with a broken leg *)
  154. DoneWithTurn (* no further action -- get next input *)
  155. END_COMMAND
  156.  
  157. COMMAND ANY
  158. Chance 20
  159. IsCarrying 215 (* Broken leg *)
  160. PrintMessage 44 (* Leg is healed *)
  161. BlankLine
  162. Destroy 215  (* get rid of broken leg *)
  163. END_COMMAND
  164.  
  165. COMMAND ANY
  166. Chance 25
  167. AtLocation 11 (* room in wall *)
  168. InRoom 301 (* Guard *)
  169. GetIt 215 (* give broken leg *)
  170. GoToRoom 10  (* guard throws you into room 10 *)
  171. PrintMessage 42
  172. PutInCurrentRoom 204 (* rope goes in to room also *)
  173. DoneWithTurn (* no further action -- get next input *)
  174. END_COMMAND
  175.  
  176. (***************************************************)
  177. (*  Automatic commands to control meeting horse    *)
  178. (*  and have horse follow player                   *)
  179. (***************************************************)
  180.  
  181. COMMAND ANY
  182. Present 303 (* horse *)
  183. FlagOFF 7 (* hasn't met horse yet *)
  184. TurnFlagON 7 (* now has met *)
  185. PrintMessage 83 (* met horse *)
  186. BlankLine
  187. END_COMMAND
  188.  
  189. COMMAND ANY
  190. FlagON 7 (* has met horse *)
  191. AtLocation 19 (* in courtyard *)
  192. PutInCurrentRoom 304 (* grazing horse *)
  193. LookAtRoom
  194. END_COMMAND
  195.  
  196. COMMAND ANY
  197. FlagON 7 (* has met horse *)
  198. IsSomeWhere 216 (* drawbridge is down *)
  199. AtLocationGT 1 (* outside castle *)
  200. AtLocationLT 7 (* not in cave *)
  201. NOT AtLocation 3 (* not at top of tree *)
  202. PutInCurrentRoom 304 (* grazing horse *)
  203. LookAtRoom
  204. END_COMMAND
  205.  
  206. COMMAND ANY
  207. FlagON 7 (* has met horse *)
  208. IsSomeWhere 216 (* drawbridge is down *)
  209. AtLocation 43 (* thick woods *)
  210. PutInCurrentRoom 304 (* grazing horse *)
  211. LookAtRoom
  212. END_COMMAND
  213.  
  214. COMMAND ANY
  215. FlagON 7 (* has met horse *)
  216. IsSomeWhere 216 (* drawbridge is down *)
  217. AtLocation 12 (* top of hill *)
  218. SendToRoom 304 45 (* grazing horse goes to winning room *)
  219. END_COMMAND
  220.  
  221. (***************************************************)
  222. (*  Automatic commands to control meeting toad     *)
  223. (*  and have toad follow player and speak          *)
  224. (***************************************************)
  225.  
  226. COMMAND ANY
  227. Present 300 (* toad *)
  228. TurnFlagON 5 (* has met toad *)
  229. END_COMMAND
  230.  
  231. COMMAND ANY
  232. IsSomewhere 300 (* toad exists *)
  233. FlagON 5 (* has met toad *)
  234. PutInCurrentRoom 300 (* put toad in room *)
  235. VerbIsDirection (* moving to another location *)
  236. PrintMessage 80 (* the toad follows you *)
  237. END_COMMAND
  238.  
  239. COMMAND ANY
  240. Chance 50
  241. Present 300 (* horny toad *)
  242. PrintMessage 66 (* Toad says Rib-bit *)
  243. BlankLine
  244. END_COMMAND
  245.  
  246. (***************************************************)
  247. (*  Automatic commands to control meeting princess *)
  248. (*  and have princess follow player                *)
  249. (***************************************************)
  250.  
  251. COMMAND ANY
  252. Present 302 (* princess *)
  253. TurnFlagON 6 (* has met princess *)
  254. END_COMMAND
  255.  
  256. COMMAND ANY
  257. IsSomewhere 302 (* princess exists *)
  258. FlagON 6 (* has met princess *)
  259. PutInCurrentRoom 302 (* put princess in room *)
  260. VerbIsDirection (* moving to another location *)
  261. PrintMessage 81 (* the princess follows you *)
  262. END_COMMAND
  263.  
  264. (***************************************************)
  265. (*  Automatic commands to control skull speaking   *)
  266. (***************************************************)
  267.  
  268. COMMAND ANY
  269. Chance 10
  270. Present 245  (* Skull *)
  271. PrintMessage 57  (* Skull speaks *)
  272. PrintMessage 26  (* Baron sucks eggs *)
  273. BlankLine
  274. END_COMMAND
  275.  
  276. COMMAND ANY
  277. Present 245  (* Skull *)
  278. AtLocation 28  (* A cavern with glowing walls *)
  279. PrintMessage 57  (* Skull speaks *)
  280. PrintMessage 58  (* Beware the vampire *)
  281. BlankLine
  282. END_COMMAND
  283.  
  284. COMMAND ANY
  285. Present 245  (* Skull *)
  286. AtLocation 31 (* east end of cavern *)
  287. PrintMessage 57  (* Skull speaks *)
  288. PrintMessage 59  (* Beware the chest *)
  289. BlankLine
  290. END_COMMAND
  291.  
  292. COMMAND ANY
  293. Present 245 (* Skull *)
  294. AtLocation 40  (* A secret passageway *)
  295. PrintMessage 57  (* Skull speaks *)
  296. PrintMessage 60  (* Beware the gold bars *)
  297. BlankLine
  298. END_COMMAND
  299.  
  300. (***************************************************)
  301. (*  Automatic commands to control appearance of    *)
  302. (*  vampire bats and their biting of player        *)
  303. (***************************************************)
  304.  
  305. COMMAND ANY
  306. Chance 50
  307. InRoom 246 (* vampire bat *)
  308. NOT IsWearing 252 (* Silver cross *)
  309. PrintMessage 63  (* Bat just bit you *)
  310. GoToRoom 42  (* go limbo *)
  311. DoneWithTurn (* no further action -- get next input *)
  312. END_COMMAND
  313.  
  314. COMMAND ANY
  315. Chance 80
  316. AtLocation 29  (* room with strange smell *)
  317. NOT InRoom 246  (* vampire bat *)
  318. PutInCurrentRoom 246 (* put bat in room *)
  319. PrintMessage 65 (* you hear bat wings flapping *)
  320. LookAtRoom
  321. END_COMMAND
  322.  
  323. (***************************************************)
  324. (*  Automatic commands whenever player is swimming *)
  325. (*  -- matches get soggy                           *)
  326. (*  -- torch goes out                              *)
  327. (*  -- piranha eat player                          *)
  328. (***************************************************)
  329.  
  330. COMMAND ANY
  331. AtLocation 13  (* in water *)
  332. Present 207 (* dry matches *)
  333. SwapLocations 207 208  (* swap with wet soggy matches *)
  334. END_COMMAND
  335.  
  336. COMMAND ANY
  337. AtLocation 13  (* in water *)
  338. Present 210 (* blazing torch *)
  339. SwapLocations 210 203  (* swap with unlit torch *)
  340. TurnCounterOFF 1 (* no longer counting number of turns torch is lit *)
  341. END_COMMAND
  342.  
  343. COMMAND ANY
  344. Chance 80
  345. AtLocation 13 (* in water *)
  346. InRoom 217 (* Piranha *)
  347. PrintMessage 1 (* hear strange sound *)
  348. PrintMessage 38 (* you made as tasty meal *)
  349. KillPlayer  (* go to limbo *)
  350. DoneWithTurn (* no further action -- get next input *)
  351. END_COMMAND
  352.  
  353. (***************************************************)
  354. (*   Last   -- Specific VERB,NOUN & OBJECT commands*)
  355. (*   Part      executed only when VERB,NOUN,OBJECT *)
  356. (***************************************************)
  357.  
  358. COMMAND CLIMB ROPE
  359. Present 204 (* Rope with hook *)
  360. PrintMessage 30 (* Throw it first *)
  361. DoneWithTurn (* no further action -- get next input *)
  362. END_COMMAND
  363.  
  364. COMMAND CLIMB ROPE
  365. InRoom 229 (* Drawbridge rope *)
  366. GoToRoom 15 (* catwalk *)
  367. PrintMessage 39 (* climb up rope... *)
  368. DoneWithTurn (* no further action -- get next input *)
  369. END_COMMAND
  370.  
  371. COMMAND CLIMB ROPE
  372. InRoom 234 (* hanging rope *)
  373. AtLocation 15 (* catwalk *)
  374. GoToRoom 14 (* outer wall *)
  375. PutInCurrentRoom 234 (* hanging rope *)
  376. PrintMessage 41 (* climb down rope... *)
  377. DoneWithTurn (* no further action -- get next input *)
  378. END_COMMAND
  379.  
  380. COMMAND CLIMB ROPE
  381. InRoom 234 (* hanging rope *)
  382. AtLocation 14 (* outer wall *)
  383. GoToRoom 15 (* catwalk *)
  384. PutInCurrentRoom 234 (* hanging rope *)
  385. PrintMessage 39 (* climb up rope... *)
  386. DoneWithTurn (* no further action -- get next input *)
  387. END_COMMAND
  388.  
  389. COMMAND CLIMB ROPE
  390. InRoom 234 (* hanging rope *)
  391. AtLocation 11 (* room in wall *)
  392. GoToRoom 10 (* large cavern *)
  393. PutInCurrentRoom 234 (* hanging rope *)
  394. PrintMessage 41 (* climb down rope... *)
  395. DoneWithTurn (* no further action -- get next input *)
  396. END_COMMAND
  397.  
  398. COMMAND CLIMB ROPE
  399. InRoom 234 (* hanging rope *)
  400. AtLocation 10 (* large cavern *)
  401. GoToRoom 11 (* room in wall *)
  402. PutInCurrentRoom 234 (* hanging rope *)
  403. PrintMessage 39 (* climb up rope... *)
  404. DoneWithTurn (* no further action -- get next input *)
  405. END_COMMAND
  406.  
  407. COMMAND CLIMB WALL
  408. AtLocation 10 (* large cavern *)
  409. PrintMessage 34 (* too high to climb!! *)
  410. DoneWithTurn (* no further action -- get next input *)
  411. END_COMMAND
  412.  
  413. COMMAND CLIMB WALL
  414. AtLocation 14 (* outer wall *)
  415. PrintMessage 34 (* too high to climb!! *)
  416. DoneWithTurn (* no further action -- get next input *)
  417. END_COMMAND
  418.  
  419. COMMAND GO PASSAGE
  420. InRoom 224 (* secret passage *)
  421. GoToRoom 40 (* passageway *)
  422. PrintMessage 15 (* OK... *)
  423. DoneWithTurn (* no further action -- get next input *)
  424. END_COMMAND
  425.  
  426. COMMAND ENTER PASSAGE
  427. InRoom 224 (* secret passage *)
  428. GoToRoom 40 (* passageway *)
  429. PrintMessage 15 (* OK... *)
  430. DoneWithTurn (* no further action -- get next input *)
  431. END_COMMAND
  432.  
  433. COMMAND GO OPENING
  434. AtLocation 10 (* large cavern *)
  435. PrintMessage 34 (* too high to climb!! *)
  436. DoneWithTurn (* no further action -- get next input *)
  437. END_COMMAND
  438.  
  439. COMMAND GO DRAWBRIDGE
  440. InRoom 216 (* lowered bridge *)
  441. AtLocation 4 (* water's edge *)
  442. GoToRoom 19 (* Courtyard *)
  443. PutInCurrentRoom 216 (* lowered bridge *)
  444. PrintMessage 19 (* you walk across bridge *)
  445. DoneWithTurn (* no further action -- get next input *)
  446. END_COMMAND
  447.  
  448. COMMAND GO DRAWBRIDGE
  449. InRoom 216 (* lowered bridge *)
  450. AtLocation 19 (* Courtyard *)
  451. GoToRoom 4 (* water's edge *)
  452. PutInCurrentRoom 216 (* lowered bridge *)
  453. PrintMessage 19 (* you walk across bridge *)
  454. DoneWithTurn (* no further action -- get next input *)
  455. END_COMMAND
  456.  
  457. COMMAND GO DRAWBRIDGE
  458. InRoom 212 (* Raised bridge *)
  459. PrintMessage 8 (* Sorry, you can't *)
  460. DoneWithTurn (* no further action -- get next input *)
  461. END_COMMAND
  462.  
  463. COMMAND GO COFFIN
  464. InRoom 243 (* open coffin *)
  465. GoToRoom 28 (* cavern *)
  466. PrintMessage 15 (* OK... *)
  467. DoneWithTurn (* no further action -- get next input *)
  468. END_COMMAND
  469.  
  470. COMMAND GO LEDGE
  471. PrintMessage 8 (* Sorry, you can't *)
  472. DoneWithTurn (* no further action -- get next input *)
  473. END_COMMAND
  474.  
  475. COMMAND JUMP ANY
  476. GetIt 215 (* Broken leg *)
  477. PrintMessage 6 (* That's not safe! *)
  478. DoneWithTurn (* no further action -- get next input *)
  479. END_COMMAND
  480.  
  481. COMMAND GET ANY
  482. InRoom 301 (* angry guard *)
  483. PrintMessage 8 (* Sorry, you can't *)
  484. PrintMessage 25 (* Guard won't allow *)
  485. DoneWithTurn (* no further action -- get next input *)
  486. END_COMMAND
  487.  
  488. COMMAND GET ANY
  489. IsCarrying 215 (* Broken leg *)
  490. PrintMessage 8 (* Sorry, you can't *)
  491. PrintMessage 43 (* with broken leg *)
  492. DoneWithTurn (* no further action -- get next input *)
  493. END_COMMAND
  494.  
  495. COMMAND GET KEY
  496. InRoom 259 (* unconscious guard *)
  497. IsNowhere 253 (* guard's keys *)
  498. GetIt 253 (* get his keys *)
  499. PrintMessage 82 (* you search guard and find keys *)
  500. DoneWithTurn (* no further action -- get next input *)
  501. END_COMMAND
  502.  
  503. COMMAND GET ROPE
  504. InRoom 234 (* hanging rope *)
  505. Destroy 234 (* hanging rope *)
  506. GetIt 204 (* Rope with hook *)
  507. PrintMessage 15 (* OK... *)
  508. DoneWithTurn (* no further action -- get next input *)
  509. END_COMMAND
  510.  
  511. COMMAND GET BOOK
  512. InRoom 224 (* secret passage *)
  513. IsNowhere 232 (* Scott book *)
  514. GetIt 232 (* Scott book *)
  515. PrintMessage 15 (* OK... *)
  516. DoneWithTurn (* no further action -- get next input *)
  517. END_COMMAND
  518.  
  519. COMMAND GET BOOK
  520. AtLocation 24 (* Baron's chamber *)
  521. InRoom 223 (* Bookcase *)
  522. SwapLocations 223 224
  523. GetIt 231 (* adventure hint book *)
  524. PrintMessage 15 (* OK... *)
  525. PrintMessage 1 (* hear strange sound *)
  526. DoneWithTurn (* no further action -- get next input *)
  527. END_COMMAND
  528.  
  529. COMMAND GET CHEST
  530. AtLocation 35 (* Baron's stronghold *)
  531. Present 249 (* Chest *)
  532. SendToRoom 249 26 (* send chest to east tower room *)
  533. PrintMessage 79 (* It disappears in a puff of blue smoke *)
  534. DoneWithTurn (* no further action -- get next input *)
  535. END_COMMAND
  536.  
  537. COMMAND GET SKULL
  538. AtLocation 27 (* family crypt *)
  539. InRoom 245 (* skull *)
  540. PrintMessage 57 (* skull speaks *)
  541. PrintMessage 58 (* beware the vampire *)
  542. END_COMMAND
  543.  
  544. COMMAND GET SIGN
  545. NOUNInRoom (* any sign is here *)
  546. PrintMessage 22 (* Voice booms out *)
  547. PrintMessage 23 (* leave the sign alone *)
  548. DoneWithTurn (* no further action -- get next input *)
  549. END_COMMAND
  550.  
  551. COMMAND GET WATER
  552. PrintMessage 8 (* sorry, but you can't *)
  553. PrintMessage 11 (* you've no container *)
  554. DoneWithTurn (* no further action -- get next input *)
  555. END_COMMAND
  556.  
  557. COMMAND GET BAR
  558. InRoom 254 (* open door *)
  559. SwapLocations 254 255 (* put closed door in room *)
  560. GetIt 251 (* gold bar *)
  561. PrintMessage 15 (* OK *)
  562. BlankLine
  563. ChangePassageway 4 0 (* Close exit to west *)
  564. PrintMessage 64 (* door slams shut *)
  565. DoneWithTurn (* no further action -- get next input *)
  566. END_COMMAND
  567.  
  568. COMMAND GET COBWEB
  569. NOUNinRoom (* cobwebs are here *)
  570. PrintMessage 68 (* Spider bites you *)
  571. GoToRoom 42 (* Go to Limbo *)
  572. DoneWithTurn (* no further action -- get next input *)
  573. END_COMMAND
  574.  
  575. COMMAND LIGHT MATCHES
  576. Present 207 (* dry matches *)
  577. PrintMessage 85 (* It burns for a few minutes and then goes out *)
  578. DoneWithTurn (* no further action -- get next input *)
  579. END_COMMAND
  580.  
  581. COMMAND LIGHT MATCHES
  582. Present 208 (* soggy matches *)
  583. PrintMessage 8 (* Sorry, but you can't *)
  584. PrintMessage 31 (* matches too wet *)
  585. DoneWithTurn (* no further action -- get next input *)
  586. END_COMMAND
  587.  
  588. COMMAND LIGHT TORCH
  589. Present 203 (* torch *)
  590. Present 207 (* dry matches *)
  591. SwapLocations 203 210 (* swap to blazing torch *)
  592. PrintMessage 15 (* OK... *)
  593. TurnCounterON 1 (* start count for light being lit *)
  594. DoneWithTurn (* no further action -- get next input *)
  595. END_COMMAND
  596.  
  597. COMMAND LIGHT TORCH
  598. Present 203 (* torch *)
  599. Present 208 (* soggy matches *)
  600. PrintMessage 8 (* Sorry, but you can't *)
  601. PrintMessage 31 (* matches too wet *)
  602. DoneWithTurn (* no further action -- get next input *)
  603. END_COMMAND
  604.  
  605. COMMAND LIGHT TORCH
  606. Present 203 (* torch *)
  607. NOT Present 207 (* dry matches *)
  608. PrintMessage 8 (* Sorry, you can't *)
  609. PrintMessage 46 (* don't have resources *)
  610. DoneWithTurn (* no further action -- get next input *)
  611. END_COMMAND
  612.  
  613. COMMAND LIGHT WOOD
  614. Present 267 (* fire wood *)
  615. Present 208 (* soggy matches *)
  616. PrintMessage 31 (* matches too wet *)
  617. DoneWithTurn (* no further action -- get next input *)
  618. END_COMMAND
  619.  
  620. COMMAND LIGHT WOOD
  621. Present 267 (* fire wood *)
  622. NOT Present 207 (* dry matches *)
  623. PrintMessage 8 (* Sorry, you can't *)
  624. PrintMessage 46 (* don't have resources *)
  625. DoneWithTurn (* no further action -- get next input *)
  626. END_COMMAND
  627.  
  628. COMMAND LIGHT WOOD
  629. ATlocation 18 (* west end of great hall *)
  630. Present 267 (* fire wood *)
  631. Present 207 (* dry matches *)
  632. SwapLocations 267 273
  633. PrintMessage 37 (* that feels good!! *)
  634. InRoom 235 (* unlit fireplace *)
  635. SwapLocations 236 235 (* put blazing fireplace in room *)
  636. DoneWithTurn (* no further action -- get next input *)
  637. END_COMMAND
  638.  
  639. COMMAND LIGHT WOOD
  640. Present 267 (* fire wood *)
  641. Present 207 (* dry matches *)
  642. PutInCurrentRoom 267 (* fire wood *)
  643. SwapLocations 267 273
  644. PrintMessage 37 (* that feels good!! *)
  645. LookAtRoom
  646. DoneWithTurn (* no further action -- get next input *)
  647. END_COMMAND
  648.  
  649. COMMAND LIGHT FIRE
  650. Present 267 (* fire wood *)
  651. Present 208 (* soggy matches *)
  652. PrintMessage 31 (* matches too wet *)
  653. DoneWithTurn (* no further action -- get next input *)
  654. END_COMMAND
  655.  
  656. COMMAND LIGHT FIRE
  657. Present 267 (* fire wood *)
  658. NOT Present 207 (* dry matches *)
  659. PrintMessage 8 (* Sorry, you can't *)
  660. PrintMessage 46 (* don't have resources *)
  661. DoneWithTurn (* no further action -- get next input *)
  662. END_COMMAND
  663.  
  664. COMMAND LIGHT FIRE
  665. ATlocation 18 (* west end of great hall *)
  666. Present 267 (* fire wood *)
  667. Present 207 (* dry matches *)
  668. SwapLocations 267 273
  669. PrintMessage 37 (* that feels good!! *)
  670. InRoom 235 (* unlit fireplace *)
  671. SwapLocations 236 235 (* put blazing fireplace in room *)
  672. DoneWithTurn (* no further action -- get next input *)
  673. END_COMMAND
  674.  
  675. COMMAND LIGHT FIRE
  676. Present 267 (* fire wood *)
  677. Present 207 (* dry matches *)
  678. PutInCurrentRoom 267 (* fire wood *)
  679. SwapLocations 267 273
  680. PrintMessage 37 (* that feels good!! *)
  681. LookAtRoom
  682. DoneWithTurn (* no further action -- get next input *)
  683. END_COMMAND
  684.  
  685. COMMAND EXTINGUISH TORCH
  686. Present 210 (* blazing torch *)
  687. PrintMessage 15 (* OK... *)
  688. SwapLocations 203 210
  689. TurnCounterOFF 1 (* stop count of light being on *)
  690. DoneWithTurn (* no further action -- get next input *)
  691. END_COMMAND
  692.  
  693. COMMAND EXTINGUISH FIRE WITH WINE
  694. Present 273 (* blazing fire *)
  695. Present 226 (* fine wine *)
  696. Destroy 226 (* fine wine *)
  697. SwapLocations 273 272
  698. PrintMessage 67 (* extinguish fire with wine *)
  699. DoneWithTurn (* no further action -- get next input *)
  700. END_COMMAND
  701.  
  702. COMMAND EXTINGUISH FIRE
  703. Present 273 (* blazing fire *)
  704. PrintMessage 8 (* Sorry, you can't *)
  705. PrintMessage 72 (* Don't have water *)
  706. DoneWithTurn (* no further action -- get next input *)
  707. END_COMMAND
  708.  
  709. COMMAND DROP ANY
  710. AtLocation 12 (* Top of hill *)
  711. NOUNpresent
  712. SendNOUNToRoom 45 (* send noun to winning room *)
  713. PrintMessage 79 (* It disappears in a puff of blue smoke *)
  714. DoneWithTurn (* no further action -- get next input *)
  715. END_COMMAND
  716.  
  717. COMMAND DROP ALL
  718. AtLocation 12 (* Top of hill *)
  719. SendAllToRoom 45 (* send items being carried noun to winning room *)
  720. PrintMessage 84 (* They disappear in a puff of blue smoke *)
  721. DoneWithTurn (* no further action -- get next input *)
  722. END_COMMAND
  723.  
  724. COMMAND DROP PILLS IN WATER
  725. AtLocation 4 (* water's edge *)
  726. IsCarrying 220 (* sleeping pills *)
  727. SwapLocations 221 217
  728. Destroy 220 (* sleeping pills *)
  729. PrintMessage 15 (* OK... *)
  730. DoneWithTurn (* no further action -- get next input *)
  731. END_COMMAND
  732.  
  733. COMMAND DROP PILLS
  734. AtLocation 13 (* in water *)
  735. IsCarrying 220 (* sleeping pills *)
  736. SwapLocations 221 217
  737. Destroy 220 (* sleeping pills *)
  738. PrintMessage 15 (* OK... *)
  739. DoneWithTurn (* no further action -- get next input *)
  740. END_COMMAND
  741.  
  742. COMMAND DROP LEG
  743. IsCarrying 215 (* Broken leg *)
  744. PrintMessage 22 (* voice booms out *)
  745. PrintMessage 24 (* Don't be silly! *)
  746. DoneWithTurn (* no further action -- get next input *)
  747. END_COMMAND
  748.  
  749. COMMAND DROP WINE ON FIRE
  750. Present 273 (* blazing fire *)
  751. Present 226 (* fine wine *)
  752. Destroy 226 (* fine wine *)
  753. SwapLocations 273 272 (* swap blazing fire for soggy wood *)
  754. PrintMessage 67 (* extinguish fire with wine *)
  755. DoneWithTurn (* no further action -- get next input *)
  756. END_COMMAND
  757.  
  758. COMMAND POUR WINE ON FIRE
  759. Present 273 (* blazing fire *)
  760. Present 226 (* fine wine *)
  761. Destroy 226 (* fine wine *)
  762. SwapLocations 273 272
  763. PrintMessage 67 (* extinguish fire with wine *)
  764. DoneWithTurn (* no further action -- get next input *)
  765. END_COMMAND
  766.  
  767. COMMAND DROP WINE
  768. NOT Present 273 (* blazing fire *)
  769. Present 226 (* wine *)
  770. Destroy 226 (* wine *)
  771. PrintMessage 73 (* bottle shatters *)
  772. PrintMessage 12 (* what a waste *)
  773. DoneWithTurn (* no further action -- get next input *)
  774. END_COMMAND
  775.  
  776. COMMAND THROW WINE ON FIRE
  777. Present 273 (* blazing fire *)
  778. Present 226 (* fine wine *)
  779. Destroy 226 (* fine wine *)
  780. SwapLocations 273 272
  781. PrintMessage 67 (* extinguish fire with wine *)
  782. DoneWithTurn (* no further action -- get next input *)
  783. END_COMMAND
  784.  
  785. COMMAND THROW PILLS IN WATER
  786. AtLocation 4 (* water's edge *)
  787. IsCarrying 220 (* sleeping pills *)
  788. SwapLocations 221 217
  789. Destroy 220 (* sleeping pills *)
  790. PrintMessage 15 (* OK... *)
  791. DoneWithTurn (* no further action -- get next input *)
  792. END_COMMAND
  793.  
  794. COMMAND THROW PILLS
  795. AtLocation 13 (* in water *)
  796. IsCarrying 220 (* sleeping pills *)
  797. SwapLocations 221 217
  798. Destroy 220 (* sleeping pills *)
  799. PrintMessage 15 (* OK... *)
  800. DoneWithTurn (* no further action -- get next input *)
  801. END_COMMAND
  802.  
  803. COMMAND THROW ANY
  804. NOUNPresent (* any noun *)
  805. AtLocation 36 (* south ledge *)
  806. OR
  807. AtLocation 30 (* north ledge *)
  808. DestroyNOUN (* any noun *)
  809. TurnFlagON 2 (* has thrown something *)
  810. PrintMessage 52 (* It disappears into the chasm *)
  811. DoneWithTurn (* no further action -- get next input *)
  812. END_COMMAND
  813.  
  814. COMMAND THROW ROPE
  815. AtLocation 14 (* outer wall *)
  816. OR
  817. AtLocation 10 (* large cavern *)
  818. Present 204 (* Rope with hook *)
  819. Destroy 204 (* Rope with hook *)
  820. PutInCurrentRoom 234 (* hanging rope *)
  821. PrintMessage 29 (* rope catches *)
  822. DoneWithTurn (* no further action -- get next input *)
  823. END_COMMAND
  824.  
  825. COMMAND OPEN ANY
  826. InRoom 301 (* angry guard *)
  827. PrintMessage 25 (* Guard won't allow *)
  828. DoneWithTurn (* no further action -- get next input *)
  829. END_COMMAND
  830.  
  831. COMMAND OPEN EGG
  832. Present 274 (* golden egg *)
  833. PrintMessage 10 (* crack egg -- sparrow appears *)
  834. SwapLocations 274 279 (* replace egg with eggshell pieces *)
  835. DoneWithTurn (* no further action -- get next input *)
  836. END_COMMAND
  837.  
  838. COMMAND OPEN DOOR
  839. InRoom 213 (* closed door *)
  840. IsUnLocked 213 (* door is unlocked *)
  841. SwapLocations 213 237 (* put open door in room *)
  842. ChangePassageway 1 31 (* open passage north to room 31 *)
  843. PrintMessage 4 (* The door is now open *)
  844. DoneWithTurn (* no further action -- get next input *)
  845. END_COMMAND
  846.  
  847. COMMAND OPEN DOOR
  848. InRoom 256 (* closed door *)
  849. IsUnLocked 256 (* door is unlocked *)
  850. SwapLocations 262 256 (* put open door in room *)
  851. SwapLocations 270 271 (* put open door on other side -- also *)
  852. ChangePassageway 4 39 (* open passage west to room 39 *)
  853. PrintMessage 4 (* The door is now open *)
  854. DoneWithTurn (* no further action -- get next input *)
  855. END_COMMAND
  856.  
  857. COMMAND OPEN DOOR
  858. InRoom 270 (* closed door *)
  859. IsUnLocked 270 (* door is unlocked *)
  860. SwapLocations 270 271 (* put open door in room *)
  861. SwapLocations 262 256 (* put open door on other side -- also *)
  862. ChangePassageway 3 41 (* open passage east to room 41 *)
  863. PrintMessage 4 (* The door is now open *)
  864. DoneWithTurn (* no further action -- get next input *)
  865. END_COMMAND
  866.  
  867. COMMAND OPEN DOOR
  868. InRoom 255 (*closed door*)
  869. IsUnLocked 255 (* door is unlocked *)
  870. SwapLocations 254 255
  871. ChangePassageway 4 40 (* open passage west to room 40 *)
  872. PrintMessage 4 (* It's open *)
  873. DoneWithTurn (* no further action -- get next input *)
  874. END_COMMAND
  875.  
  876. COMMAND OPEN BOOK
  877. PrintMessage 15 (* OK... *)
  878. DoneWithTurn (* no further action -- get next input *)
  879. END_COMMAND
  880.  
  881. COMMAND OPEN CHEST
  882. NOT AtLocation 45 (* Winning room *)
  883. PrintMessage 69 (* Baron appears and kills you *)
  884. KillPlayer (* Go to Limbo *)
  885. DoneWithTurn (* no further action -- get next input *)
  886. END_COMMAND
  887.  
  888. COMMAND OPEN COFFIN
  889. InRoom 242 (* closed coffin *)
  890. SwapLocations 242 243
  891. PrintMessage 15 (* OK... *)
  892. ChangePassageway 10 28 (* open passage down to room 28 *)
  893. DoneWithTurn (* no further action -- get next input *)
  894. END_COMMAND
  895.  
  896. COMMAND ATTACK GUARD
  897. InRoom 301 (* angry guard *)
  898. AtLocation 39 (* near dungeon cell *)
  899. SwapLocations 259 301 (* put unconscious guard in room *)
  900. PrintMessage 49 (* It was a fierce fight *)
  901. PrintMessage 51 (* but you won! *)
  902. DoneWithTurn (* no further action -- get next input *)
  903. END_COMMAND
  904.  
  905. COMMAND ATTACK GUARD
  906. InRoom 301 (* angry guard *)
  907. GoToRoom 41 (* Cell *)
  908. PrintMessage 49 (* It was a fierce fight *)
  909. PrintMessage 50 (* but you lost! *)
  910. SendAllToRoom 17 (* Guard's takes stuff to his quarters *)
  911. SendtoRoom 202 41 (* Put shining lamp in dungeon cell with you *) 
  912. DoneWithTurn (* no further action -- get next input *)
  913. END_COMMAND
  914.  
  915. COMMAND SEARCH GUARD
  916. InRoom 259 (* unconscious guard *)
  917. GetIt 253 (* get his keys *)
  918. PrintMessage 82 (* you search guard and find keys *)
  919. DoneWithTurn (* no further action -- get next input *)
  920. END_COMMAND
  921.  
  922. COMMAND FIND KEY
  923. InRoom 259 (* unconscious guard *)
  924. GetIt 253 (* get his keys *)
  925. PrintMessage 82 (* you search guard and find keys *)
  926. DoneWithTurn (* no further action -- get next input *)
  927. END_COMMAND
  928.  
  929. COMMAND FIND KEY
  930. IsNowhere 259 (* unconscious guard *)
  931. PrintMessage 36 (* try the harp *)
  932. DoneWithTurn (* no further action -- get next input *)
  933. END_COMMAND
  934.  
  935. COMMAND FIND ANY
  936. PrintMessage 18 (* don't see it *)
  937. DoneWithTurn (* no further action -- get next input *)
  938. END_COMMAND
  939.  
  940. COMMAND HELP ANY
  941. RoomNeedsLight (* will be dark if no light *)
  942. NOT LightPresent (* no light in room *)
  943. PrintMessage 17 (* You are in real trouble... *)
  944. DoneWithTurn (* no further action -- get next input *)
  945. END_COMMAND
  946.  
  947. COMMAND HELP ANY
  948. AtLocation 36 (* south ledge *)
  949. OR
  950. AtLocation 30 (* north ledge *)
  951. FlagON 2 (* has thrown something *)
  952. TurnFlagOFF 2
  953. PrintMessage 56 (* Sorry about that ... *)
  954. DoneWithTurn (* no further action -- get next input *)
  955. END_COMMAND
  956.  
  957. COMMAND HELP ANY
  958. IsCarrying 215 (* Broken leg *)
  959. PrintMessage 47 (* time heals all things *)
  960. DoneWithTurn (* no further action -- get next input *)
  961. END_COMMAND
  962.  
  963. COMMAND CRACK EGG
  964. Present 274 (* golden egg *)
  965. PrintMessage 10 (* crack egg -- sparrow appears *)
  966. SwapLocations 274 279 (* replace egg with eggshell pieces *)
  967. DoneWithTurn (* no further action -- get next input *)
  968. END_COMMAND
  969.  
  970. COMMAND BREAK DOOR WITH AXE
  971. AtLocation 41 (* Cell *)
  972. IsCarrying 227 (* Axe *)
  973. SwapLocations 256 262
  974. SwapLocations 270 271
  975. PrintMessage 15 (* OK... *)
  976. PrintMessage 40 (* Timber !! *)
  977. ChangePassageway 4 39 (* open passage to room 39 *)
  978. DoneWithTurn (* no further action -- get next input *)
  979. END_COMMAND
  980.  
  981. COMMAND BREAK DOOR WITH AXE
  982. AtLocation 39 (* passage outside Cell *)
  983. IsCarrying 227 (* Axe *)
  984. SwapLocations 256 262
  985. SwapLocations 270 271
  986. PrintMessage 15 (* OK... *)
  987. PrintMessage 40 (* Timber !! *)
  988. ChangePassageway 3 41 (* open passage to room 41 *)
  989. DoneWithTurn (* no further action -- get next input *)
  990. END_COMMAND
  991.  
  992. COMMAND BREAK DOOR WITH AXE
  993. AtLocation 11 (* small room in cave *)
  994. IsCarrying 227 (* Axe *)
  995. SwapLocations 213 237
  996. PrintMessage 15 (* OK... *)
  997. PrintMessage 40 (* Timber !! *)
  998. ChangePassageway 1 31 (* open passage to room 31 *)
  999. DoneWithTurn (* no further action -- get next input *)
  1000. END_COMMAND
  1001.  
  1002. COMMAND BREAK DOOR
  1003. PrintMessage 9 (* rush door with shoulder *)
  1004. DoneWithTurn (* no further action -- get next input *)
  1005. END_COMMAND
  1006.  
  1007. COMMAND BREAK ANY
  1008. NOT Present 227 (* axe *)
  1009. PrintMessage 8 (* Sorry, you can't *)
  1010. PrintMessage 13 (* don't have resources *)
  1011. DoneWithTurn (* no further action -- get next input *)
  1012. END_COMMAND
  1013.  
  1014. COMMAND TUNE HARP
  1015. Present 222 (* harp *)
  1016. NOT Present 233 (* harp tuning key *)
  1017. PrintMessage 8 (* Sorry, you can't *)
  1018. PrintMessage 13 (* don't have resources *)
  1019. DoneWithTurn (* no further action -- get next input *)
  1020. END_COMMAND
  1021.  
  1022. COMMAND TUNE HARP
  1023. Present 222 (* harp *)
  1024. Present 233 (* harp tuning key *)
  1025. PrintMessage 20 (* you tune the harp *)
  1026. TurnFlagON 3 (* harp has now been tuned *)
  1027. DoneWithTurn (* no further action -- get next input *)
  1028. END_COMMAND
  1029.  
  1030. COMMAND EXAMINE HARP
  1031. Present 222 (* harp *)
  1032. FlagON 3 (* harp is in tune *)
  1033. PrintMessage 48 (* harp is in tune *)
  1034. DoneWithTurn (* no further action -- get next input *)
  1035. END_COMMAND
  1036.  
  1037. COMMAND PLAY HARP
  1038. Present 222 (* harp *)
  1039. FlagON 3 (* harp is in tune *)
  1040. PrintMessage 32 (* play harp beautifully *)
  1041. DoneWithTurn (* no further action -- get next input *)
  1042. END_COMMAND
  1043.  
  1044. COMMAND PLAY HARP
  1045. Present 222 (* harp *)
  1046. IsNowhere 233 (* harp tuning key *)
  1047. PutInCurrentRoom 233 (* harp tuning key *)
  1048. PrintMessage 1 (* hear strange sound *)
  1049. LookAtRoom
  1050. END_COMMAND
  1051.  
  1052. COMMAND CUT TREE
  1053. IsCarrying 227 (* Axe *)
  1054. AtLocation 2 (* dense forest *)
  1055. OR
  1056. AtLocation 43 (* thick woods *)
  1057. PrintMessage 40 (* Timber !! *)
  1058. DoneWithTurn (* no further action -- get next input *)
  1059. END_COMMAND
  1060.  
  1061. COMMAND CUT ROPE
  1062. InRoom 229 (* Drawbridge rope *)
  1063. IsCarrying 227 (* Axe *)
  1064. SwapLocations 229 216 (* put lowered drawbridge in room *)
  1065. Destroy 212 (* Raised bridge *)
  1066. PrintMessage 78 (* Drawbridge may now be crossed *)
  1067. DoneWithTurn (* no further action -- get next input *)
  1068. END_COMMAND
  1069.  
  1070. COMMAND CUT ANY
  1071. NOT Present 227 (* axe *)
  1072. PrintMessage 8 (* Sorry, you can't *)
  1073. PrintMessage 13 (* don't have resources *)
  1074. DoneWithTurn (* no further action -- get next input *)
  1075. END_COMMAND
  1076.  
  1077. COMMAND TALK TO PRINCESS
  1078. PrintMessage 5 (* chat with princess *)
  1079. DoneWithTurn (* no further action -- get next input *)
  1080. END_COMMAND
  1081.  
  1082. COMMAND TALK TO GUARD
  1083. GoToRoom 41 (* Cell *)
  1084. PrintMessage 3 (* chat with guard *)
  1085. PrintMessage 49 (* It was a fierce fight *)
  1086. PrintMessage 50 (* but you lost! *)
  1087. SendAllToRoom 17 (* Guard's takes stuff to his quarters *)
  1088. SendtoRoom 202 41 (* Put shining lamp in dungeon cell with you *) 
  1089. DoneWithTurn (* no further action -- get next input *)
  1090. END_COMMAND
  1091.  
  1092. COMMAND TALK TO TOAD
  1093. PrintMessage 2 (* chat with toad *)
  1094. DoneWithTurn (* no further action -- get next input *)
  1095. END_COMMAND
  1096.  
  1097. COMMAND ASK TOAD ABOUT ANY
  1098. PrintMessage 2 (* chat with toad *)
  1099. DoneWithTurn (* no further action -- get next input *)
  1100. END_COMMAND
  1101.  
  1102. COMMAND ASK GUARD ABOUT ANY
  1103. GoToRoom 41 (* Cell *)
  1104. PrintMessage 3 (* chat with guard *)
  1105. PrintMessage 49 (* It was a fierce fight *)
  1106. PrintMessage 50 (* but you lost! *)
  1107. SendAllToRoom 17 (* Guard's takes stuff to his quarters *)
  1108. SendtoRoom 202 41 (* Put shining lamp in dungeon cell with you *) 
  1109. DoneWithTurn (* no further action -- get next input *)
  1110. END_COMMAND
  1111.  
  1112. COMMAND ASK PRINCESS ABOUT ANY
  1113. PrintMessage 7 (* ask princess *)
  1114. DoneWithTurn (* no further action -- get next input *)
  1115. END_COMMAND
  1116.  
  1117. COMMAND READ BOOK
  1118. IsCarrying 231 (* adventure hint book *)
  1119. IsNowhere 238 (* large diamond *)
  1120. PrintMessage 35 (* something fell out *)
  1121. BlankLine
  1122. PutInCurrentRoom 238 (* large diamond *)
  1123. LookAtRoom
  1124. END_COMMAND
  1125.  
  1126. COMMAND RIDE HORSE
  1127. Present 304 (* Baron's horse *)
  1128. PrintMessage 21 (* You ride the horse for a while *)
  1129. DoneWithTurn (* no further action -- get next input *)
  1130. END_COMMAND
  1131.  
  1132. COMMAND KISS TOAD
  1133. Present 300 (* toad *)
  1134. SwapLocations 300 302
  1135. PrintMessage 54 (* Toad turns into princess! *)
  1136. DoneWithTurn (* no further action -- get next input *)
  1137. END_COMMAND
  1138.  
  1139. COMMAND KISS PRINCESS
  1140. AtLocation 45 (* winning room *)
  1141. Present 302 (* princess *)
  1142. PrintMessage 61 (* last kiss for princess!! *)
  1143. PlusScore 50 (* get special BONUS for being a true romantic! *)
  1144. WinGame (* one last kiss to win *)
  1145. DoneWithTurn (* no further action -- get next input *)
  1146. END_COMMAND
  1147.  
  1148. COMMAND KISS PRINCESS
  1149. NOT AtLocation 12 (* Top of hill *)
  1150. Present 302 (* princess *)
  1151. PrintMessage 55 (* kiss princess!! *)
  1152. DoneWithTurn (* no further action -- get next input *)
  1153. END_COMMAND
  1154.  
  1155. COMMAND KISS ANY
  1156. NOT AtLocation 12 (* Top of hill *)
  1157. PrintMessage 24 (* Don't be silly! *)
  1158. DoneWithTurn (* no further action -- get next input *)
  1159. END_COMMAND
  1160.  
  1161. COMMAND DEBUG
  1162. ToggleFlag 0 (* toggle diagnostic mode *)
  1163. DoneWithTurn (* no further action -- get next input *)
  1164. END_COMMAND
  1165.  
  1166.