home *** CD-ROM | disk | FTP | other *** search
/ Generous Efforts of Many / gemcd.zip / GEM.CD.B.po / GAMES:BASIC.2 / SEVEN.GABLES.bas < prev    next >
BASIC Source File  |  2010-05-14  |  22KB  |  374 lines

  1. 0  REM  BY GREG HASSETT
  2. 10 NA$ = ""
  3. 14  ONERR  GOTO 3500
  4. 15  PRINT "<CTRL-D>NOMON C,I,O"
  5. 20  IF NA$ < >""  THEN 40
  6. 30  HOME : INPUT "WHAT IS YOUR NAME ?";NA$:NA$ = NA$ +"/HOUSE"
  7. 40  HOME 
  8. 50  HTAB 10: PRINT "THE HOUSE OF NO EXIT"
  9. 60  PRINT 
  10. 80 A$ = "I DON'T SEE IT HERE.":R$ = "DON'T BE RIDICULOUS.":Y$ = "I DON'T KNOW THAT WORD.":CP = 2: GOTO 2610
  11. 90  GOTO 2530
  12. 100  IF  INT( RND(1) *100) = 50  AND ZZ >2  THEN 2180
  13. 110  IF  INT( RND(1) *40) = 1  AND CP < >2  AND CP < >5  AND CP < >21  AND CP < >41  THEN 2260
  14. 120  GOSUB 2410:T = T +1: IF T = 50  THEN OB$(27) = "A TARNISHED OLD COMPASS"
  15. 130  IF NO >40  THEN NO = NO -40
  16. 140  IF VB < >25  AND VB >10  AND NO$ = ""  THEN  INPUT "GIVE ME AN OBJECT";NO$: GOSUB 2500
  17. 150  IF NO$ < >""  AND NO = 0  AND VB = 1  THEN  PRINT "I DON'T UNDERSTAND THAT!": GOTO 120
  18. 160  IF T >175  THEN MI = MI -10
  19. 170  IF T >225  THEN MI = MI -15
  20. 180  IF NO = 0  AND NO$ < >""  THEN  PRINT Y$: GOTO 120
  21. 190  IF VB < >1  THEN 330
  22. 200  IF VB = 1  AND NO$ = ""  THEN  INPUT "WHERE ?";NO$: GOSUB 2500
  23. 210  IF NO >40  THEN NO = NO -40
  24. 220  IF NO <7  THEN 250
  25. 221 AB% = OB(NO,0)
  26. 230  IF (AB% >10  AND AB% <18)  OR  ABS(CP -AB%) >3  OR CP = 2  OR AB% = 0  THEN  PRINT "I DON'T KNOW HOW TO APPLY THAT WORD HERE": GOTO 120
  27. 240 CP = AB%: GOTO 90
  28. 250  IF OB(27,0) < > -1  THEN  PRINT "I CAN'T UNDERSTAND COMPASS POINTS ": PRINT "WITHOUT A COMPASS !": GOTO 120
  29. 260  IF P(CP,NO -1) = 0  THEN  PRINT "THERE IS NO WAY TO GO IN THAT DIRECTION": GOTO 120
  30. 270  IF CP = 2  AND NO = 2  THEN  PRINT "THE DOOR IS LOCKED.": PRINT "I THINK I CAN GET BY IT THOUGH.": GOTO 120
  31. 280  IF CP = 6  AND NO = 3  AND DF = 0  THEN  PRINT "THE DOOR TO THAT WAY IS CLOSED.": GOTO 120
  32. 290  IF CP = 9  AND OB(9,0) = 9  AND NO = 1  THEN  PRINT "THE VAMPIRE WON'T LET ME GO NORTH !": GOTO 120
  33. 300  IF CP = 38  AND NO = 6  AND OB(18,0) < >0  THEN P(5,0) = 2
  34. 310  IF CP = 5  AND FF = 1  AND P(5,0) = 2  AND NO = 1  THEN  HOME : PRINT "YOU MADE IT !!": GOTO 2330
  35. 320 CP = P(CP,NO -1): GOTO 90
  36. 330  IF VB < >2  THEN 490
  37. 340  IF NO$ = ""  THEN  INPUT "GET WHAT";NO$: GOSUB 2500
  38. 350  IF OB(NO,0) =  -1  THEN  PRINT "I'M ALREADY CARRYING THAT!!!": GOTO 120
  39. 360  IF NO = 7  AND CP = 2  THEN  PRINT "IT'S IMPOSSIBLE TO REMOVE.": GOTO 120
  40. 370  IF NO = 0  THEN  PRINT Y$: GOTO 120
  41. 380  IF OB(NO,0) < >CP  THEN  PRINT A$: GOTO 120
  42. 390  IF NO = 31  THEN  PRINT R$: GOTO 120
  43. 400  IF NO = 9  THEN  PRINT "YOU CAN'T BE SERIOUS!": GOTO 120
  44. 410  IF NO = 40  THEN  PRINT "I CAN'T PULL IT OUT OF IT'S SOCKET.": GOTO 120
  45. 420  IF NO = 14  THEN  PRINT "MY,THAT'S HEAVY.TOOHEAVY TO CARRY.": GOTO 120
  46. 430  IF NO = 16  THEN  PRINT "IT'S IN A BIG POT THAT I CAN'T LIFT.": GOTO 120
  47. 440  IF NO = 22  THEN  PRINT "BE SERIOUS.": GOTO 120
  48. 450  IF NO = 26  THEN  PRINT "THE CAT VANISHED, SAYING:               'I WILL RETURN...'":OB(26,0) =  INT( RND(1) *40): GOTO 120
  49. 460  IF ZZ >5  THEN  PRINT "I CAN'T CARRY ANY MORE.": PRINT "CLUE: DROP SOMETHING.": GOTO 120
  50. 470 ZZ = ZZ +1
  51. 480 OB(NO,0) =  -1: PRINT "YOU GOT IT.": GOTO 120
  52. 490  IF VB = 3  THEN 90
  53. 500  IF VB < >4  THEN 540
  54. 510 ZZ = 0: PRINT "CURRENTLY I'M CARRYING:": FOR I = 8 TO LO: IF OB(I,0) =  -1  THEN  PRINT OB$(I):ZZ = ZZ +1
  55. 520  NEXT I: IF ZZ = 0  THEN  PRINT "NOTHING AT ALL!"
  56. 530  GOTO 120
  57. 540  IF VB < >5  THEN 590
  58. 550 J = 0: FOR I = 1 TO LO: IF OB(I,0) = 5  THEN J = J +OB(I,1)
  59. 560  NEXT I:J = J +MI
  60. 570  PRINT "OUT OF A MAXIMUM OF 160 POINTS"
  61. 571  PRINT "YOU HAVE "J" POINTS."
  62. 580  GOTO 120
  63. 590  IF VB < >6  THEN 660
  64. 600  IF NO$ = ""  THEN  INPUT "DROP WHAT";NO$: GOSUB 2500
  65. 610  IF OB(NO,0) < > -1  THEN  PRINT "I'M NOT HOLDING IT.": GOTO 120
  66. 620  PRINT "ALL RIGHT."
  67. 630 ZZ = ZZ -1
  68. 640 OB(NO,0) = CP
  69. 650  GOTO 120
  70. 660  IF VB < >7  THEN 670
  71. 661  PRINT "I CAN'T GIVE YOU HELP,"
  72. 662  PRINT "IT'S AGAINST MY RELIGION.": GOTO 120
  73. 670  IF VB < >8  THEN 750
  74. 680  HOME : INPUT "SAVE TO CASSETTE OR DISK ?";IO$:IO$ =  LEFT$(IO$,1): IF IO$ < >"C"  AND IO$ < >"D"  THEN 680
  75. 681  IF IO$ = "C"  THEN 741
  76. 682  PRINT "PRESS <RETURN> WHEN DISK": INPUT "PREPARATIONS ARE MADE.";XX$: PRINT "SAVING."
  77. 690  PRINT "<CTRL-D>OPEN"NA$
  78. 695  FOR I = 8 TO LO: PRINT "<CTRL-D>WRITE"NA$
  79. 700  IF OB$(I) = ""  THEN 720
  80. 711  PRINT OB(I,0)
  81. 720  NEXT I
  82. 730  PRINT CP: PRINT FF: PRINT ZZ: PRINT T: PRINT P(5,0): PRINT DF
  83. 740  PRINT "<CTRL-D>CLOSE": GOTO 120
  84. 741  PRINT "PRESS <RETURN> WHEN CASSETTE": INPUT "PREPARATIONS ARE MADE.";XX$: PRINT "SAVING.": FOR XX = 8 TO LO: IF OB$(XX) = ""  THEN 743
  85. 742 QQ(XX) = OB(XX,0)
  86. 743  NEXT XX
  87. 744 QQ(1) = CP:QQ(2) = FF:QQ(3) = ZZ:QQ(4) = T:QQ(5) = P(5,0):QQ(6) = DF
  88. 745  STORE QQ: GOTO 120
  89. 750  IF VB < >9  THEN 830
  90. 760  HOME : INPUT "LOAD FROM CASSETTE OR DISK ?";IO$:IO$ =  LEFT$(IO$,1): IF IO$ < >"C"  AND IO$ < >"D"  THEN 760
  91. 761  IF IO$ = "C"  THEN 821
  92. 762  PRINT "PRESS <RETURN> WHEN DISK": INPUT "PREPARATIONS ARE MADE.";XX$: PRINT "LOADING."
  93. 770  PRINT "<CTRL-D>OPEN"NA$
  94. 775  FOR I = 8 TO LO: PRINT "<CTRL-D>READ"NA$
  95. 780  IF OB$(I) = ""  THEN 800
  96. 791  INPUT OB(I,0)
  97. 800  NEXT I
  98. 810  INPUT CP,FF,ZZ,T,P(5,0),DF
  99. 820  PRINT "<CTRL-D>CLOSE NA$": GOTO 90
  100. 821  PRINT "PRESS <RETURN> WHEN CASSETTE": INPUT "PREPARATIONS ARE MADE.";XX$: PRINT "LOADING."
  101. 822  RECALL QQ: FOR I = 8 TO LO: IF OB$(I) = ""  THEN 824
  102. 823 OB(I,0) = QQ(I)
  103. 824  NEXT I
  104. 825 CP = QQ(1):FF = QQ(2):ZZ = QQ(3):T = QQ(4):P(5,0) = QQ(5):DF = QQ(6): GOTO 90
  105. 830  IF VB < >10  THEN 870
  106. 840  INPUT "DO YOU REALLY WANT TO QUIT NOW ?";QN$
  107. 850 QN$ =  LEFT$(QN$,1): IF QN$ = "N"  THEN 120
  108. 860  GOTO 2330
  109. 870  IF VB < >11  THEN 940
  110. 880  IF OB$(NOO) = ""  AND NO < >7  THEN  PRINT R$: GOTO 120
  111. 890  IF NO = 7  THEN 920
  112. 900  IF OB(NO,0) < > -1  THEN  PRINT A$: GOTO 120
  113. 910  IF NO < >7  THEN  PRINT "I CAN'T RING ";OB$(NO);"!!": GOTO 120
  114. 920  IF CP < >2  THEN  PRINT "I SEE NO BELL HERE!": GOTO 120
  115. 930  PRINT "THE DOOR FLIES OPEN AND I'M SWEPT"
  116. 931  PRINT "INSIDE,BUT THEN THE DOOR VANISHES"
  117. 932  PRINT "LEAVING NO VISIBLE WAY OUT!":FF = 1:CP = 5: GOTO 120
  118. 940  IF VB < >12  THEN 1010
  119. 950  IF NO = 8  AND OB(10,0) < >0  THEN  PRINT "IT IS ALREADY FULL.": GOTO 120
  120. 960  IF OB(NO,0) < > -1  THEN  PRINT "I'M NOT HOLDING IT RIGHT NOW.": GOTO 120
  121. 970  IF NO < >8  AND NO < >29  THEN  PRINT "I CANT FILL THAT !": GOTO 120
  122. 980  IF CP < >3  THEN  PRINT "THERE IS NOTHING TO FILL IT WITH HERE.": GOTO 120
  123. 990  IF NO = 29  THEN  PRINT "NO, I VALUE MY LIFE AND THAT FLUID": PRINT "THAT WAS IN THERE MIGHT REACT WITH": PRINT "THE WATER.": GOTO 120
  124. 1000  IF NO = 8  THEN  PRINT "YOUR BUCKET IS NOW FULL.":OB(8,0) = 0:OB(10,0) =  -1: GOTO 120
  125. 1010  IF VB < >13  THEN 1070
  126. 1020  IF NO < >27  AND NO < >26  AND NO < >9  AND NO < >13  AND NO < >31  THEN  PRINT "IT ISN'T ALIVE !": GOTO 120
  127. 1030  IF OB(NO,0) < >CP  THEN  PRINT A$: GOTO 120
  128. 1040  IF NO = 9  THEN  PRINT "I DON'T THINK IT WOULD APPROVE.": GOTO 120
  129. 1050  IF NO = 27  THEN  PRINT "IT DOESN'T TAKE TO FAVORABLY": PRINT "TO THE IDEA.": GOTO 120
  130. 1051  PRINT "FAVORABLY TO THE IDEA .": GOTO 120
  131. 1060  PRINT "YOU'LL HAVE TO BE MORE SPECIFIC.": GOTO 120
  132. 1070  IF VB < >14  THEN 1130
  133. 1080  IF NO = 0  THEN  PRINT "THROW WHAT ?": GOTO 120
  134. 1090  IF OB(NO,0) < > -1  THEN  PRINT "I'M NOT HOLDING IT!": GOTO 120
  135. 1100  IF NO < >24  AND NO < >10  THEN 610
  136. 1110  IF CP = 38  AND NO = 10  THEN  PRINT "THE WITCH HAS VANISHED!":OB(18,0) = 38: PRINT "HER HAT REMAINS.":OB(31,0) = 0:OB(10,0) = 0:OB(8,0) =  -1: GOTO 120
  137. 1120  GOTO 610
  138. 1130  IF VB < >15  THEN 1190
  139. 1140  IF NO = 0  THEN  PRINT "SHOW WHAT ?": GOTO 120
  140. 1150  IF OB(NO,0) < > -1  THEN  PRINT "I'M NOT CARRYING IT !": GOTO 120
  141. 1160  IF NO < >11  THEN  PRINT "NOTHING HAPPENED.": GOTO 120
  142. 1170  IF OB(9,0) < >25  THEN  PRINT "NOTHING EXCITING HAPPENED.": GOTO 120
  143. 1180  PRINT "THE VAMPIRE SCURRIES OFF SAYING:"
  144. 1181  PRINT "YOU HAVEN'T SEEN THE END OF ME YET !!!":OB(9,0) = 9: GOTO 120
  145. 1190  IF VB < >16  THEN 1260
  146. 1200  IF NO < >9  AND NO < >13  AND NO < >31  THEN  PRINT "THAT IS STUPID.": GOTO 120
  147. 1210  IF OB(NO,0) < >CP  THEN  PRINT A$: GOTO 120
  148. 1220  IF OB(23,0) < > -1  THEN  PRINT "I DON'T HAVE ANY FOOD,STUPID !!!": GOTO 120
  149. 1230  IF NO = 9  AND OB(23,0) < > -1  THEN  PRINT "HE ONLY LIKES BANANAS.": GOTO 120
  150. 1240  IF NO = 9  THEN  PRINT "HE GULPS DOWN YOUR BANANA AND EATS": PRINT "THE PEEL TOO!!":OB(23,0) = 0: GOTO 120
  151. 1250  PRINT "SHE GRABS THE BANANA AND THROWS IT"
  152. 1251  PRINT "INTO THE BREW.":OB(23,0) = 0: GOTO 120
  153. 1260  IF VB < >17  THEN 1320
  154. 1270  IF OB(NO,0) < > -1  AND OB(NO,0) < >CP  THEN  PRINT "I DON'T SEE IT HERE.": GOTO 120
  155. 1280  IF NO = 11  THEN  PRINT "I DON'T WANT TO HAVE BAD BREATH.": GOTO 120
  156. 1290  IF NO < >12  AND NO < >23  THEN  PRINT R$: GOTO 120
  157. 1300  IF OB(NO,0) < > -1  THEN  PRINT "I'M NOT CARRYING IT.": GOTO 120
  158. 1310  PRINT "MUNCH MUNCH MUNCH. GOOD.":OB(23,0) = 0:OB(24,0) =  -1: GOTO 120
  159. 1320  IF VB < >18  THEN 1440
  160. 1330  IF NO = 0  THEN  PRINT "I DON'T UNDERSTAND.": GOTO 120
  161. 1340  IF NO < >14  AND NO < >22  AND NO < >33  THEN  PRINT "THAT IS BEYOND MY CAPABILITIES.": GOTO 120
  162. 1350  IF CP < >25  AND NO = 14  THEN  PRINT "I SEE NO COFFIN TO OPEN HERE !": GOTO 120
  163. 1360  IF CP = 25  AND OB(9,0) = CP  AND NO = 14  THEN  PRINT "THE VAMPIRE WON'T LET ME!": GOTO 120
  164. 1370  IF NO = 14  AND CP = 25  THEN  PRINT "THE COFFIN IS OPEN":CF = 1: IF OB(35,0) = 0  THEN OB(35,0) = 25: GOTO 120
  165. 1380  IF NO < >22  THEN 1420
  166. 1390  IF CP = 2  THEN  PRINT "IT IS LOCKED. MAYBE THESE PEOPLE ARE": PRINT "FRIENDLY, SO TRY RINGING THE BELL.": GOTO 120
  167. 1400  IF CP = 6  THEN  PRINT "I CAN'T.THERE IS NO DOORKNOB AND NO"
  168. 1401  PRINT "KEYHOLE.HOWEVER,IT'S QUITE POSSIBLE"
  169. 1402  PRINT "THAT I CAN GET BY IT.": GOTO 120
  170. 1410  PRINT "I SEE NO DOOR HERE.": GOTO 120
  171. 1420  IF OB(33,0) =  -1  THEN  PRINT "TRY UNFOLDING THE AIRPLANE.": GOTO 120
  172. 1423  IF OB(33,0) < > -1  THEN  PRINT "I HAVE NO AIRPLANE.": GOTO 120
  173. 1440  IF VB < >20  THEN 1530
  174. 1450  IF NO = 22  AND (CP = 2  OR CP = 6)  THEN 1480
  175. 1460  IF NO = 0  THEN  PRINT <CTRL-W>CHOP WHAT? I DON'T UNDERSTAND!": GOTO 120
  176. 1470  IF OB(NO,0) < >CP  THEN  PRINT "I DON'T SEEIT HERE.": GOTO 120
  177. 1480  IF OB(39,0) < > -1  THEN  INPUT "WITH WHAT, MY BARE HANDS";BH$: IF  LEFT$(BH$,1) = "Y"  THEN  PRINT "I DON'T KNOW KARATE!": GOTO 120
  178. 1490  IF OB(39,0) < > -1  THEN  PRINT "ALL RIGHT THEN!": GOTO 120
  179. 1500  IF NO < >22  THEN  PRINT "THAT IS BEYOND MY POWER.": GOTO 120
  180. 1510  IF CP < >2  AND CP < >6  THEN  PRINT "I SEE NO DOOR HERE.": GOTO 120
  181. 1520  PRINT "THE DOOR IS CHOPPED TO PEICES.":DF = 1: GOTO 120
  182. 1530  IF VB < >19  THEN 1610
  183. 1540  IF NO < >22  AND NO < >38  AND NO < >14  THEN  PRINT "THAT IS RIDICULOUS.": GOTO 120
  184. 1550  IF NO = 14  AND CP < >25  THEN  PRINT "I SEE NO COFFIN TO CLOSE HERE.": GOTO 120
  185. 1560  IF NO = 14  AND CP = 25  THEN  PRINT "THE COFFINIS CLOSED.":CF = 0: GOTO 120
  186. 1570  IF NO = 22  AND CP = 2  THEN  PRINT "IT IS ALREADY CLOSED.": GOTO 120
  187. 1580  IF NO = 22  AND CP = 5  THEN  PRINT "THE DOOR VANISHED, REMEMBER?": GOTO 120
  188. 1590  IF NO = 22  AND CP = 6  AND DF = 1  THEN  PRINT "CLOSING A BUNCH OF WOOD SCRAPS": PRINT "IS BEYOND MY POWER.": GOTO 120
  189. 1600  IF NO = 22  THEN  PRINT "I SEE NO DOOR HERE.": GOTO 120
  190. 1610  IF VB < >21  THEN 1660
  191. 1620  IF NO = 0  THEN  PRINT Y$: GOTO 120
  192. 1630  IF NO < >15  THEN  PRINT "WHY DO YOU KEEP TELLING ME TO DO": PRINT "DUMB THINGS?": GOTO 120
  193. 1640  IF OB(15,0) < > -1  THEN  PRINT "I'M NOT HOLDING THEM !!": GOTO 120
  194. 1650  PRINT "OKAY.....": PRINT "               POOF!!!": PRINT "THE CHEMICALS TRANSFORMED THEMSELVES": PRINT "INTO AN ORANGE BUBBLING LIQUID.":CF = 1: GOTO 120
  195. 1660  IF VB < >22  THEN 1820
  196. 1670  IF NO < >16  AND NO < >10  AND NO < >28  AND NO < >15  THEN  PRINT "YOU CAN'T BE SERIOUS.": GOTO 120
  197. 1680  IF NO = 16  AND CP = 38  THEN  PRINT "I DON'T THINK I SHOULD."
  198. 1681  PRINT "(THERES AN OLD SHOE IN IT!)": GOTO 120
  199. 1690  IF NO = 10  AND OB(10,0) =  -1  THEN  PRINT "OKAY...":OB(10,0) = 0:OB(8,0) =  -1
  200. 1691  PRINT "GULP..GULP..GULP.": GOTO 120
  201. 1700  IF NO = 28  AND OB(28,0) =  -1  THEN  PRINT "ALLRIGHT....": PRINT "                POOF!!!"1: PRINT "OH MY! WHERE AM I? OH MY! ALL MY": PRINT "POSSESIONS WERE LOST IN THAT DENSE": PRINT "CLOUD OF GREASY BLACK SMOKE!"
  202. 1701  PRINT " OH MY! ALL MY POSSESIONS WERE LOST IN"
  203. 1702  PRINT "THE DENSE CLOUD OF GREASY BLACK SMOKE."
  204. 1710  IF NO < >28  OR OB(28,0) < > -1  THEN 1800
  205. 1720  FOR I = 8 TO LO
  206. 1730  IF OB$(I) = ""  THEN 1760
  207. 1740  IF OB(I,0) < > -1  AND OB(I,0) < >5  THEN 1760
  208. 1750 OB(I,0) =  INT( RND(1) *38)
  209. 1760  NEXT I
  210. 1770 OB(28,00) = 0:OB(29,0) =  -1
  211. 1780 ZZ = 1
  212. 1790  GOTO 120
  213. 1800  IF NO = 15  THEN  PRINT "I DON'T WANT TO TRY THAT.": GOTO 120
  214. 1810  PRINT "I CAN'T DO THAT YET..": GOTO 120
  215. 1820  IF VB < >23  THEN 1880
  216. 1830  IF NO = 22  AND (CP = 2  OR CP = 6)  THEN 1850
  217. 1840  IF OB(NO,0) < > -1  AND OB(NO,0) < >CP  THEN  PRINT "I DON'T SEE IT HERE.": GOTO 120
  218. 1850  IF NO < >9  AND NO < >13  AND NO < >31  THEN  PRINT "I DON'T WANT TO HIT THE ";NO$;".": GOTO 120
  219. 1860  IF NO = 9  THEN  PRINT "HIT HIM YOURSELF! I'M SURE NOT GONNA !": GOTO 120
  220. 1870  PRINT "YUK! SHE'S GOT WARTS ALL OVER HER !!": GOTO 120
  221. 1880  IF VB = 24  THEN  PRINT "ALL RIGHT...";NO$: GOTO 120
  222. 1890  IF VB = 25  THEN  PRINT "YOU HAVE USED "T" TURNS SO FAR.": GOTO 120
  223. 1900  IF VB < >26  THEN 1960
  224. 1910  IF NO < >10  AND NO < >28  AND NO < >15  THEN  PRINT "DON'T BE DUMB.": GOTO 120
  225. 1920  IF NO = 10  AND OB(10,0) =  -1  THEN  PRINT "YOURBUCKET IS EMPTY AND THE "
  226. 1921  PRINT "GROUND IS WET.":OB(10,0) = 0:OB(8,0) =  -1: GOTO 120
  227. 1930  IF NO = 28  THEN  PRINT "YOU'RE STUCK WITH AN EMPTY TESTTUBE NOW":OB(28,0) = 0:OB(29,0) =  -1: GOTO 120
  228. 1940  IF NO = 15  AND OB(15,0) =  -1  THEN  PRINT "THE CHEMICALS REACTED WITH THE DUST": PRINT "AND I GOT LOST IN A THICK CLOUD OF": PRINT "ORANGE SMOKE...I SUGGEST YOU 'LOOK'":CP = 12: GOTO 120
  229. 1950  PRINT "I'M NOT CARRYING IT RIGHT NOW.": GOTO 120
  230. 1960  IF VB = 27  THEN  PRINT "I'M NOT ROCKY, YOU KNOW.": GOTO 120
  231. 1970  IF VB < >29  THEN 2010
  232. 1980  IF NO < >33  THEN  PRINT "GIVE ME A BREAK!": GOTO 120
  233. 1990  IF OB(33,0) < > -1  THEN  PRINT "I'M NOT HOLDING AN AIRPLANE !": GOTO 120
  234. 2000  PRINT "O.K.":OB(33,0) = 0:OB(34,0) =  -1: GOTO 120
  235. 2010  IF VB < >28  THEN 2080
  236. 2020  IF OB(NO,0) < >CP  AND OB(NO,0) < > -1  THEN  PRINT "I DON'T SEE IT AND I'M NOT HOLDING IT.": GOTO 120
  237. 2030  IF NO < >34  AND NO < >32  AND NO < >19  THEN  PRINT "THERE IS NO WRITING THERE.": GOTO 120
  238. 2040  IF OB(NO,0) < > -1  THEN  PRINT "I DON'T HAVE IT WITH ME.": GOTO 120
  239. 2050  IF NO = 32  THEN  PRINT "IT SAYS: NOTTUB SSERP": GOTO 120
  240. 2060  IF NO = 34  THEN  PRINT "IT READS:REMEMBER THE WIZARD OF OZ.": GOTO 120
  241. 2070  PRINT "THEY ARE WRITTEN IN WITCHISH.": GOTO 120
  242. 2080  IF VB = 30  THEN  PRINT "TRY OPEN.": GOTO 120
  243. 2090  IF VB < >31  THEN 2150
  244. 2100  IF OB(NO,0) < >CP  THEN  PRINT A$: GOTO 120
  245. 2110  IF NO < >9  AND NO < >31  THEN  PRINT "BE SERIOUS.": GOTO 120
  246. 2120  IF OB(35,0) < > -1  THEN  PRINT "I DON'T HAVE A KNIFE !!": GOTO 120
  247. 2130  IF NO = 31  THEN  PRINT "THE KNIFE VANISHES WHEN IT TOUCHES HER.":OB(35,0) = 0: GOTO 120
  248. 2140  PRINT "THE VAMPIRE DIES AND THEN VANISHES.":OB(9,0) = 0: GOTO 120
  249. 2150  IF NO < >40  THEN  PRINT "THAT'S IDIOTIC.": GOTO 120
  250. 2160  IF CP < >37  THEN  PRINT "I SEE NO BUTTON HERE.": GOTO 120
  251. 2170 CP = 38: GOTO 90
  252. 2180  PRINT "OH MY! A GHOST POPS OUT AND SAYS:": PRINT "THROW ME SOME TREASURE!": GOSUB 2410
  253. 2190  IF VB < >16  OR NO < >13  THEN 2210
  254. 2200  IF OB(23,0) = 0  THEN  PRINT "I HAVE NO FOOD.": GOTO 2210
  255. 2201  PRINT "HE EATS THE BANANA AND VANISHES.":OB(23,0) = 0:OB(24,0) = CP: GOTO 120
  256. 2210  IF VB < >14  THEN  PRINT "HE IS GETTING MAD!": GOSUB 2410
  257. 2220  IF VB < >14  THEN  PRINT "HE HAS KILLED ME !": GOTO 2330
  258. 2230  IF OB(NO,0) < > -1  THEN  PRINT "I'M NOT HOLDING IT." GOSUB 2410: GOSUB 2210
  259. 2240  IF OB(NO,1) = 0  THEN  PRINT "HE GROWLS:": PRINT "NOT GOOD ENOUGH! AND THROWS IT BACK.": GOSUB 2410: GOSUB 2210
  260. 2250  PRINT "HE SNATCHES THE TREASURE AND RUNS AWAY.":ZZ = ZZ -1:OB(NO,0) = 0: GOTO 120
  261. 2260  PRINT "HEAVENS! A ONE EYED GHOUL POPPED OUT!"
  262. 2270  INPUT "WHAT AM I TO DO ?";CM$: GOSUB 2420
  263. 2280  IF VB < >14  OR NO < >15  THEN 2320
  264. 2290  IF OB(15,0) < > -1  THEN  PRINT "I DON'T HAVE THEM!": GOTO 2320
  265. 2300  IF CF = 0  THEN  PRINT "THEY WEREN'T MIXED!": GOTO 2320
  266. 2310  PRINT "THE GHOUL MELTS TO NOTHING.":OB(15,0) = CP:ZZ = ZZ -1: GOTO 120
  267. 2320  PRINT "THE GHOUL KILLS ME!": GOTO 2330
  268. 2330 J = 0: FOR I = 8 TO LO: IF OB(I,0) = 5  THEN J = J +OB(I,1)
  269. 2340  NEXT I
  270. 2350 J = J +MI
  271. 2360  PRINT "OUT OF A MAXIMUM OF 160 POINTS, YOU": PRINT "SCORED "J" POINTS, USING "T" TURNS.": PRINT : PRINT "DO YOU WISH TO PLAY": INPUT "THIS ADVENTURE AGAIN? ";AG$: IF  LEFT$(AG$,1) = "N"  THEN  HOME 
  272. 2365  PRINT : PRINT  CHR$(4)"RUN STARTUP"
  273. 2370  FOR K = 1 TO  LEN(NA$): POKE 24576 +K, ASC( MID$ (NA$,K,1)): NEXT K: POKE 24576 +K,191
  274. 2380  CLEAR :CO = 0:NA$ = ""
  275. 2390 CO = CO +1:PE =  PEEK(24576 +CO): IF PE < >191  THEN NA$ = NA$ + CHR$(PE): GOTO 2390
  276. 2400  GOTO 20
  277. 2410  PRINT "WHAT SHOULD I DO --->";:CM$ = ""
  278. 2411  GET GT$: IF  ASC(GT$) = 13  THEN 2419
  279. 2412  IF  ASC(GT$) < >8  THEN CM$ = CM$ +GT$: GOTO 2418
  280. 2413  IF  LEN(CM$) < = 1  THEN CM$ = "": GOTO 2418
  281. 2414 CM$ =  LEFT$(CM$, LEN(CM$) -1)
  282. 2418  PRINT GT$;: GOTO 2411
  283. 2419  PRINT 
  284. 2420 NO$ = "":VB$ = "":VB = 0:NO = 0
  285. 2430 LC =  LEN(CM$): FOR I = 1 TO LC: IF  MID$ (CM$,I,1) < >" "  THEN VB$ = VB$ + MID$ (CM$,I,1): NEXT I
  286. 2440 V1$ = VB$
  287. 2450 VB$ =  LEFT$(VB$,3)
  288. 2460  FOR I = 1 TO NV: IF VB$(I) = VB$  THEN VB = I: GOTO 2480
  289. 2465  NEXT I
  290. 2470 VB = 1:NO$ = VB$: GOTO 2500
  291. 2480  IF  LEN(V1$) +1 > =  LEN(CM$)  THEN NO = 0: RETURN 
  292. 2490 NO$ =  RIGHT$(CM$, LEN(CM$) -1 - LEN(V1$))
  293. 2500 NO$ =  LEFT$(NO$,3): FOR I = 1 TO NN: IF NO$ = NO$(I)  THEN 2520
  294. 2505  NEXT I
  295. 2510 NO = 0: RETURN 
  296. 2520 NO = I: RETURN 
  297. 2530  HOME 
  298. 2540  PRINT P$(CP)
  299. 2550  FOR I = 8 TO LO: IF OB(I,0) = CP  THEN  PRINT "THERE IS ";OB$(I);" HERE."
  300. 2560  NEXT I
  301. 2570 FL = 0: IF OB(27,0) < > -1  THEN 2590
  302. 2575  PRINT "I CAN GO --";: FOR I = 0 TO 5: IF P(CP,I) < >0  THEN  PRINT NO$(41 +I);" ";:FL = 1
  303. 2580  NEXT I: IF FL = 0  THEN  PRINT "NOWHERE!": GOTO 2590
  304. 2585  PRINT 
  305. 2590  PRINT "---------------------------------------"
  306. 2600  GOTO 100
  307. 2610 NN = 46:LO = 40:P = 40:NV = 32: DIM NO$(NN),OB$(LO),OB(LO,1),QQ(LO)
  308. 2611  DIM P$(P),P(P,5),VB$(NV)
  309. 2620 P$(1) = "I'M AT THE SECOND GABLE.": DATA 0,4,0,0,0,0
  310. 2630 P$(2) = "I'M OUTSIDE A HOUSE WITH SEVEN GABLES.  THERE IS A DOORBELL BESIDE THE DOOR.": DATA 0,5,0,0,0,0
  311. 2640 P$(3) = "I'M IN THE KITCHEN. THERE IS A SINK     WITH A WORKING SPICKET HERE.": DATA 0,6,0,0,0,0
  312. 2650 P$(4) = "I'M IN THE GUEST ROOM. (I DON'T WANT TO BE A PERMENANT GUEST!).": DATA 1,0,5,8,0,0
  313. 2660 P$(5) = "I'M IN THE LIVING ROOM.": DATA 0,9,6,4,0,0
  314. 2670 P$(6) = "I'M IN THE DINING ROOM.": DATA 3,0,7,5,0,0
  315. 2680 P$(7) = "I'M AT THE BOTTOM OF THE STAIRWELL.": DATA   0,0,0,6,29,0
  316. 2690 P$(8) = "I'M AT THE FIRST GABLE. IT OVERLOOKS A  HUGE YARD OF TALL GRASS.": DATA 0,0,4,0,0,0
  317. 2700 P$(9) = "I'M AT THE TOP OF A STAIRCASE.": DATA 5,0,0,10,0,20
  318. 2710 P$(10) = "I'M IN A DARK STORAGE CLOSET. A HOLLOW  VOICE SAYS 'MIX THEM'.": DATA 0,0,9,0,0,0
  319. 2720 P$(11) = "I'M IN A MAD SCIENTEST'S LABORATORY.": DATA 0,0,0,0,0,12
  320. 2730 P$(12) = "I'M IN A MAZE OF HALLWAYS.": DATA 0,16,12,12,11,15
  321. 2740  DATA 0,0,0,0,0,0,0,0,0,0,0,0
  322. 2750 P$(15) = P$(12): DATA 15,17,15,16,0,0
  323. 2760 P$(16) = P$(12): DATA 15,16,12,16,16,16
  324. 2770 P$(17) = P$(12): DATA  15,0,18,0,0,0
  325. 2780 P$(18) = "I'M AT THE WEST END OF THE HALLWAY": DATA  19,0,23,17,0,0 
  326. 2790 P$(19) = "I'M IN A DUNGION. A CRUDE NOTE ON THE   WALL READS: YOU CAN'T GET OUT WITHOUT   KILLING ME FIRST! --WITCHY-POO": DATA 0,18,19,19,19,19
  327. 2800 P$(20) = "I'M AT THE BOTTOM OF A STAIRCASE.": DATA 0,23,0,0,9,0
  328. 2810  DATA 0,0,0,0,0,0
  329. 2820 P$(22) = "I'M IN A BARREN LIBRARY.": DATA 0,24,0,0,0,0
  330. 2830 P$(23) = "I'M IN THE CENTER OF A LONG E/W HALLWAY": DATA 20,0,24,18,0,0
  331. 2840 P$(24) = "I'M AT THE EAST END OF THE HALLWAY.": DATA 22,0,25,23,0,0
  332. 2850 P$(25) = "I'M IN DRACULA'S CHAMBER.": DATA 0,0,0,24,0,0
  333. 2860 P$(26) = "I'M IN A BROOM CLOSET.EXCITING.": DATA 0,0,27,0,0,0
  334. 2870 P$(27) = "I'M AT THE FOURTH GABLE.": DATA 28,0,0,26,0,0
  335. 2880 P$(28) = "I'M AT GABLE FIVE": DATA 0,27,29,0,0,0
  336. 2890 P$(29) = "I'M AT THE TOP OF A STAIRCASE.": DATA 0,0,0,28,0,32
  337. 2900 P$(30) = "I'M IN A BEDROOM.": DATA 0,0,31,33,0,0
  338. 2910 P$(31) = "I'M IN A DUSTY OLD CHAMBER. LOOKS LIKE  A DILAPIDATED BEDROOM.": DATA 0,34,32,30,0,0
  339. 2920 P$(32) = "I'M AT THE SIXTH GABLE.": DATA 0,0,0,31,0,0
  340. 2930 P$(33) = "I'M AT THE THIRD GABLE.": DATA 0,0,30,34,0,0
  341. 2940 P$(34) = "I'M AT THE END OF A HALLWAY.": DATA 31,40,35,0,0,0
  342. 2950 P$(35) = "I'M IN THE MIDDLE OF A HALLWAY.": DATA 0,0,36,34,0,0
  343. 2960 P$(36) = P$(34): DATA 32,0,37,35,0,0
  344. 2970 P$(37) = "I'M IN A ROOM WITH A PEDESTAL IN THE    MIDDLE. ATOP IT IS A LARGE BUTTON.": DATA 0,0,0,36,0,39
  345. 2980 P$(38) = "I'M IN THE WITCH'S CHAMBER.": DATA 0,0,0,0,0,5
  346. 2990 P$(39) = "I'M AT THE SEVENTH GABLE.": DATA 0,0,0,0,37,0
  347. 3000 P$(40) = "I'M IN A MAMMOTH ART GALLERY.": DATA 34,0,0,0,0,0
  348. 3010 OB$(8) = "AN EMPTY BUCKET": DATA 6,0:OB$(9) = "A MEAN LOOKING VAMPIRE": DATA 25,0:OB$(10) = "A BUCKET OF WATER": DATA 0,0
  349. 3020 OB$(11) = "SOME FRESH GARLIC": DATA 3,0
  350. 3030 OB$(14) = "A COFFIN": DATA 25,0:OB$(15) = "SOME CHEMICALS": DATA 11,0
  351. 3040 OB$(16) = "A POCKET OF WITCHES BREW": DATA 38,0
  352. 3050 OB$(18) = "A BLACK HAT": DATA 0,50:OB$(19) = "SOME VALUABLE RECIPES": DATA 26,15
  353. 3060 OB$(20) = "SOME GOLD CANDLESTICKS": DATA 6,10
  354. 3070 OB$(23) = "A BANANA": DATA 3,0:OB$(24) = "A BANANA PEEL": DATA 0,0
  355. 3080 OB$(25) = "A SPARKLING DIAMOND": DATA 39,15:OB$(26) = "A BLACK CAT": DATA 1,0
  356. 3090 OB$(27) = "A SHINY COMPASS": DATA 2,0
  357. 3100 OB$(28) = "A TEST TUBE OF FLUID": DATA 33,0:OB$(29) = "AN EMPTY TEST TUBE": DATA 0,0
  358. 3110 OB$(30) = "A BEAUTIFUL ROSE": DATA 29,10:OB$(31) = "AN UGLY WITCH": DATA 38,0
  359. 3115 OB$(32) = "A BOOK OF WITCHCRAFT": DATA 22,0
  360. 3120 OB$(33) = "A PAPER AIRPLANE": DATA 32,0:OB$(34) = "A PIECE OF PAPER WITH WRITING ON IT": DATA 0,0
  361. 3130 OB$(35) = "A SULTON'S DAGGER": DATA 0,35:OB$(36) = "A PRICELESS REMBRANDT": DATA 40,20
  362. 3140 OB$(39) = "A OLD RUSTY AXE": DATA 15,5
  363. 3150  FOR I = 1 TO P: FOR J = 0 TO 5: READ P(I,J): NEXT J,I
  364. 3160  FOR I = 8 TO LO
  365. 3170  IF OB$(I) = ""  THEN 3190
  366. 3180  READ OB(I,0),OB(I,1)
  367. 3190  NEXT I
  368. 3200  DATA  NOR,SOU,EAS,WES,UP,DOW,BEL,BUC,VAM,WAT,GAR,FOO,GHO,COF,CHE,BRE,CUP,HAT,REC,CAN,KEY,DOO,BAN,PEE,DIA,CAT,COM
  369. 3201  DATA  FLU,TUB,ROS,WIT,BOO,AIR,PAP,DAG,REM,CAG,GAT,AXE,BUT,N,S,E,W,U,D
  370. 3210  FOR I = 1 TO NN: READ NO$(I): NEXT I
  371. 3220  DATA GO,GET,LOO,INV,SCO,DRO,HEL,SAV,LOA,QUI,RIN,FIL,KIL,THR,SHO,FEE,EAT,OPE,CLO,CHO,MIX,DRI,HIT,SAY,TUR,DUM,FIG,REA,UNF,UNL,STA,PRE
  372. 3230  FOR I = 1 TO NV: READ VB$(I): NEXT I
  373. 3240  GOTO 90
  374. 3500  PRINT "WHAZZAT ?": GOTO 120