home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
commodore-users-of-norman
/
CUON_14_(11-1984).d64
/
mars
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2019-04-13
|
6KB
|
164 lines
100 DIMD$(18),O$(54),L(48),P(18,6):L=1:L2=1:FORX=1TO48:PRINT:NEXT
110 FORX=1TO18:READD$(X):NEXT
120 DATACONTROL ROOM,ENGINE ROOM,BARREN FIELD,MOAT
130 DATAPLAZA,ANCIENT TEMPLE,DRY WELL,DESERTED ROOM,GARDEN
150 DATAOBSERVATORY,KITCHEN,MAZE OF HALLS,DANK CELLAR,SECRET PASSAGE
170 DATAXPLT'S SCENT SHOP,MARTIAN HABITAT,LEDGE,SANDSLED
180 FORX=1TO54:READO$(X):O$=O$+LEFT$(O$(X),2)
190 IFX>6THENREADL(X-6)
200 NEXT:DATANORTH,SOUTH,EAST,WEST,UP,DOWN
210 DATANETS,2,FASTGRO,20,HOLY GRAIL,5,SEEDS,20
220 DATAALCOHOL,20,BRASS TUBING,13,FLUTE PLAYER STATUE,3
230 DATAGOLD BARS,13,TORCH,6
240 DATAINJECTOR PUMP,7,HARMONICA,20,LIGHTER,20,SNEAKERS,19,TABLE,15
250 DATAHELMET,20,MARTIAN,20,TIMEPIECE,19,MATERIALS FOR STILL,19
270 DATAJEWELED CLUB,18,OXYBOTTLE,19
280 DATAAIR ROCKS,3,FLASKS,15,TEXTBOOK,1,CRATES-CLOSED,2
290 DATATRAPDOOR-OPEN,20,MIRROR ON WALL,8
300 DATAROPE,17,SIGN,5,RUG,8,WATER,4,ORGAN,8,FIRE,20
310 DATA(SIGN) USE FERTILIZER,9
320 DATABUTTON-RED PUSH TYPE,1,SANDSLED,3,OVEN,11,KETTLE,11
330 DATACONTROL PANEL,1,RACK-SAYS PLACE INJECTOR HERE,2
340 DATALOW-OX WARNING ON,2,RECHARGING STATION,2,STATUE,6
350 DATARAMP,7,LOCKER,2,DRY WELL,6,VIEWPORT,1,(SIGN)BRING FUEL HERE,2
370 FORY=1TO18:FORX=1TO6:READP(Y,X):NEXTX,Y:DATAPOCKETS,20
380 DATA,,,,,2,,,3,,1,,4,4,5,2,,,3,3,4,4,4,4
390 DATA6,15,8,3,,,,5,9,,,,,,12,,,
400 DATA,,,5,,,,,,6,,,,,,17,
410 DATA14,,16,,,,,,,,,,,,,12,,,
420 DATA,,,10,,8,5,,,,16,,11,,,,,15
430 DATA,,10,,,,,,,,,3
440 W$="GOTALODRHIOPTILIUNPUPL"
450 GOTO760
460 IFL=12THENFORX=1TO6:P(12,X)=0:NEXT:P(12,INT(2*RND(8))+1)=13
465 IFL(15)<>0THENL(30)=4
470 P(12,(INT(RND(8)*2)+3))=7:IFL=2THENO=0
480 IFL(4)<>11ORL(6)<>11ORL(32)<>11ORL(30)<>11ORGR=0THEN500
490 O$(43)="STILL":IFL(5)=20THENL(5)=11
500 PRINT:PRINT"TELL ME WHAT TO DO":INPUTA$:PRINT:B$="":FORX=1TOLEN(A$)
510 IFMID$(A$,X,1)=" "ANDLEN(A$)>X+1THENB$=MID$(A$,X+1,2)
520 NEXT:F=0:S=0:GOSUB1660
530 IFA$="SM"ORA$="BR"THENA$="HI"
540 L2=L:IFB$="TU"THENB$="BR"
550 IFA$="RE"THENA$="LO"
560 IFB$="WH"THENB$="SE"
570 IFA$="GE"ORA$="GR"THENA$="TA"
580 IFB$="CL"THENB$="JE"
590 IFB$="GR"THENB$="HO"
600 G=G+1:IFG<60ORRND(8)<.9ORL(16)<>20THEN630
610 X=INT(RND(8)*31):IFL(X)<>0ANDL(X)<>20THENL(X)=INT(RND(8)*18)+1
620 PRINT"I HEAR A FAINT RUSTLING SOUND"
630 IFRND(8)>.98ANDL(16)=20THENPRINT"I THINK I'M BEING WATCHED!"
640 IFL(4)=9ANDL(30)=9ANDL(2)=9THENGR=1:O$(10)="WHEAT":L(30)=4
650 FORX=1TOLEN(W$)STEP2:IFMID$(W$,X,2)=A$THENF=(X+1)/2
660 NEXT:FORX=1TOLEN(O$)STEP2:IFMID$(O$,X,2)=B$THENS=(X+1)/2
670 NEXT:IFA$="IN"THEN1030
680 IFM=4ANDF<>2THENM=0:PRINT:PRINT"HE LEFT!":L(16)=20:PRINT
690 IFL>2THENO=O+1:IFO>50THENPRINT"LOW OXYGEN WARNING----RECHARGE"
700 IFL>2ANDL(20)<>0THENO=O+7
710 IFO>63ANDL>2THENPRINT"GASP, GASP, I DIED FROM LACK OF AIR":END
720 IFF<1THENPRINT"HUH??":GOTO460
730 ONF-1GOTO820,1060,1230,1390,1460,1490,1530,1590,1600,1680
740 IFS<1ORS>6ORL=6ANDS=4THEN1270
750 IFP(L,S)>0THENL=P(L,S):L2=L
760 PRINT"I AM IN - ":PRINTD$(L):Y=0
770 IFLI=0AND(L=7ORL=13ORL=14)THENPRINT"IT'S DARK. CAN'T SEE!":GOTO460
780 PRINT"I SEE ":FORX=1TO47:IFL(X)=L2THENPRINT"*"O$(X+6):Y=Y+1
790 NEXT:PRINT:PRINT:IFY=0THENPRINT"NOTHING":PRINT
800 PRINT"OBVIOUS EXITS ARE-":FORX=1TO6:IFP(L,X)>0THENPRINTO$(X);"*";
810 NEXT:PRINT:GOTO460
820 IFS<6THENPRINT"HUH?":GOTO460
830 IFS=11THEN940
840 IFS=22ANDL(16)=LTHEN940
850 IFL(S-6)<>LTHENPRINT"I DON'T SEE IT HERE":GOTO460
860 IFC>6THENPRINT"CAN'T I'M CARRYING TOO MUCH":GOTO460
870 IFS>37THENPRINT"I CAN'T TAKE THAT":GOTO460
880 IFS>31THENONS-31GOTO900,910,920,930,940
890 L(S-6)=0:C=C+1:GOTO460
900 PRINT"IT'S GLUED TO THE WALL-BUT FRAGILE":GOTO460
910 PRINT"SIGN FELL":L(27)=0:GOTO460
920 PRINT"IT'S TIED TO A LEDGE ON THE SECOND FLOOR":GOTO460
930 L(29)=0:IFL=8THENPRINT"AHA!":L(25)=8:GOTO460
940 INPUT"IN WHAT";A$:GOSUB1660
950 IFS=22AND(A$<>"NE"ORL(1)<>0)THENPRINT"GOT AWAY":L(16)=20:GOTO460
960 IFS=22THEN1730
970 IFS=11ANDA$<>"FL"THENPRINT"IT EVAPORATED":GOTO460
980 IFS=11ANDL(5)=LANDL(22)=0THENL(5)=0:GOTO460
990 IFA$="FL"ANDL(22)=0THENPRINT"IT DISSOLVED":L(22)=15:GOTO460
1000 IFA$="HO"ORA$="GR"THENPRINT"LEAKED OUT-IT'S A HOLEY GRAIL":GOTO460
1010 IFA$="HE"ANDL(15)=0THENL(30)=0:GOTO460
1020 PRINT"I DON'T THINK THAT WILL WORK":GOTO460
1030 PRINT"I'M CARRYING":FORX=1TO34
1040 IFL(X)=0THENPRINTO$(X+6)
1050 NEXT:GOTO460
1060 IFB$=""ORS<6THEN760
1070 IF(S=29ORS=24ORS=9ORS=23)ANDL(S-6)<>0THEN1220
1080 IFS<>32ORL<>8THEN1100
1090 PRINT"I SEE A RUGGED PERSON IN A POCKETED SURVIVAL SUIT":GOTO460
1100 IFS<>54ORL(11)<>20THEN1120
1110 PRINT"A HARMONICA AND A LIGHTER":L(11)=0:L(12)=0:GOTO460
1120 IFB$="WE"ANDL=6THENPRINT"THERE'S SOMETHING","THERE":GOTO460
1130 IFS=34THENPRINT"EARTHIE GO HOME!!":GOTO460
1140 IFS=41ANDL=3THENL2=18:GOTO780
1150 IFS=52ANDL=1THENL2=3:GOTO780
1160 IFS=9THENPRINT"SEEDS!":L(4)=L:GOTO460
1170 IFS<>29THEN1190
1180 PRINT"SUGGESTED FUELS":PRINT"HYDRAZINE":PRINT"ALCOHOL":GOTO460
1190 IFS=24THENPRINT"WATER, POT, TUBING, FIRE, GRAIN":GOTO460
1200 IFS=23THENPRINT60-O"MIN. OF AIR LEFT":GOTO460
1210 PRINT"NOTHING SPECIAL":GOTO460
1220 PRINT"I DON'T HAVE IT":GOTO460
1230 IFB$=""ORS<6THENPRINT"HUH??":GOTO460
1240 IFL(S-6)<>0THEN1220
1250 IFB$="RU"ANDL=8THENL(25)=20
1260 L(S-6)=L:C=C-1:GOTO460
1270 IFS=41ANDL=3THENL=18:L2=L:GOTO760
1280 IFL<>6THEN1310
1290 IFB$="WE"ANDDR=0THENPRINT"I FELL IN AND DIED":END
1300 IFB$="WE"THENL=7
1310 IFL(25)=8ANDS=31ANDL(13)<>0THEN1370
1320 IFS=31ANDL=8THENL=7:L2=L:GOTO760
1330 IFS=49ANDL=7ANDL(29)=8THENPRINT"BLOCKED":GOTO460
1340 IFS=49ANDL=7ANDC>1THENPRINT"CARRYING TOO MUCH":GOTO460
1350 IFS=49ANDL=7THENL=8:L2=L:GOTO760
1360 GOTO460
1370 PRINT"I SLIPPED DOWN A RAMP AND DIED":END
1380 GOTO460
1390 INPUT"WITH WHAT";A$:GOSUB1660:IFA$="JE"THENA$="CL"
1400 IFA$="FI"ORA$="HA"ORA$="FO"THENPRINT"YOU'RE KIDDING":GOTO460
1410 IFS>32ORS<30ORA$<>"CL"ORL(19)<>0THENPRINT"NOTHING YET":GOTO460
1420 IFS=32THENO$(32)="BROKEN MIRROR":P(8,5)=14:GOTO460
1430 IFS=30THENO$(30)="SPLINTERS":L(2)=L
1440 GOTO460
1450 IFS=30THENPRINT"IT'S NAILED, GLUED AND BANDED SHUT":GOTO460
1460 IFS<>50ORL<>2THEN460
1470 FORX=1TO40:IFL(X)=19THENL(X)=2
1480 NEXT:GOTO460
1490 IFS<>33THEN1520
1500 INPUT"TO WHAT";A$:GOSUB1660
1510 IFA$="ST"THENR=1:P(6,6)=7:P(7,5)=6:GOTO460
1520 PRINT"CAN'T":GOTO460
1530 IFS=15ANDL(9)=0THENLI=1:GOTO460
1540 IFS<>38THENPRINT"CAN'T":GOTO460
1550 IFL<>11THENPRINT"NOT HERE AIN'T SAFE":GOTO460
1560 IFL(14)<>11THENPRINT"NOT ENOUGH WOOD":GOTO460
1570 IFL(21)<>11THENPRINT"NO AIR":GOTO460
1580 L(32)=11:GOTO460
1590 LI=0:GOTO460
1600 IFS<>40THENPRINT"NOTHING HAPPENED":GOTO460
1610 IFL(5)<>2THENPRINT"COMPUTER REPORTS":PRINT"NO FUEL":PRINT
1620 IFL(10)<>2THENPRINT"NO INJECTOR PUMP"
1630 IFL(8)<3ORL(19)<3THENPRINT"TOO HEAVY FOR TAKEOFF":GOTO460
1640 IFL(5)=2 ANDL(10)=2THEN1740
1650 GOTO460
1660 IFLEN(A$)>1THENA$=LEFT$(A$,2)
1670 RETURN
1680 IFS<>17ORL(11)<>0THENPRINT"CAN'T":GOTO460
1690 IFL(16)=21THEN460
1700 M=M+1:PRINT"RUSTLING IS GETTING LOUDER":IFM<3THEN460
1710 PRINT:PRINT:PRINT:PRINT"A MARTIAN JUST WALKED INTO THE ROOM!!!"
1720 L(16)=L:GOTO460
1730 O$(7)="NET FULL OF MARTIAN":M=5:L(16)=21:L(15)=L:GOTO460
1740 FORX=1TO40:PRINTTAB(X)"WHWHOOOSHSHSH":NEXT
1750 PRINT"CONGRATULATIONS ON A SUCCESSFUL MISSION"