Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 100 DIM A(17,10),P(5),O1$(11),O2$(11),M$(27),T(5),ROOM$(17),IN$(11),TR(11)
- 110 REM ** **
- 120 REM ** FIRST ADVENTURE BY **
- 130 REM ** DAVID MENY **
- 140 REM ** **
- 150 REM ** ESCAPE FROM **
- 160 REM ** S.S.A.D.B. **
- 170 REM ** MAY 15TH, 1985 **
- 180 REM ** **
- 190 GOSUB 4230:REM INITIALIZE
- 200 LOCATE 21,1
- 210 PRINT "Escape From S.S.A.D.B, Version 1.0"
- 220 PRINT "Menco, Inc."
- 230 PRINT:GOSUB 3240:REM ROOM DESCRIPTION
- 240 GOSUB 1900:REM OBJECTS IN ROOM?
- 250 REM ** INPUT HANDLING **
- 260 KW=0
- 270 IF SIREN=1 AND SET=0 THEN MV=1:SET=1
- 280 IF SET=1 THEN MV=MV+1:IF MV=3 AND RO=6 AND BOX=0 THEN PRINT:PRINT "A worker comes running in and glances around. He sees you and calls the guards":PRINT "who take you away and torture you.":GOTO 3140
- 290 IF MV=3 AND RO=6 AND BOX=1 THEN PRINT:PRINT "A worker comes in and glances around. He glances around and not noticing":PRINT "anything, he heads to the balcony.":TR(11)=7
- 300 IF MV=3 THEN TR(11)=7
- 310 PRINT:INPUT ">",A$
- 320 IF A$="" THEN PRINT:PRINT "What?":GOTO 270
- 330 AS=ASC(A$)
- 340 IF AS<65 OR AS>90 THEN PRINT:PRINT "Capital letters please.":GOTO 270
- 350 M=LEN(A$):IF M<7 THEN A$=A$+" ":GOTO 350
- 360 B$=LEFT$(A$,3)
- 370 IF B$="INV" OR B$="I " THEN GOSUB 730:GOTO 270
- 380 IF B$="SCO" THEN GOSUB 820:GOTO 270
- 390 IF B$="QUI" OR B$="Q " THEN GOSUB 850:GOTO 270
- 400 IF B$="HEL" OR B$="CLU" THEN PRINT:PRINT "Sorry, there is no help for lost agents in this game.":GOTO 270
- 410 IF B$="HID" THEN GOSUB 2360:GOTO 270
- 420 IF B$="STA" THEN GOSUB 2410:GOTO 270
- 430 IF B$="LOO" OR B$="L " THEN GOTO 230
- 440 IF B$="N " THEN C$="N ":GOSUB 920:GOTO 270
- 450 IF B$="S " THEN C$="S ":GOSUB 920:GOTO 270
- 460 IF B$="E " THEN C$="E ":GOSUB 920:GOTO 270
- 470 IF B$="W " THEN C$="W ":GOSUB 920:GOTO 270
- 480 IF B$="U " THEN C$="U ":GOSUB 920:GOTO 270
- 490 IF B$="D " THEN C$="D ":GOSUB 920:GOTO 270
- 500 N=1
- 510 IF MID$(A$,N,1)=" " THEN C$=MID$(A$,N+1,3):IF LEFT$(C$,1)<>" " THEN 540 ELSE 530
- 520 IF N<M THEN N=N+1:GOTO 510
- 530 PRINT:PRINT "In that form, I don't know the word ";A$:GOTO 270
- 540 IF B$="GO " OR B$="MOV" OR B$="WAL" THEN KW=1:GOSUB 920:GOTO 270
- 550 IF B$="EXA" OR B$="SEA" THEN GOSUB 2590:GOTO 270
- 560 IF B$="TAK" OR B$="GET" THEN KW=1:GOSUB 1600:GOTO 270
- 570 IF B$="DRO" OR B$="PUT" THEN KW=1:GOSUB 1140:GOTO 270
- 580 IF B$="UNL" THEN KW=1:GOSUB 2110:GOTO 270
- 590 IF B$="LOC" THEN KW=1:GOSUB 2440:GOTO 270
- 600 IF B$="OPE" THEN KW=1:GOSUB 1280:GOTO 270
- 610 IF B$="CLO" THEN KW=1:GOSUB 2510:GOTO 270
- 620 IF B$="REA" THEN KW=1:GOSUB 1440:GOTO 270
- 630 IF B$="PUS" OR B$="PRE" THEN KW=1:GOSUB 2260:GOTO 270
- 640 IF B$="PUL" OR B$="UNP" THEN KW=1:GOSUB 2980:GOTO 270
- 650 IF B$="TYP" THEN KW=1:GOSUB 3030:GOTO 270
- 660 IF B$="POU" OR B$="SPR" THEN KW=1:GOSUB 2910:GOTO 270
- 670 IF B$="INS" THEN KW=1:GOSUB 1830:GOTO 270
- 680 IF B$="KIC" OR B$="HIT" THEN KW=1:GOSUB 1970:GOTO 270
- 690 IF B$="MIX" OR B$="COM" THEN KW=1:GOSUB 2800:GOTO 270
- 700 IF B$="THR" THEN KW=1:GOSUB 2190:GOTO 270
- 710 PRINT:PRINT "I don't know that word.":GOTO 270
- 720 REM **** BEGIN SUBROUTINES ****
- 730 REM ** INVENTORY **
- 740 PRINT:PRINT " You are carrying:"
- 750 PRINT
- 760 FOR I=1 TO 8
- 770 IF TR(I)=200 THEN PRINT " ";IN$(I):AADS=1
- 780 NEXT I
- 790 IF AADS<>1 THEN PRINT " nothing"
- 800 AADS=0
- 810 RETURN
- 820 REM ** SCORE **
- 830 PRINT:PRINT "Out of 200 points, you got ";SCORE" points."
- 840 RETURN
- 850 REM ** QUITING **
- 860 PRINT:PRINT "Out of 200 points, you got "SCORE" points."
- 870 PRINT
- 880 INPUT "Are you sure you want to quit";F$
- 890 IF F$="" THEN 870
- 900 IF F$="Y" OR F$="f" OR F$="YES" THEN END
- 910 PRINT:PRINT "Ok.":GOTO 270
- 920 REM ** MOVEMENT COMMAND **
- 930 C$=LEFT$(C$,1)
- 940 IF RO=10 AND GUARD=1 THEN PRINT:PRINT "As you try to leave the guard spies you and captures you. He alerts others":PRINT "and soon you are tortured and killed.":GOTO 3140
- 950 IF RO=9 AND C$="S" AND PLUG=0 THEN PRINT:PRINT "As you step into the record room, the camera spies you and alerts the guards.":PRINT "They take you away and torture you which eventually kills you.":GOTO 3140
- 960 IF RO=13 AND C$="S" AND TR(11)=16 THEN PRINT:PRINT "As you step into the missle site, a worker working on the MX-13 missle":PRINT "sees you and calls for guards. They take you away and torture you. You":PRINT "die in their hands.":GOTO 3140
- 970 IF RO=6 AND BOX=1 THEN PRINT:PRINT "You can't go that way while you are crouching in the box.":RETURN
- 980 IF RO=7 AND TR(11)=7 AND C$="W" THEN PRINT:PRINT "As you try to leave, the worker grabs you and calls for the guards. When the":PRINT "guards come, they take you away to be tortured. THE END!":GOTO 3140
- 990 IF C$="N" AND A(RO,1)=0 THEN PRINT:PRINT "You can't go that way.":RETURN
- 1000 IF C$="S" AND A(RO,2)=0 THEN PRINT:PRINT "You can't go that way.":RETURN
- 1010 IF C$="E" AND A(RO,3)=0 THEN PRINT:PRINT "You can't go that way.":RETURN
- 1020 IF C$="W" AND A(RO,4)=0 THEN PRINT:PRINT "You can't go that way.":RETURN
- 1030 IF C$="U" AND A(RO,5)=0 THEN PRINT:PRINT "You can't go that way.":RETURN
- 1040 IF C$="D" AND A(RO,6)=0 THEN PRINT:PRINT "You can't go that way.":RETURN
- 1050 IF C$="N" THEN RO=A(RO,1)
- 1060 IF C$="S" THEN RO=A(RO,2)
- 1070 IF C$="E" THEN RO=A(RO,3)
- 1080 IF C$="W" THEN RO=A(RO,4)
- 1090 IF C$="U" THEN RO=A(RO,5)
- 1100 IF C$="D" THEN RO=A(RO,6)
- 1110 IF RO=3 AND SOP1=0 THEN SCORE=SCORE+10:SOP1=1:GOSUB 3100
- 1120 IF RO=10 AND DSF=0 THEN SCORE=SCORE+30:DSF=1:GOSUB 3100
- 1130 RETURN 230
- 1140 REM ** DROP ROUTINE **
- 1150 FLAG=0:OBJECT=0
- 1160 PRINT
- 1170 FOR I=1 TO 8
- 1180 IF TR(I)=200 THEN FLAG=1
- 1190 NEXT I
- 1200 IF FLAG=0 THEN PRINT "You aren't carrying anything.":RETURN
- 1210 FOR I=1 TO 8
- 1220 IF C$=O1$(I) AND TR(I)=200 THEN OBJECT=I
- 1230 NEXT I
- 1240 IF OBJECT=0 THEN PRINT "You're not holding that item.":RETURN
- 1250 TR(OBJECT)=RO
- 1260 PRINT "Ok."
- 1270 RETURN
- 1280 REM ** OPEN ROUTINE **
- 1290 IF C$<>"DOO" AND C$<>"CAB" AND C$<>"VAU" THEN PRINT:PRINT "You can't open that.":RETURN
- 1300 IF C$<>"DOO" THEN 1360
- 1310 IF C$="DOO" AND DOOR=0 AND RO=15 THEN PRINT:PRINT "The door is locked.":RETURN
- 1320 IF C$="DOO" AND DOOR=1 AND RO=15 THEN PRINT:PRINT "The door swings open, revealing a passageway to the north.":DOOR=2:A(10,2)=15:A(15,1)=10:RETURN
- 1330 IF C$="DOO" AND DOOR=1 AND RO=10 THEN PRINT:PRINT "The door swings open, revealing a passageway to the south.":DOOR=2:A(10,2)=15:A(15,1)=10:RETURN
- 1340 IF C$="DOO" AND DOOR=2 AND RO=15 OR RO=10 THEN PRINT:PRINT "The door is already open.":RETURN
- 1350 PRINT:PRINT "You can't see a door here.":RETURN
- 1360 IF C$<>"VAU" THEN 1400
- 1370 IF C$="VAUL" AND VAULT=0 AND RO=1 THEN PRINT "You have to type in the correct code for the vault to open.":RETURN
- 1380 IF C$="VAUL" AND VAULT=1 AND RO=1 THEN PRINT "It's already open.":RETURN
- 1390 PRINT:PRINT "You can't see the vault here.":RETURN
- 1400 IF C$="CAB" AND CAB=0 AND RO=14 THEN PRINT "The cabinet is now open.":CAB=1:TR(7)=14:RETURN
- 1410 IF C$="CAB" AND CAB=1 AND RO=14 THEN PRINT "The cabinet is already open.":RETURN
- 1420 PRINT:PRINT "You can't see a cabinet here.":RETURN
- 1430 RETURN
- 1440 REM ** READ ROUTINE **
- 1450 FLAG=0
- 1460 PRINT
- 1470 IF C$<>"PLA" THEN 1500
- 1480 IF RO<>6 THEN PRINT "You don't see the plaque here.":RETURN
- 1490 PRINT "The plaque reads: 'Press in case of emergency.'":RETURN
- 1500 FOR I=1 TO 8
- 1510 IF C$=O1$(I) AND TR(I)=200 THEN FLAG=1
- 1520 NEXT
- 1530 IF FLAG=0 THEN PRINT "You don't have that item.":RETURN
- 1540 HH$=LEFT$(C$,3)
- 1550 IF HH$<>"NOT" AND HH$<>"NEW" AND HH$<>"SLI" AND HH$<>"FIL" THEN PRINT "You can't read that!":RETURN
- 1560 IF HH$="NEW" AND TR(2)=200 THEN PRINT "The newspaper reads: 'Signs of MX-13 missles being shipped to Russia...' It":PRINT "goes on but you can't make anymore out.":RETURN
- 1570 IF HH$="SLI" AND TR(6)=200 THEN PRINT "The slip reads: 'Porch needs fixing and new code is '971'.'":RETURN
- 1580 IF HH$="FIL" AND TR(7)=200 THEN PRINT "The file reads: 'TOP-SECRET Information on MX-13 and deployment.'":RETURN
- 1590 IF HH$="NOT" AND TR(3)=200 THEN PRINT "The note reads: 'New scientific breakthrough: analgesic and liquid in beaker":PRINT "makes great acid!'":RETURN
- 1600 REM ** GET ROUTINE **
- 1610 PRINT
- 1620 IF C$="GUA" THEN PRINT "You can't get that.":RETURN
- 1630 IF C$="WOR" THEN PRINT "You can't get that.":RETURN
- 1640 FLAG=0:HHG=0:OBJECT=0
- 1650 FOR I=1 TO 8
- 1660 IF TR(I)=200 THEN HHG=HHG+1
- 1670 NEXT
- 1680 IF HHG>=6 THEN PRINT "You can't carry anymore.":RETURN
- 1690 FOR I=1 TO 8
- 1700 IF TR(I)=RO OR TR(2)=220 THEN FLAG=1
- 1710 NEXT I
- 1720 IF FLAG=0 THEN PRINT "There is nothing here to pick up.":RETURN
- 1730 IF TR(2)=220 AND C$="NEW" AND TR(4)=220 THEN OBJECT=2:INSERT=0:TR(4)=15:GOTO 1790
- 1740 IF TR(2)=220 AND C$="NEW" THEN OBJECT=2:INSERT=0:GOTO 1790
- 1750 FOR I=1 TO 8
- 1760 IF C$=O1$(I) AND TR(I)=RO THEN OBJECT=I
- 1770 NEXT
- 1780 IF OBJECT=0 THEN PRINT "I don't see that object here.":RETURN
- 1790 TR(OBJECT)=200
- 1800 PRINT "Ok.":IF TR(7)=200 AND SOP=0 THEN SCORE=SCORE+50:SOP=1:GOSUB 3100
- 1810 IF OBJECT=4 AND DGF=0 THEN SCORE=SCORE+20:DGF=1:GOSUB 3100
- 1820 RETURN
- 1830 REM ** INSERT ROUTINE **
- 1840 IF C$<>"NEW" THEN PRINT:PRINT "You can't insert that.":RETURN
- 1850 INPUT " Under what";F$:F$=LEFT$(F$,3)
- 1860 IF F$<>"DOO" THEN PRINT:PRINT "You can't insert the newspaper under that.":RETURN
- 1870 IF RO<>15 THEN PRINT:PRINT "You can't see a door here.":RETURN
- 1880 PRINT:PRINT "Ok.":INSERT=1:TR(2)=220
- 1890 RETURN
- 1900 REM ** OBJECTS IN ROOM? **
- 1910 PRINT
- 1920 FOR I=1 TO 11
- 1930 IF TR(I)=RO THEN PRINT O2$(I)
- 1940 NEXT I
- 1950 RETURN
- 1960 END
- 1970 REM ** HIT ROUTINE **
- 1980 PRINT
- 1990 IF RO<>15 AND RO<>7 THEN PRINT "I can't use that word here.":RETURN
- 2000 IF C$<>"DOO" AND C$<>"WOR" THEN PRINT "You can't hit that.":RETURN
- 2010 IF C$="WOR" THEN GOTO 2080
- 2020 IF RO=15 AND C$="DOO" AND KEE=0 THEN PRINT "You hear a sound from the other sound of the door.":KEE=1:GOTO 2040
- 2030 IF RO=15 AND C$="DOO" AND KEE=1 THEN PRINT "It doesn't work this time.":RETURN
- 2040 IF INSERT=0 THEN PRINT:PRINT "Sorry, because of that last action, there is no way for you to proceed.":GOTO 3140
- 2050 IF INSERT=1 THEN PRINT:PRINT "There is now something on the newspaper."
- 2060 TR(4)=220
- 2070 RETURN
- 2080 IF RO=7 AND C$="WOR" AND WORKER=0 THEN PRINT "The worker falls over the porch, yelling. As he falls, something falls out":PRINT "of the worker's pocket":TR(8)=7:TR(11)=255:WORKER=1:RETURN
- 2090 IF RO=7 AND C$="WOR" AND WORKER=1 THEN PRINT "The worker is dead, because of you!":RETURN
- 2100 RETURN
- 2110 REM ** UNLOCK ROUTINE **
- 2120 PRINT
- 2130 IF RO<>15 AND RO<>10 THEN PRINT "I can't use that word here.":RETURN
- 2140 IF C$<>"DOO" THEN PRINT "I can't unlock that.":RETURN
- 2150 IF TR(4)<>200 THEN PRINT "You have nothing to unlock the door with.":RETURN
- 2160 IF DOOR=0 THEN PRINT "The door is now unlocked.":DOOR=1:GOTO 2180
- 2170 IF DOOR=1 OR DOOR=2 THEN PRINT "The door is already unlocked."
- 2180 RETURN
- 2190 REM ** THROW ROUTINE **
- 2200 IF RO<>10 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 2210 IF C$<>"BRI" THEN PRINT:PRINT "You can't throw that.":RETURN
- 2220 INPUT " At what";F$:F$=LEFT$(F$,3)
- 2230 IF F$="GUA" AND GUARD=1 THEN PRINT:PRINT "You hit the guard in the back of the head with the brick and he becomes":PRINT "unconsicous.":TR(9)=255:TR(10)=10:GUARD=0:TR(1)=10:SCORE=SCORE+20:GOSUB 3100:RETURN
- 2240 IF F$="GUA" AND GUARD=0 THEN PRINT:PRINT "The guard is already unconsicous.":RETURN
- 2250 PRINT "You can't throw the brick at that.":RETURN
- 2260 REM ** PUSH ROUTINE **
- 2270 IF RO<>6 AND RO<>11 AND RO<>12 AND RO<>13 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 2280 PRINT
- 2290 IF C$="ONE" THEN PRINT "The elevator doors close...":FOR I=1 TO 100:NEXT:PRINT "Then they open....":RO=11:RETURN
- 2300 IF C$="TWO" THEN PRINT "The elevator doors close...":FOR I=1 TO 100:NEXT:PRINT "Then they open....":RO=12:RETURN
- 2310 IF C$="THR" THEN PRINT "The elevator doors close...":FOR I=1 TO 100:NEXT:PRINT "Then they open....":RO=13:RETURN
- 2320 IF C$="BUT" AND RO=6 AND GHT=0 THEN PRINT "A siren sounds and a worker will be in here any minute. The button goes in so":PRINT "you can't press it again.":SIREN=1::GHT=1:RETURN
- 2330 IF C$="BUT" AND RO=6 AND GHT=1 THEN PRINT "You can't push the button again.":RETURN
- 2340 PRINT "You can't push that.":RETURN
- 2350 RETURN
- 2360 REM ** HIDE ROUTINE **
- 2370 IF RO<>6 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 2380 INPUT " In what";F$:F$=LEFT$(F$,3)
- 2390 IF F$="BOX" THEN PRINT:PRINT "Ok, you are now crouching in the box.":BOX=1:RETURN
- 2400 PRINT:PRINT "You can't hide in there.":RETURN
- 2410 REM ** STAND ROUTINE **
- 2420 IF BOX=0 THEN PRINT:PRINT "You are already standing.":RETURN
- 2430 IF BOX=1 THEN PRINT:PRINT "Ok, you are now standing outside the box.":BOX=0:RETURN
- 2440 REM ** LOCK ROUTINE **
- 2450 IF RO<>10 AND RO<>15 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 2460 IF C$<>"DOO" THEN PRINT:PRINT "You can't lock that.":RETURN
- 2470 IF TR(4)<>200 THEN PRINT:PRINT "You have nothing to lock the door with.":RETURN
- 2480 IF DOOR=0 THEN PRINT:PRINT "The door is already locked.":RETURN
- 2490 IF DOOR=1 OR DOOR=2 THEN PRINT:PRINT "Ok, the door is now closed and locked.":DOOR=0:A(15,1)=0:A(10,2)=0:RETURN
- 2500 RETURN
- 2510 REM ** CLOSE ROUTINE **
- 2520 IF C$<>"DOO" AND C$<>"CAB" THEN PRINT:PRINT "You can't close that.":RETURN
- 2530 IF C$="DOO" AND DOOR=2 AND RO=15 THEN PRINT:PRINT "The door is now closed.":DOOR=1:A(10,2)=0:A(15,1)=0:RETURN
- 2540 IF C$="DOO" AND DOOR=2 AND RO=10 THEN PRINT:PRINT "The door is now closed.":DOOR=1:A(15,1)=0:A(10,2)=0:RETURN
- 2550 IF C$="DOO" AND DOOR=0 OR DOOR=1 AND RO=10 OR RO=15 THEN PRINT:PRINT "The door is already closed.":RETURN
- 2560 IF C$="CAB" AND CAB=1 AND RO=14 THEN PRINT:PRINT "The cabinet is now closed.":RETURN
- 2570 IF C$="CAB" AND CAB=0 AND RO=14 THEN PRINT:PRINT "The cabinet is already closed.":RETURN
- 2580 PRINT "You can't close that here.":RETURN
- 2590 REM ** EXAMINE ROUTINE **
- 2600 PRINT
- 2610 IF C$="DOO" AND RO=15 OR RO=10 THEN PRINT "The large, wooden door has a keyhole and a small space below it. Through":PRINT "the keyhole you can see a key, unreachable from this side.":RETURN
- 2620 IF C$="BRI" AND TR(1)=200 THEN PRINT "The brick is just a normal, heavy brick.":RETURN
- 2630 IF C$="NEW" AND TR(2)=200 THEN PRINT "The newspaper just has some readable writing on it.":RETURN
- 2640 IF C$="NOT" AND TR(3)=200 THEN PRINT "The note just has some writing on it.":RETURN
- 2650 IF C$="KEY" AND TR(4)=200 THEN PRINT "I see nothing special about that.":RETURN
- 2660 IF C$="BEA" AND TR(5)=200 THEN PRINT "I see nothing special about that.":RETURN
- 2670 IF C$="SLI" AND TR(6)=200 THEN PRINT "The slip of paper just has some writing on it.":RETURN
- 2680 IF C$="FIL" AND TR(7)=200 THEN PRINT "The file contains top-secret information.":RETURN
- 2690 IF C$="ASP" AND TR(8)=200 THEN PRINT "The aspirin has 'BUFFERIN' on it.":RETURN
- 2700 IF C$="GUA" AND TR(9)=RO THEN PRINT "The guard is a hard working employee of the Russians.":RETURN
- 2710 IF C$="GUA" AND TR(10)=RO THEN PRINT "The guard is unconsicous.":RETURN
- 2720 IF C$="WOR" AND TR(11)=RO THEN PRINT "The worker has something in his back pocket.":RETURN
- 2730 IF C$="PLA" AND RO=6 THEN PRINT "The plaque has writing on it.":RETURN
- 2740 IF C$="BOX" AND RO=6 THEN PRINT "The box is big enough for you to HIDE in it.":RETURN
- 2750 IF C$="CAB" AND RO=14 AND CAB=1 THEN PRINT "The cabinet is open.":RETURN
- 2760 IF C$="CAB" AND RO=14 AND CAB=0 THEN PRINT "The cabinet is closed.":RETURN
- 2770 IF C$="PLU" AND RO=2 AND PLUG=0 THEN PRINT "The plug is connected to an outlet.":RETURN
- 2780 IF C$="PLU" AND RO=2 AND PLUG=1 THEN PRINT "The plug is not connected to an outlet.":RETURN
- 2790 PRINT "I can't examine that now.":RETURN
- 2800 REM ** MIX ROUTINE **
- 2810 IF C$<>"ASP" AND C$<>"BEA" THEN PRINT:PRINT "I can't mix that.":RETURN
- 2820 IF C$="BEA" THEN GOTO 2870
- 2830 IF C$="ASP" AND TR(8)=200 THEN INPUT " In what";F$:F$=LEFT$(F$,3)
- 2840 IF F$="BEA" AND TR(5)=200 THEN PRINT:PRINT "The beaker begins to bubble and inside there is an acidy solution.":TR(8)=255:BEAKER=1:RETURN
- 2850 IF F$="BEA" THEN PRINT:PRINT "You don't have the beaker.":RETURN
- 2860 PRINT:PRINT "You can't mix the aspirin with that.":RETURN
- 2870 INPUT " With what";F$:F$=LEFT$(F$,3)
- 2880 IF F$="ASP" AND TR(8)=200 THEN PRINT:PRINT "The beaker begins to bubble and inside there is an acidy solution.":BEAKER=1:TR(8)=255:RETURN
- 2890 IF F$="ASP" THEN PRINT:PRINT "You don't have the aspirin.":RETURN
- 2900 PRINT:PRINT "You can't mix that with the beaker.":RETURN
- 2910 REM ** POUR ROUTINE **
- 2920 PRINT
- 2930 IF RO<>8 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 2940 IF C$="BEA" OR C$="LIQ" AND BEAKER=0 THEN PRINT:PRINT "The liquid is stuck inside (for now).":RETURN
- 2950 IF C$="BEA" OR C$="LIQ" AND BEAKER=1 THEN INPUT " On what";F$:F$=LEFT$(F$,3)
- 2960 IF F$="WAL" OR F$="NOR" THEN PRINT:PRINT "The wall to the north, becomes a giant hole, allowing you to go that way.":A(8,1)=3:TR(5)=255:RETURN
- 2970 PRINT:PRINT "You can't pour the liquid on that.":RETURN
- 2980 REM ** PULL ROUTINE **
- 2990 IF RO<>2 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 3000 IF C$<>"PLU" THEN PRINT:PRINT "You can't pull that.":RETURN
- 3010 IF PLUG=1 THEN PRINT:PRINT "The plug is already unplugged.":RETURN
- 3020 PRINT "Ok, the plug is now unplugged.":PLUG=1:RETURN
- 3030 REM ** TYPE ROUTINE **
- 3040 IF RO<>1 THEN PRINT:PRINT "I can't use that word here.":RETURN
- 3050 IF C$<>"971" THEN PRINT:PRINT "You type in the wrong code and a loud siren sounds. Guards rush in and take":PRINT "you away. You DON'T return.":GOTO 3100
- 3060 PRINT:PRINT "Congradulations! You got the right code. You rush outside to find that you are":PRINT "inside a large sewer system. But, above you see a man hole, so you climb out.":PRINT "You rush to tell the police your story."
- 3070 IF TR(7)=200 THEN PRINT "You show the police the file and you are rewarded with a hero's reward!":SCORE=SCORE+70:GOSUB 3100:GOTO 3140
- 3080 PRINT "You have no proof to show the police, so they lock you up. In exactly five":PRINT "days, the Soviets launch their supply of MX-13 missles on the U.S. All":PRINT "life as you know it, stops to exist. The human race is never heard of again."
- 3090 GOTO 3140
- 3100 REM ** SCORE ROUTINE **
- 3110 COLOR 0,7
- 3120 LOCATE 25,40:PRINT "Score:";SCORE
- 3130 COLOR 7,0:RETURN
- 3140 REM ** SCORING **
- 3150 PRINT:PRINT "Out of 200 points, you got ";SCORE;" points."
- 3160 PRINT:INPUT "Would you like to play again";F$:F$=LEFT$(F$,1)
- 3170 IF F$="y" OR F$="Y" THEN GOTO 3210
- 3180 IF F$="n" OR F$="N" THEN PRINT:PRINT "Ok.":PRINT:PRINT:END
- 3190 PRINT "Please answer the qusetion."
- 3200 GOTO 3160
- 3210 RO=17:SOP=0:SOP1=0:DOOR=0:KEE=0:SCORE=0:GUARD=0:BOX=0:BEAKER=0:DSF=0:DGF=0
- 3220 TR(1)=17:TR(2)=17:TR(3)=8:TR(4)=255:TR(5)=8:TR(6)=5:TR(7)=255:TR(8)=16
- 3230 CLS:GOTO 200
- 3240 REM ** ROOM DESCRIPTIONS **
- 3250 COLOR 0,7
- 3260 LOCATE 25,1:PRINT " "
- 3270 LOCATE 25,1:PRINT ROOM$(RO)
- 3280 LOCATE 25,40:PRINT "Score:";SCORE
- 3290 COLOR 7,0
- 3300 ON RO GOSUB 3320,3380,3450,3500,3550,3600,3660,3700,3750,3790,3840,3890,3940,3990,4040,4100,4160
- 3310 RETURN
- 3320 REM ROOM ONE
- 3330 PRINT "Vault Room"
- 3340 PRINT "You are inside a very large room which is the exit to the outside world. But"
- 3350 PRINT "before every person gets outside, they must pass through a giant, metal vault"
- 3360 PRINT "which has a large keyboard attached to it."
- 3370 RETURN
- 3380 REM ROOM TWO
- 3390 PRINT "Maintence Room"
- 3400 PRINT "This is a room where maintence equipment is stored. There are many brooms,"
- 3410 PRINT "dustpans and mops around here. A dark passage way leads to the south, while"
- 3420 PRINT "a lighted way leads to the east. There is a plug on the east wall connect"
- 3430 PRINT "to an outlet."
- 3440 RETURN
- 3450 REM ROOM THREE
- 3460 PRINT "Secret Room"
- 3470 PRINT "You are in a secret room behind the base labrotory. The hole in the south"
- 3480 PRINT "wall is smaller on this side, preventing you from going south."
- 3490 RETURN
- 3500 REM ROOM FOUR
- 3510 PRINT "Hallway"
- 3520 PRINT "This is a non descript hallway running north and south."
- 3530 RETURN
- 3540 RETURN
- 3550 REM ROOM FIVE
- 3560 PRINT "Repair Closet"
- 3570 PRINT "This is a repair closet where hammers, nails and screwdrivers are kept. The"
- 3580 PRINT "only exits is the way you came."
- 3590 RETURN
- 3600 REM ROOM SIX
- 3610 PRINT "Storage Room";:IF BOX=1 THEN PRINT " (crouching in the box)"
- 3620 PRINT "You are in a storage room where miscellanous equipment is stored. There is a"
- 3630 PRINT "large, heavy box in the south corner. To the east is a balcony. Also on the"
- 3640 PRINT "north wall, there is a button with a small plaque beneath it."
- 3650 RETURN
- 3660 REM ROOM SEVEN
- 3670 PRINT "Balcony"
- 3680 PRINT "This is an old, crumbling balcony."
- 3690 RETURN
- 3700 REM ROOM EIGHT
- 3710 PRINT "Labrotory"
- 3720 PRINT "You are in a scientific labrotory where great experiments are done. The usual"
- 3730 PRINT "array of supplies and equipment is here. The north wall is a bit less solid":PRINT "then the others."
- 3740 RETURN
- 3750 REM ROOM NINE
- 3760 PRINT "Hallway"
- 3770 PRINT "This is a very non-descript hallway running east to west."
- 3780 RETURN
- 3790 REM ROOM TEN
- 3800 PRINT "Guard Room"
- 3810 PRINT "You are in a guard room, where a guard is supposed to guard the cell to the"
- 3820 PRINT "south. Passageways run off in three directions."
- 3830 RETURN
- 3840 REM ROOM ELEVEN
- 3850 PRINT "Elevator"
- 3860 PRINT "This is an elevator connecting all three levels of the base. There is a panel"
- 3870 PRINT "here with three buttons labeled 1,2 and 3."
- 3880 RETURN
- 3890 REM ROOM TWELVE
- 3900 PRINT "Elevator"
- 3910 PRINT "This is an elevator connecting all three levels of the base. There is a panel"
- 3920 PRINT "here with three buttons labeled 1,2 and 3."
- 3930 RETURN
- 3940 REM ROOM THIRTEEN
- 3950 PRINT "Elevator"
- 3960 PRINT "This is an elevator connecting all three levels of the base. There is a panel"
- 3970 PRINT "here with three buttons labeled 1,2 and 3."
- 3980 RETURN
- 3990 REM ROOM FOURTEEN
- 4000 PRINT "Record Room"
- 4010 PRINT "This is a record room where top secret information is kept. There is a file"
- 4020 PRINT "cabinet on the west wall and a camera on the west wall near the ceiling."
- 4030 RETURN
- 4040 REM ROOM FIFTEEN
- 4050 PRINT "North Cell"
- 4060 PRINT "This is a north cell where top security prisoners are kept. There is a"
- 4070 PRINT "large, wooden door on the north wall. To the south a light can be seen."
- 4080 IF INSERT=1 THEN PRINT "Under the door, you can see a newspaper."
- 4090 RETURN
- 4100 REM ROOM SIXTEEN
- 4110 PRINT "Missle site"
- 4120 PRINT "This is a large room in the shape of a missle silo, where a very important"
- 4130 PRINT "missle is kept. The rounded ceiling is partly open, awaiting the preparation"
- 4140 PRINT "of the MX-13, being kept in the center of the room."
- 4150 RETURN
- 4160 REM ROOM SEVENTEEN
- 4170 PRINT "South Cell"
- 4180 PRINT "You are in a cell where prisoners are kept. The second part of this two room"
- 4190 PRINT "cell is to the north while a crack in the ceiling is letting in a large amount"
- 4200 PRINT "of light."
- 4210 RETURN
- 4220 END
- 4230 REM ** INITIALIZE **
- 4240 CLS:KEY OFF:PRINT "Please wait while I set the adventure..."
- 4250 SCORE=0:RO=17:GUARD=1:FLAG=0:KEE=0:DOOR=0
- 4260 A(15,7)=99:REM PROBLEM DOOR 1
- 4270 A(8,7)=100:REM PROBLEM DOOR 2
- 4280 FOR X=1 TO 17
- 4290 FOR Y=1 TO 6
- 4300 READ A(X,Y)
- 4310 NEXT Y
- 4320 NEXT X
- 4330 FOR X=1 TO 11
- 4340 READ O1$(X),O2$(X),TR(X),IN$(X)
- 4350 NEXT X
- 4360 FOR I=1 TO 17
- 4370 READ ROOM$(I)
- 4380 NEXT I
- 4390 RETURN
- 4400 REM ** ROOM DATA **
- 4410 DATA 0,4,0,0,0,0:REM ROOM 1
- 4420 DATA 0,8,3,0,0,0:REM ROOM 2
- 4430 DATA 0,0,0,2,0,0:REM ROOM 3
- 4440 DATA 1,10,5,0,0,0:REM ROOM 4
- 4450 DATA 0,0,0,4,0,0:REM ROOM 5
- 4460 DATA 0,12,7,0,0,0:REM ROOM 6
- 4470 DATA 0,0,0,6,0,0:REM ROOM 7
- 4480 DATA 0,0,9,0,0,0:REM ROOM 8
- 4490 DATA 0,14,10,8,0,0:REM ROOM 9
- 4500 DATA 4,0,11,9,0,0:REM ROOM 10
- 4510 DATA 0,0,0,10,0,0:REM ROOM 11
- 4520 DATA 6,0,0,0,0,0:REM ROOM 12
- 4530 DATA 0,16,0,0,0,0:REM ROOM 13
- 4540 DATA 9,0,0,0,0,0:REM ROOM 14
- 4550 DATA 0,17,0,0,0,0:REM ROOM 15
- 4560 DATA 13,0,0,0,0,0:REM ROOM 16
- 4570 DATA 15,0,0,0,0,0:REM ROOM 17
- 4580 DATA "BRI","There is a brick on the floor near you.",17,"a brick"
- 4590 DATA "NEW","On the floor, there is an old newspaper.",17,"a newspaper"
- 4600 DATA "NOT","There is a note laying nearby.",8,"a note"
- 4610 DATA "KEY","There is a shining key here.",255,"a key"
- 4620 DATA "BEA","There is a scientific beaker full of liquid near you.",8,"a beaker full of liquid"
- 4630 DATA "SLI","There is a slip of paper lying here.",5,"a slip"
- 4640 DATA "FIL","A file containg important information is here.",255,"a file"
- 4650 DATA "ASP","There is a aspirin here.",255,"an aspirin"
- 4660 DATA "GUA","There is an alert guard here.",10,""
- 4670 DATA "GUA","There is an unconsicous guard here.",255,""
- 4680 DATA "WOR","There is a missle worker here.",16,""
- 4690 DATA Vault Room,Maintence Room,Secret Room,Hallway,Repair Closet
- 4700 DATA Storage Room,Balcony,Labrotory,Hallway,Guard Room,Elevator
- 4710 DATA Elevator,Elevator,Record Room,North Cell,Missle Site
- 4720 DATA South Cell
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement