home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / mbug / mbug090.arc / DOGSTAR.BAS < prev    next >
BASIC Source File  |  1979-12-31  |  19KB  |  383 lines

  1. 10 REM DOG STAR by LANCE MICKLUS
  2. 20 REM Converted into Microsoft basic by Robert Nelson
  3. 30 REM Added intro. and converted to Microbee by Alan Laughton
  4. 40 CLEAR 300:DEFINT A-Z
  5. 50 CLS$=CHR$(26)              'ERASE SCREEN & HOME CURSOR
  6. 60 NL$=CHR$(13)+CHR$(10)      'NEW LINE
  7. 70 LV=21:LN=37:CL=37:LO=23
  8. 80 DIM VB$(21),NO$(37),DS$(37),OB$(23),DS(37,5),OB(23,2),HE$(37)
  9. 90 GOSUB 2310
  10. 100 BT=1
  11. 110 LC=2:SL=80:BL=4:GF=50
  12. 115 GOTO 3570
  13. 120 GOTO 1840
  14. 130 IF TC<25 OR RND(GF)<>1 THEN 230
  15. 140 IF TC=300 THEN GF=20
  16. 150 IF LC<3 OR LC=9 OR LC=26 OR LC=36 OR LC=37 THEN 230
  17. 160 IF LC>26 AND LC<31 THEN 230
  18. 170 PRINT"Holy smoke. An armed guard just walked in."
  19. 180 GOSUB 2130:IF VB<>12 OR NO<>15 THEN 1100
  20. 190 X=13:GOSUB 2270:IF Y<>-1 THEN 1100
  21. 200 IF BL=0 THEN PRINT CLS$"I'm out of ammunition.":PRINT:GOTO 1110
  22. 210 PRINT"ZZZAP! No more guard."
  23. 220 BL=BL-1:IF BL=0 THEN PRINT"I'm out of ammunition."
  24. 230 IF MD<>TC THEN 260
  25. 240 X=22:GOSUB 2270:IF Y<>-1 THEN 260
  26. 250 PRINT"Your BIG-MAC is cold."
  27. 260 GOSUB 2130:TC=TC+1
  28. 270 IF VB=0 AND NO=0 THEN 280 ELSE 300
  29. 280 PRINT"I don't know how to do that.":GOTO 130
  30. 290 PRINT"Nothing happened.":GOTO 130
  31. 300 IF VB>1 OR NO>7 THEN 430
  32. 310 IF NO=0 THEN 280
  33. 320 IF DS(LC,NO-1)=0 THEN PRINT"I can't go that way!":GOTO 130
  34. 330 IF DR AND DS(LC,NO-1)>2 AND DS(LC,NO-1)<6 THEN PRINT"I can't go that way. Flight deck doors are open."+NL$+"NO AIR!!!":GOTO 130
  35. 340 IF NO=3 AND LC=31 AND NOT DJ THEN PRINT M0$:GOTO 130
  36. 350 IF LC=35 AND DS(LC,NO-1)=36 AND OB(21,1)<>0 THEN PRINT"The Robot won't let me thru.":GOTO 130
  37. 360 IF LC=17 AND OB(13,1)=17 THEN 1100
  38. 370 IF LC=9 AND OB(5,1)=9 THEN 1100
  39. 380 IF LC=9 OR LC=17 THEN HE$(LC)=""
  40. 390 LC=DS(LC,NO-1)
  41. 400 IF LC=34 THEN HE$(LC)=""
  42. 410 IF LC=26 THEN 2060
  43. 420 GOTO 1840
  44. 430 IF VB=3 THEN 1840
  45. 440 IF VB<>2 THEN 600
  46. 450 IF NO=0 THEN PRINT"I don't know what a ";CHR$(34);NO$(0);CHR$(34);" is.":GOTO 130
  47. 460 IF CR>5 THEN PRINT"I can't carry any more. (Hint: DROP something.)":GOTO 130
  48. 470 FOR I=1 TO LO:IF OB(I,0)=NO THEN 480 ELSE NEXT I:GOTO 280
  49. 480 IF OB(I,1)=-1 THEN PRINT"I'm already carrying it.":GOTO 130
  50. 490 IF OB(I,1)<>LC THEN PRINT"I don't see it.":GOTO 130
  51. 500 IF NO<>37 THEN 530
  52. 510 X=13:GOSUB 2270:IF Y<>-1 THEN PRINT"I don't have a blaster to put it in.":GOTO 130
  53. 520 BL=4:OB(I,1)=0:PRINT"My blaster's reloaded.":GOTO 130
  54. 530 IF NO=15 OR NO=25 OR NO=34 THEN PRINT"He looks pretty mean to me.":GOTO 130
  55. 540 CR=CR+1:OB(I,1)=-1:PRINT"Ok"
  56. 550 IF NO=14 AND NOT CM THEN PRINT"A voice says: ";CHR$(34);"SESAME";CHR$(34);".":CM=-1
  57. 560 IF NO=22 AND MD=0 THEN MD=TC+50
  58. 570 IF NO=12 THEN HE$(2)=""
  59. 580 IF NO=13 THEN HE$(7)=""
  60. 590 GOTO 130
  61. 600 IF VB<>4 THEN 650
  62. 610 PRINT"I'm carrying:-"
  63. 620 K=0:FOR I=1 TO LO:IF OB(I,1)=-1 THEN PRINT OB$(I):K=1
  64. 630 NEXT I:IF K=0 THEN PRINT"Nothing."
  65. 640 PRINT:GOTO 130
  66. 650 IF VB<>5 THEN 660 ELSE GOSUB 2230:GOTO 130
  67. 660 IF VB<>6 THEN 740
  68. 670 IF NO=0 THEN 450
  69. 680 IF LC=2 THEN PRINT"Thers's no room here.":GOTO 130
  70. 690 IC=0:FOR I=1 TO LO:IF OB(I,1)=LC THEN IC=IC+1
  71. 700 NEXT I:IF IC>12 THEN PRINT"There's not enough room. Get rid of something.":GOTO 130
  72. 710 FOR I=0 TO LO:IF OB(I,0)=NO THEN 720 ELSE NEXT I:GOTO 280
  73. 720 IF OB(I,1)<>-1 THEN PRINT"I'm not carrying it.":GOTO 130
  74. 730 CR=CR-1:OB(I,1)=LC:PRINT"O.K.":GOTO 130
  75. 740 IF VB<>7 THEN 760
  76. 750 IF HE$(LC)="" THEN PRINT"How am I supposed to know what to do ?":GOTO 130 ELSE PRINT HE$(LC):GOTO 130
  77. 760 IF VB<>8 THEN 880
  78. 790 NO$(0)="DOGSTAR.SAV"
  79. 800 OPEN "O",#1,NO$(0)
  80. 810 FOR I=0 TO LO
  81. 820 WRITE #1,OB(I,0),OB(I,1),OB(I,2)
  82. 830 NEXT I
  83. 850 WRITE #1,TB,TC,CM,DR,BL,MD,GF,DJ,CR,LC
  84. 860 CLOSE #1
  85. 870 PRINT"O.K. - Done.":GOTO 130
  86. 880 IF VB<>9 THEN 990
  87. 890 GOTO 910
  88. 900 GOSUB 2290:GOTO 930
  89. 910 NO$(0)="DOGSTAR.SAV"
  90. 920 OPEN "I",#1,NO$(0)
  91. 930 FOR I=0 TO LO
  92. 940 INPUT #1,OB(I,0),OB(I,1),OB(I,2)
  93. 950 NEXT I
  94. 960 INPUT #1,TB,TC,CM,DR,BL,MD,GF,DJ,CR,LC
  95. 970 CLOSE #1
  96. 980 GOTO 1840
  97. 990 IF VB<>10 THEN 1000 ELSE PRINT CLS$:J=0:GOTO 2000
  98. 1000 IF VB<>11 THEN 1130
  99. 1010 IF NO<>10 THEN 280
  100. 1020 IF LC<>2 AND LC<>11 THEN PRINT"What button ?":GOTO 130
  101. 1030 IF LC=11 AND NOT TB THEN LET TB=-1:PRINT N2$:GOTO 130
  102. 1040 IF LC=11 AND TB THEN LET TB=0:PRINT N3$:GOTO 130
  103. 1050 X=12:GOSUB 2270:IF Y<>1 THEN 290
  104. 1060 X=24:GOSUB 2270:IF Y<>1 THEN 290
  105. 1070 IF NOT TB THEN PRINT N3$:GOTO 290
  106. 1080 IF NOT DR THEN PRINT N4$:GOTO 290
  107. 1090 GOTO 1990
  108. 1100 PRINT CLS$"H E L P ! ! !":PRINT
  109. 1110 PRINT"Roche soldiers are everywhere. I've been captured."+NL$+"I'm now a prisoner."+NL$+"Woe is me. . .
  110. 1120 GOTO 2030
  111. 1130 IF VB<>12 OR NO=0 THEN 1230
  112. 1140 IF BL=0 THEN PRINT"But I don't have any ammunition left.":GOTO 130
  113. 1150 X=13:GOSUB 2270:IF Y<>-1 THEN PRINT"But I'm not carrying a blaster.":GOTO 130
  114. 1160 X=NO:GOSUB 2270:IF Y=-1 THEN PRINT"I can't. I'm holding it.":GOTO 130
  115. 1170 IF NO=34 THEN PRINT"ZZZAP!":BL=BL-1:GOTO 130
  116. 1180 IF Y<>LC THEN PRINT"I don't see it.":GOTO 130
  117. 1190 FOR I=1 TO LO:IF OB(I,0)=NO THEN 1200 ELSE NEXT I:GOTO 280
  118. 1200 OB(I,1)=0:FOR I=1 TO 1:NEXT I:PRINT"ZZZAP the ";NO$(NO);" vapourized."
  119. 1210 BL=BL-1:IF BL=0 THEN PRINT"I'm out of ammunition."
  120. 1220 GOTO 130
  121. 1230 IF VB<>13 THEN 1310
  122. 1240 IF NO=0 THEN PRINT"Say what ?":GOTO 130
  123. 1250 X=14:GOSUB 2270
  124. 1260 IF Y<>-1 OR NO<>19 THEN PRINT"O.K.  ";NO$(NO):GOTO 130
  125. 1270 IF DR THEN 290
  126. 1280 DR=-1:PRINT"A voice comes over the P.A. System and says:"+NL$+"Openning flight deck doors"
  127. 1290 IF LC>2 AND LC<6 THEN PRINT NL$+"Yipes ! ! ! There's no air ! ! ! CROAK ...":END
  128. 1300 GOTO 130
  129. 1310 IF VB<>14 THEN 1450
  130. 1320 IF NO<>20 AND NO<>16 AND NO<>11 AND NO<>33 THEN 280
  131. 1330 IF NO=20 THEN 1420
  132. 1340 IF NO<>16 THEN 1380
  133. 1350 IF OB(6,1)=-1 THEN PRINT"Sorry. I'm not a map-maker":GOTO 130
  134. 1360 IF OB(6,1)=LC THEN PRINT"Try get map.":GOTO 130
  135. 1370 PRINT"It's not here.":GOTO 130
  136. 1380 X=NO:GOSUB 2270:IF Y<>LC AND Y<>-1 THEN 1370
  137. 1390 IF NO=11 THEN PRINT"It says: >> NEEDS TURBO <<"
  138. 1400 IF NO=33 THEN PRINT"It says: >> OUT OF ORDER <<"
  139. 1410 GOTO 130
  140. 1420 IF LC<>13 THEN PRINT"I don't see any.":GOTO 130
  141. 1430 PRINT:PRINT"It says on the wall,"+NL$+"   your mother's got a big nose"+NL$+"   KILROY made it here, too"+NL$+"   say security
  142. 1440 GOTO 130
  143. 1450 IF VB<>15 THEN 1520
  144. 1460 IF NO=0 THEN PRINT"What's a ";NO$(0);"?":GOTO 130
  145. 1470 IF NO<>22 THEN PRINT"Don't be ridiculous.":GOTO 130
  146. 1480 X=22:GOSUB 2270:IF Y<>-1 THEN PRINT"I'm not holding it.":GOTO 130
  147. 1490 FOR I=1 TO LO:IF OB(I,0)=22 THEN 1500 ELSE NEXT I:PRINT"I don't know where it is.":GOTO 130
  148. 1500 OB(I,1)=0:PRINT"Chump - Chump. Hummm, good."
  149. 1510 FOR I=1 TO 1:NEXT I:GOTO 130
  150. 1520 IF VB<>16 OR NO<>23 OR LC<>16 THEN 1560
  151. 1530 X=23:GOSUB 2270:IF Y<>-1 THEN PRINT M1$:GOTO 130
  152. 1540 OB(11,1)=0:OB(14,1)=16:CR=CR-1:PRINT M2$
  153. 1550 GOTO 130
  154. 1560 IF VB<>18 OR NO<>36 THEN 1600
  155. 1570 IF NO<>36 OR LC<>31 THEN 280
  156. 1580 X=17:GOSUB 2270:IF Y<>-1 THEN PRINT M3$:GOTO 130
  157. 1590 HE$(31)="":DJ=-1:PRINT M4$:GOTO 130
  158. 1600 IF VB<>19 OR NO=0 THEN 1710
  159. 1610 IF NO<>34 THEN PRINT"That's stubid!":GOTO 130
  160. 1620 IF LC<>35 THEN PRINT M5$:GOTO 130
  161. 1630 X=22:GOSUB 2270:IF Y<>-1 THEN PRINT M6$:GOTO 130
  162. 1640 IF NO=35 THEN PRINT M7$:GOTO 130
  163. 1650 IF NO<>34 THEN PRINT NO$(0);M8$:GOTO 130
  164. 1660 IF TC>MD THEN PRINT M9$:GOTO 130
  165. 1670 FOR I=1 TO LO:IF OB(I,0)=34 THEN 1680 ELSE NEXT I:GOTO 280
  166. 1680 K=I:FOR I=1 TO LO:IF OB(I,0)=22 THEN 1690 ELSE NEXT I:GOTO 280
  167. 1690 PRINT N0$:HE$(35)=""
  168. 1700 OB(K,1)=0:OB(I,1)=0:FOR I=1 TO 1:NEXT I:GOTO 130
  169. 1710 IF VB<>17 THEN 1730
  170. 1720 PRINT NO$(0):GOTO 130
  171. 1730 IF VB<>20 THEN 1820
  172. 1740 IF NO=0 THEN 280
  173. 1750 X=NO:GOSUB 2270:IF Y=-1 THEN PRINT"I'm carrying it. That's impossible":GOTO 130
  174. 1760 IF Y=LC THEN 1790
  175. 1770 IF NO<11 OR NO=19 OR NO=20 OR NO=30 THEN 280
  176. 1780 PRINT"I can't hit something I can't see.":GOTO 130
  177. 1790 IF NO=15 OR NO=34 THEN PRINT"I'd rather not. He might hit me back!":GOTO 130
  178. 1800 IF NO=35 THEN PRINT"That's not nice!":GOTO 130
  179. 1810 GOTO 290
  180. 1820 IF VB<>21 THEN 1830 ELSE PRINT"I'm not strong enough to kill anything.":GOTO 130
  181. 1830 GOTO 280
  182. 1840 PRINT CLS$;:PRINT DS$(LC):A$=""
  183. 1850 IF LC=35 THEN GF=10
  184. 1860 IF LC=7 THEN 1920
  185. 1870 K=0:FOR I=1 TO LO:IF OB(I,1)<>LC THEN 1900
  186. 1880 IF K=0 THEN K=1:PRINT:PRINT"Around me I see:":A$=OB$(I):GOTO 1900
  187. 1890 IF LEN(A$)+5+LEN(OB$(I))>SL THEN PRINT A$:LET A$=OB$(I) ELSE A$=A$+"   "+OB$(I)
  188. 1900 NEXT I
  189. 1910 IF A$<>"" THEN PRINT A$
  190. 1920 PRINT:PRINT"Obvious Directions are:-   ";:K=0
  191. 1930 FOR I=0 TO 5:IF DS(LC,I)=0 THEN 1960
  192. 1940 IF K<>0 THEN PRINT", ";
  193. 1950 PRINT NO$(I+1);:K=1
  194. 1960 NEXT I
  195. 1970 IF K=0 THEN PRINT"Unknown";
  196. 1980 PRINT".":PRINT STRING$(80,45):GOTO 130
  197. 1990 PRINT CLS$:GOSUB 2230
  198. 2000 IF J=0 THEN PRINT"We have failed our mission."+NL$+"The forces of Princess Leya will be conquered."
  199. 2010 IF J=SC THEN PRINT"We are heros."+NL$+"The forces of Princess Leya will conquer the evil Roche soldiers and freedom will prevail throughout the galaxy."
  200. 2020 IF J>0 AND J<SC THEN PRINT"We have helped the Forces of Princess Leya"+NL$+"defend the galaxy. Long live the Forces of Freedom!"
  201. 2030 PRINT 
  202. 2040 INPUT"Play again (Y or N)";A$:A$=LEFT$(A$,1)
  203. 2050 IF A$="Y" OR A$="y" THEN RUN ELSE END
  204. 2060 PRINT CLS$;"A voice booms out, ";CHR$(34);"Who goes there ?";CHR$(34)
  205. 2070 GOSUB 2130
  206. 2080 IF VB<>13 OR NO<>30 THEN 1100
  207. 2090 PRINT N1$
  208. 2100 GOSUB 2130
  209. 2110 X=31:GOSUB 2270:IF Y<>-1 THEN 1100
  210. 2120 IF VB<>17 OR NO<>31 THEN 1100 ELSE 1840
  211. 2130 INPUT"What should I do ";CM$
  212. 2140 VB$(0)="":NO$(0)="":VB=0:NO=0:IF LEN(CM$)=0 THEN RETURN
  213. 2150 FOR ZL=1 TO LEN(CM$):IF MID$(CM$,ZL,1)<>" " THEN VB$(0)=VB$(0)+MID$(CM$,ZL,1):NEXT ZL
  214. 2160 FOR ZL=1 TO LV:IF VB$(ZL)<>"" AND LEFT$(VB$(0),LEN(VB$(ZL)))=VB$(ZL) THEN VB=ZL:GOTO 2190
  215. 2170 NEXT ZL
  216. 2180 VB=0:NO$(0)=VB$(0):GOTO 2200
  217. 2190 IF LEN(VB$(0))+1>=LEN(CM$) THEN NO=0:RETURN ELSE NO$(0)=RIGHT$(CM$,LEN(CM$)-1-LEN(VB$(0)))
  218. 2200 FOR ZL=1 TO LN:IF NO$(ZL)<>"" AND LEFT$(NO$(0),LEN(NO$(ZL)))=NO$(ZL) THEN NO=ZL:GOTO 2220 ELSE NEXT ZL
  219. 2210 NO=0:RETURN
  220. 2220 FOR ZL=1 TO 1:NEXT ZL:RETURN
  221. 2230 J=0:FOR I=1 TO LO:IF OB(I,1)=1 THEN J=J+OB(I,2)
  222. 2240 NEXT I:PRINT"Out of a maximum of";SC;"points, you have";J
  223. 2250 IF J=0 THEN PRINT"We're not doing too good."
  224. 2260 RETURN
  225. 2270 FOR ZL=0 TO LO:IF OB(ZL,0)=X THEN Y=OB(ZL,1):GOTO 2280 ELSE NEXT ZL:Y=-99:RETURN
  226. 2280 FOR ZL=1 TO 1:NEXT ZL:RETURN
  227. 2290 A$=INKEY$:IF A$="" THEN 2290 ELSE RETURN
  228. 2310 SC=215
  229. 2330 VB$(1)="GO":VB$(2)="GET":VB$(3)="LOOK"
  230. 2340 VB$(4)="I":VB$(5)="SCORE":VB$(6)="DROP"
  231. 2350 VB$(7)="HELP":VB$(8)="SAVE":VB$(9)="LOAD":VB$(10)="QUIT"
  232. 2360 VB$(11)="PRESS":VB$(12)="SHOOT":VB$(13)="SAY"
  233. 2370 VB$(14)="READ":VB$(15)="EAT":VB$(16)="CSAVE"
  234. 2380 VB$(17)="SHOW":VB$(18)="OPEN":VB$(19)="FEED"
  235. 2390 VB$(20)="HIT":VB$(21)="KILL"
  236. 2400 REM
  237. 2410 NO$(1)="NORTH":NO$(2)="EAST":NO$(3)="SOUTH"
  238. 2420 NO$(4)="WEST":NO$(5)="UP":NO$(6)="DOWN"
  239. 2430 NO$(10)="BUTTON":NO$(11)="TAG":NO$(12)="FUEL"
  240. 2440 NO$(13)="BLASTER":NO$(14)="COMMUNICATOR":NO$(15)="GUARD"
  241. 2450 NO$(16)="MAP":NO$(17)="KEYS":NO$(18)="NECKLACE"
  242. 2460 NO$(19)="SESAME":NO$(20)="GRAFFITI"
  243. 2470 NO$(21)="CAPE":NO$(22)="HAMBURGER"
  244. 2480 NO$(23)="TAPE":NO$(24)="TURBO":NO$(25)="SCIENTIST":NO$(26)="PLANS":NO$(27)="SCHEMATIC":NO$(28)="DEVICE":NO$(29)="GUN"
  245. 2490 NO$(30)="SECURITY":NO$(31)="I.D.":NO$(32)="CRYSTALS":NO$(33)="SIGN":NO$(34)="ROBOT":NO$(35)="PRINCESS"
  246. 2500 NO$(36)="DOOR":NO$(37)="AMMUNITION"
  247. 2510 REM
  248. 2520 DS$(1)="I'm in the passenger & storage compartment of my space ship."+NL$+"There's an exit here to leave the ship.
  249. 2530 DATA 2,0,0,0,0,3
  250. 2540 DS$(2)="I'm in the cockpit of my space ship."+NL$+"A large Red button says >> PRESS TO BLAST OFF <<
  251. 2550 DATA 0,0,1,0,0,0
  252. 2560 DS$(3)="I'm standing next to my space ship which is located on a huge flight deck.
  253. 2570 DATA 18,0,4,0,1,0
  254. 2580 DS$(4)="I'm out on the flight deck of General Doom's battle cruiser.
  255. 2590 DATA 3,5,4,4,0,0
  256. 2600 DS$(5)=DS$(4):DATA 4,6,5,4,0,0
  257. 2610 DS$(6)="I'm in a hallway. There are doors on all sides."+NL$+"The door to the North says: >> CLOSED FOR THE DAY <<
  258. 2620 DATA 7,0,8,5,0,0
  259. 2630 DS$(7)="I'm in the supply depot and around me I see:"+NL$+"        All kinds of things.
  260. 2640 DATA 0,0,6,0,0,0
  261. 2650 DS$(8)="I'm at the end of one of the hallways."+NL$+"I can hear voices nearby. Sounds like guards.
  262. 2660 DATA 6,10,0,9,0,12
  263. 2670 DS$(9)="I'm in the strategy planning room.":DATA 11,8,0,0,0,0
  264. 2680 DS$(10)="I'm in the decontamination area.":DATA 0,14,0,8,0,0
  265. 2690 DS$(11)="This area is the Tractor Beam Control Room."+NL$+"A large sign warns:"+NL$+"            >> DO NOT PRESS ANY BUTTONS <<
  266. 2700 DATA 0,0,9,0,0,0
  267. 2710 DS$(12)="I'm in another hallway.  To the East is a restroom.
  268. 2720 DATA 15,13,0,0,8,0
  269. 2730 DS$(13)="This is what is commonly called, on Earth, the bathroom."+NL$+"There's graffiti written all over the wall."+NL$+"Pipes lead up through the ceiling.
  270. 2740 DATA 15,0,0,12,27,0
  271. 2750 DS$(14)="This appears to be an Interrogation Room.":DATA 0,0,0,10,0,0
  272. 2760 DS$(15)="I'm in a lounge.":DATA 0,0,13,12,0,0
  273. 2770 DS$(16)="This is a computer room. There's a Microbee in here."+NL$+"On the screen it says:"+NL$+"            >> CSAVE TAPE <<":DATA 17,0,18,0,0,0
  274. 2780 DS$(17)="I'm in a Testing Laboratory.":DATA 0,0,16,0,0,0
  275. 2790 DS$(18)="I'm in a hallway"+NL$+"A large arrow points East and says:"+NL$+"            >> TO THE VAULT <<
  276. 2800 DATA 16,25,3,19,0,0
  277. 2810 DS$(19)="This is the entrance to the Development Lab Section.":DATA 20,18,21,20,22,0
  278. 2820 DS$(20)="I'm in a long corridor. There are Laboratories all around me.":DATA 19,23,21,20,22,24
  279. 2830 DS$(21)="I'm in a Research Lab.":DATA 20,0,0,0,0,0
  280. 2840 DS$(22)="I'm lost!":DATA 22,22,22,22,22,20
  281. 2850 DS$(23)=DS$(21):DATA 0,0,0,20,0,0
  282. 2860 DS$(24)=DS$(21):DATA 0,0,0,0,20,0
  283. 2870 DS$(25)="I'm near the entrance to the Vault."+NL$+"     A sign here says:"+NL$+"           >> AUTHORIZED PERSONNEL ONLY <<    
  284. 2880 DATA 0,26,0,18,0,0
  285. 2890 DS$(26)="I'm in the Vault.":DATA 0,0,0,25,0,0
  286. 2900 DS$(27)="I'm in a pipe tunnel which leads in every direction.":DATA 28,27,27,27,27,13
  287. 2910 DS$(28)=DS$(27):DATA 29,29,29,29,30,29
  288. 2920 DS$(29)="I'm lost in a maze of pipes!":DATA 28,29,29,29,29,27
  289. 2930 DS$(30)="I'm in a pipe maze."+NL$+"Below me I think I can see the Jail.
  290. 2940 DATA 29,29,28,29,29,31
  291. 2950 DS$(31)="I'm in the Jail.":DATA 32,33,34,35,0,0
  292. 2960 DS$(32)="I'm in a Jail cell.":DATA 0,0,31,0,0,0
  293. 2970 DS$(33)=DS$(32):DATA 0,0,0,31,0,0
  294. 2980 DS$(34)=DS$(32):DATA 31,0,0,0,0,0
  295. 2990 DS$(35)="I'm at the security desk."+NL$+"To the North there's an elevator.":DATA 36,31,0,0,0,0
  296. 3000 DS$(36)="I'm in the elevator.":DATA 0,0,35,0,37,0
  297. 3010 DS$(37)=DS$(36):DATA 0,0,14,0,0,36
  298. 3020 REM
  299. 3030 OB$(1)="A TAG which says:"+NL$+"      >> NEEDS TURBO <<":DATA 11,5,0
  300. 3040 OB$(2)="ANTI-MATTER FUEL":DATA 12,5,5
  301. 3050 OB$(3)="BLASTER":DATA 13,7,0
  302. 3060 OB$(4)="COMMUNICATOR":DATA 14,9,0
  303. 3070 OB$(5)="A very surprised GUARD":DATA 15,9,0
  304. 3080 OB$(6)="A MAP of the SHIP":DATA 16,29,20
  305. 3090 OB$(7)="Some KEYS":DATA 17,9,0
  306. 3100 OB$(8)="A Shinestone NECKLACE":DATA 18,10,20
  307. 3110 OB$(9)="Princess Leya's CAPE":DATA 21,14,5
  308. 3120 OB$(10)="McDonald's HAMBURGER":DATA 22,15,0
  309. 3130 OB$(11)="A Cassette TAPE":DATA 23,7,0
  310. 3140 OB$(12)="A TURBOENCABULATOR ":DATA 24,17,5
  311. 3150 OB$(13)="An evil looking SCIENTIST":DATA 25,17,0
  312. 3160 OB$(14)="Secret attack PLANS":DATA 26,0,20
  313. 3170 OB$(15)="DEATH RAY SCHEMATIC":DATA 27,9,20
  314. 3180 OB$(16)="CLOAKING DEVICE":DATA 28,17,20
  315. 3190 OB$(17)="MICRO LASER GUN":DATA 29,24,20
  316. 3200 OB$(18)="I.D. Card":DATA 31,17,0
  317. 3210 OB$(19)="Malidium CRYSTALS (THE TREASURY!)":DATA 32,26,30
  318. 3220 OB$(20)="A sign which says:"+NL$+"        >> OUT OF ORDER <<":DATA 33,3,0 
  319. 3230 OB$(21)="ATTACK ROBOT":DATA 34,35,0
  320. 3240 OB$(22)="PRINCESS LEYA":DATA 35,34,50
  321. 3250 OB$(23)="AMMUNITION":DATA 37,7,0
  322. 3260 RESTORE
  323. 3270 FOR ZL=1 TO CL:FOR ZD=0 TO 5
  324. 3280 READ DS(ZL,ZD):NEXT:NEXT
  325. 3290 REM
  326. 3300 FOR ZL=1 TO LO:READ OB(ZL,0),OB(ZL,1),OB(ZL,2):NEXT ZL
  327. 3310 REM
  328. 3320 HE$(1)="I think we're supposed to leave the stuff here.
  329. 3330 HE$(7)="How about a BLASTER?
  330. 3340 HE$(2)="I wonder if we have enough fuel?
  331. 3350 HE$(9)="Try SHOOT GUARD?
  332. 3360 HE$(13)="It might be interesting to read the graffiti.
  333. 3370 HE$(17)="Try SHOOT SCIENTIST?
  334. 3380 HE$(22)="I'm as confused as you are !":HE$(29)=HE$(22)
  335. 3390 HE$(31)="It might help if we had some keys to open any locked doors.
  336. 3400 HE$(35)="Did you bring anything to eat?
  337. 3410 M0$="I can't go there. The door is locked.
  338. 3420 M1$="I'm NOT carrying any blank tape.
  339. 3430 M2$="The Microbee recorded something on the tape, and then it printed:"+NL$+"        >> ATTACK PLANS -- VERY SECRET <<
  340. 3440 M3$="I can't. I'm NOT carrying any keys.
  341. 3450 M4$="O.K.  The door to the jail cell is unlocked.
  342. 3460 M5$="There's no robot here.
  343. 3470 M6$="But, I don't have any hambergers.
  344. 3480 M7$="Chomp . . . Chomp  BURP !!"+NL$+"The Princess thanks you for a delicious meal.
  345. 3490 M8$=" doesn't eat hamberger.
  346. 3500 M9$="Nothing happened. The hamberger is cold you know!
  347. 3510 N0$="The attack robot eats the hamberger and disappears.
  348. 3520 N1$="I'm at the Identification Terminal, on the screen it says:  >> SHOW I.D. <<"
  349. 3530 N2$="The Tractor Beam is OFF.
  350. 3540 N3$="The Tractor Beam is ON.
  351. 3550 N4$="You forgot to open the flight deck doors.
  352. 3560 RETURN
  353. 3570 REM *** Heading ***
  354. 3580 PRINT CLS$:PRINT:PRINT
  355. 3590 PRINT TAB(19);" T H E   D O G - S T A R   M I S S I O N ":PRINT:PRINT
  356. 3600 PRINT"        A      DDDD   V    V   EEEEE  N     N  TTTTT  U    U  RRRR   EEEEE"
  357. 3610 PRINT"       A A     D   D  V    V   E      NN    N    T    U    U  R   R  E"
  358. 3620 PRINT"      AAAAA    D   D   V  V    EEE    N NN  N    T    U    U  RRRRR  EEE"
  359. 3630 PRINT"     A     A   D   D   V  V    E      N  NN N    T    U    U  R RR   E"
  360. 3640 PRINT"     A     A   DDDD     VV     EEEEE  N    NN    T    UUUUUU  R   R  EEEEE"
  361. 3650 PRINT:PRINT
  362. 3660 PRINT"                            By:  Lance Micklus."
  363. 3670 PRINT"                            -------------------"
  364. 3680 PRINT:PRINT"                  <Modified for the Microbee by A.Laughton>"
  365. 3690 PRINT:PRINT:PRINT"                         Press any key to start game!"
  366. 3700 Z$=INKEY$:IF Z$="" THEN 3700
  367. 3710 PRINT CLS$
  368. 3720 PRINT"                             The Dog-Star Mission."
  369. 3730 PRINT"                             ---------------------"
  370. 3740 PRINT:PRINT
  371. 3750 PRINT" In this adventure you are required to complete the Dog-Star Mission but along":PRINT:PRINT"                   your way you will encounter many problems."
  372. 3760 PRINT:PRINT"   This adventure will accept two word commands, and some one word commands,":PRINT
  373. 3770 PRINT"  such as LOOK, SCORE, HELP & I(nventory). You can also SAVE and LOAD a game.":PRINT
  374. 3780 PRINT"           GGGG  OOO   OOO  DDDD      L     U   U  CCCC K   K   ! ! !"
  375. 3790 PRINT"          G     O   O O   O D   D     L     U   U C     K KK    ! ! !"
  376. 3800 PRINT"          G  GG O   O O   O D   D     L     U   U C     KK      ! ! !"
  377. 3810 PRINT"          G   G O   O O   O D   D     L     U   U C     K KK"
  378. 3820 PRINT"           GGG   OOO   OOO  DDDD      LLLLL  UUU   CCCC K   K   ! ! !"
  379. 3830 PRINT:PRINT:PRINT:PRINT"                     Do you wish to restore a saved game?"
  380. 3840 Z$=INKEY$:IF Z$="Y" OR Z$="y" THEN 910
  381. 3850 IF Z$="N" OR Z$="n" THEN 120
  382. 3860 GOTO 3840
  383.