10REM  written by TIM HARTNELL
11REM                           AFTERMATH OF THE ASIMOVIAN DISASTER   
12REM  TYPED IN AND TRANSLATED AND IMPROVED BY DAVID BRETT FOR THE ADDAM
13REM  finished 7/24/86
15GOSUB 5000
20GOSUB 2600:REM                       initialise
30GOSUB 160
35IF ro=13 THEN  qq=qq+1:IF qq=2 THEN 1385
40GOTO 30
120?:? "YOUR SCORE IS "; 
130? 3*tally+5*strength+2*wealth+10*oxy+30*mk
135END
160REM                      Major Handling routine
170 strength=strength-5
180IF strength<10 THEN ? "WARNING,CATPAIN "; n$; " YOUR STRENGTH IS RUNNING LOW":? "YOU NEED AN OXYGEN BOOST"
190IF strength<1 THEN 2300:REM                      death   
200 tally=tally+1
210? "CAPTAIN "; n$
215? "YOUR STRENGTH IS "; strength
220IF wealth>0 THEN ? "YOU HAVE $"; wealth; " IN SOLARIAN CREDIT"
230IF oxy>0 THEN ? "YOUR RESERVE TANKS HOLD "; oxy; " UNITS OF OXYGEN"
240IF suit=1 THEN ? "YOU ARE WEARING A SPACE BATTLE SUIT."
250IF ion=0 AND laser=0 AND transporter=0 THEN 320
260? "YOU ARE CARRYING "; 
270IF ion=1 THEN ? "AN ION GUN"; 
280IF laser=1 THEN ? ", A  LASER "; 
290IF laser+ion>0 AND transporter=1 THEN ? "AND "; 
300IF transporter=1 THEN ? "A MATTER TRANSPORTER"
310?
320IF light=0 THEN ? "IT IS TO DARK TO SEE ANYTHING."
330IF light=1 THEN GOSUB 990
340 k=a(ro, 7):REM                      k is set to contents of room
350IF k=0 THEN 440
360IF k>9 THEN ? "THERE IS A TREASURE HERE WORTH $"; k:GOTO 440
370?:?:? "DANGER...THERE IS DANGER HERE.":GOSUB 3520
380IF k=-1 THEN  m$="BERSERK ANDROID": ff=5
390IF k=-2 THEN  m$="DERANGED DEL-FLIEVIAN": ff=10
400IF k=-3 THEN  m$="RAMPAGING ROBOTIC DEVICE": ff=15
410IF k=-4 THEN  m$="SNIGGERING-GREEN ALIEN": ff=20
420?:? "IT IS A "; m$
430?:? "YOUR PERSONAL DANGER METER REGISTERS "; ff; "!!"
440GOSUB 3520
450?:?:? "WHAT DO YOU WANT TO DO "; 
460INPUT a$: a$=LEFT$(a$, 1)
470IF k<0 AND a$<>"F" AND a$<>"R" THEN 460
480?:?:? "-------------------------------"
490IF a$="Q" THEN 120
495IF a$="C" THEN GOSUB 4000
500IF a$="N" AND a(ro, 1)=0 THEN ? "NO EXIT THAT WAY":GOTO 440
510IF a$="S" AND a(ro, 2)=0 THEN ? "THERE IS NO EXIT SOUTH":GOTO 440
520IF a$="E" AND a(ro, 3)=0 THEN ? "YOU CANNOT GO IN THAT DIRECTION":GOTO 440
530IF a$="W" AND a(ro, 4)=0 THEN ? "YOU CANNOT MOVE THROUGH SOLID WALLS":GOTO 440
540IF a$="U" AND a(ro, 5)=0 THEN ? "THERE IS NO WAY UP FROM HERE":GOTO 440
550IF a$="D" AND a(ro, 6)=0 THEN ? "YOU CANNOT DESCEND FROM HERE":GOTO 440
560IF a$="R" AND RND(1)>.7 THEN 2420
570IF a$="R" THEN  k=0:? "WHICH WAY DO YOU WANT TO RUN"; :GOTO 460
580IF a$="F" AND a(ro, 7)>-1 THEN ? "THERE IS NOTHING TO FIGHT HERE":GOTO 440
590IF a$="I" THEN GOSUB 3010:RETURN
600IF a$="B" AND oxy=0 THEN ? "YOU DON'T HAVE ANY OXYGEN":GOTO 440
610IF a$="P" THEN GOSUB 2350:RETURN
620IF a$="F" THEN 730
625IF a$="M" AND ro=13 THEN ? "THAT IS NOT POSSIBLE":GOSUB 3520:GOTO 450
630IF a$="M" THEN  ro=INT(RND(1)*19)+1:IF ro=6 OR ro=11 THEN 630:GOTO 710
640IF a$="B" THEN GOSUB 2480:RETURN
650IF a$="N" THEN  ro=a(ro, 1)
660IF a$="S" THEN  ro=a(ro, 2)
670IF a$="E" THEN  ro=a(ro, 3)
680IF a$="W" THEN  ro=a(ro, 4)
690IF a$="U" THEN  ro=a(ro, 5)
700IF a$="D" THEN  ro=a(ro, 6)
710RETURN
730REM                     fight
760?:?:? "PRESS ANY KEY TO FIGHT":GET a$
770IF suit=1 THEN ? "YOUR SPACE-ARMOR INCREASES YOUR CHANCE OF SUCCESS": ff=3*(INT(ff/4)):GOSUB 3520
780HOME:FOR j=1 TO INT(RND(1)*6)+1:? "*_*_*_*_*_*_*_*_*_*_*_*_*_*_*_"; :NEXT j
785?:?
790IF ion=0 AND laser=0 THEN ? "YOU HAVE NO WEAPONS":? "YOU MUST FIGHT WITH BARE HANDS": ff=INT(ff+ff/5):GOTO 870
800IF ion=1 AND laser=0 THEN ? "YOU HAVE ONLY THE ION GUN TO FIGHT WITH": ff=4*INT(ff/5):GOTO 870
810IF ion=0 AND laser=1 THEN ? "YOU MUST FIGHT WITH YOUR LASER": ff=3*INT(ff/4):GOTO 870
820INPUT "WHICH WEPON? 1-ION GUN, 2-LASER"; z
830IF z<1 OR z>2 THEN 820
840IF z=1 THEN  ff=4*INT(ff/5)
850IF z=2 THEN  ff=3*INT(ff/4)
870REM                   the battle
880?:?
890IF RND(1)>.5 THEN ? m$; " ATTACKS":GOTO 900
895? "YOU ATTACK"
900GOSUB 3520
910IF RND(1)>.5 THEN ?:? "YOU GIVE THE "; m$; " A GLANCING BLOW": ff=INT(5*ff/6)
920GOSUB 3520
930IF RND(1)>.5 THEN ?:? "THE "; m$; " WOUNDS YOU!": strength=strength-5
940IF RND(1)>.35 THEN 890
950IF RND(1)*16>ff THEN ?:? "AND YOU MANAGE TO KILL THE "; m$: mk=mk+1:GOTO 970
960?:? "THE "; m$; " SERIOUSLY WONDS YOU": strength=INT(strength/2)
970 a(ro, 7)=0:GOSUB 3410:?:?:GOSUB 3520:RETURN
990REM                  room descriptions
1000?:? "*******************************":?:?
1010ON ro GOSUB 1040, 1100, 1170, 1230, 1280, 1360, 1410, 1470, 1540, 1620, 1700, 1730, 1790, 1860, 1960, 2030, 2100, 2160, 2230
1020RETURN
1040REM                  room 1
1050? "YOU ARE IN THE FORMER":? "RECREATION CENTER."
1060? "EQUIPMENT FOR MUSCLE-TRAINING"
1070? "IN ZERO GRAVITY LITTERS THE"
1080? "AREA."
1085RETURN
1100REM                  room 2
1110? "THIS WAS THE REPAIR AND"
1120? "MAINTENANCE HOLD OF TH SHIP."
1125? "YOU CAN ONLY LEAVE IT VIA THE"
1130? "GIANT HANGAR DOOR TO THE WEST"
1150RETURN
1170REM                 room 3
1180? "YOU ARE IN THE WRECKED HOLD OF"
1185? "A SPACESHIP THE CAVERNOUS "
1190? "INTERIOR IS LITTERED WITH"
1200? "FLOATING WRECKAGE, AS IF FROM"
1203? "SOME TERRIBLE EXPLOSION EONS"
1205? "AGO......"
1210RETURN
1230REM                 room 4
1240IF RND(1)>.6 THEN ? "WHAT A SUPERB SIGHT......."
1242? "THE VIEW OF THE STARS FROM "
1245? "THIS OBSERVATION PLATFORM IS ":? "MAGNIFICENT, AS FAR AS"
1246? "THE EYE CAN SEE. THE SINGLE "
1247? "EXIT IS BACK WHERE YOU CAM"
1250? "FROM"
1260RETURN
1280REM                 room 5
1290? "ACRE UPON ACRE OF DRIED-UP "
1295? "HYDROPONIC PLANT BEDS STRETCH"
1300? "AROUND YOU. ONCE THIS AREA FED"
1310? "THE THOUSAND ON BOARD THE SHIP"
1320IF RND(1)>.5 THEN ? "THE SOLAR LAMPS ARE STILL ON"
1330IF RND(1)>.5 THEN ? "A FEW PLANTS ARE STILL ALIVE   TO THE EAST."
1340RETURN
1360REM                 room 6
1370? "YOU ARE FREE! YOU HAVE MADE IT"
1380? "YOUR POD SAILS FREE INTO SPACE"
1385? "YOU SCORE WAS "; 3*tally+5*strength+2*wealth+10*oxy+30*mk
1390END
1410REM                room 7
1420? "YOU ARE IN THE CREWS'S SLEEPING"
1430? "QUARTERS"
1435IF RND(1)>.5 THEN ? "MOST OF THE SLEEPING SHELLS ARE"; :? " EMPTY"
1440IF RND(1)>.5 THEN ? "THE FEW REMAINING CREW STIR ":? "FITFULLY IN THEIR ENDLESS,":? "DREAMLESS SLEEP,"
1445IF RND(1)>.8 THEN ? "THERE ARE EXITS TO THE NORTH,":? "EAST, AND WEST"
1450RETURN
1470REM                room 8
1480? "THE FORMER PASSENGER SUSPENDED"
1490? "ANIMATION DORMITORY..........."
1495IF RND(1)>.1 THEN ? "PASSENGERS FLOAT BY AT RANDOM"
1500IF RND(1)>.5 THEN ? "IT IS ENORMOUS, IT SEEMS TO GO":? "ON FOREVER"
1510IF RND(1)>.9 THEN ? "THE ONLY EXITS ARE TO THE WEST":? "AND SOUTH"
1520RETURN
1540REM                room 9
1550? "THIS IS THE SHIPS HOSPITAL,"
1560? "WHITE AND STERILE. A BUZZING "
1570? "SOUND, AND A STRANGE WARMTH "
1580? "COME FROM THE SOUTH, WHILE A "
1590? " CHILL IS FELT TO THE NORTH"
1600RETURN
1620REM                room 10
1630? "FOOD FOR ALL THE CREW WAS "
1640? "PREPARED IN THIS GALLEY. THE"
1650? "REMAINS FROM PREPARATIONS OF "
1660? "FINAL MEAL CAN BE SEEN. DOORS"
1670? "LEAVE THE GALLY TO THE SOUTH "
1675? "AND TO THE WEST"
1680RETURN
1700REM                room 11
1701? "AHA..THAT LOOKS LIKE THE SPACE"
1702? "POD NOW, AND ITS OUTSIDE DIALS"
1703? "INDICATE IT IS STILL IN PERFECT"
1704? "CONDITION"
1710RETURN
1730REM                room 12
1740IF RND(1)>.5 THEN ? "THIS IS THE SHIP'S MAIN ":? "NAVIGATION ROOM"
1750? "STRANGE MACHINERY LINES THE ":? "WALLS"
1760? "WHILE, OVERHEAD, A HOLOGRAPHIC"
1765? "STAR MAP SLOWLY TURNS, BY THE"
1766? "FLICKERING GREEN LIGHT YOU CAN"
1767? "JUST MAKE OUT EXITs":IF RND(1)>.8 THEN ? "TO THE SOUTH AND TO THE EAST"
1770RETURN
1790REM          room 13
1800IF rnd>.5 THEN ? "YOUR BODY TWISTS AND BURNS..."
1810? "YOU ARE CAUGHT IN A DEADLY":? "RADIATION FIELD...."
1820IF RND(1)>.9 THEN ? "BEING INCREDIBLY STUPID YOU":? "YOU THINK YOU ARE IN THE SHIPS":? "TANNING ROOM"
1830? "YOU SLOWLY REALISE THAT":? "THIS IS THE END."
1835IF RND(1)>.5 THEN ? "NO MATTER WHAT YOU DO"
1836IF RND(1)>.5 THEN ? "YOU ARE DOOMED TO DIE HERE"
1840END:REM         fix
1860REM          room 14
1870? "THIS IS THE POWER CENTER OF THE"
1875? "SHIP THE CHARACTERISTIC BLUE "
1880? " METALIC LIGHT OF THE STILL-"
1890? "FUNCTIONING ION DRIVE FILLS THE"
1900? "ENGINE ROOM. THROUGH THE HAZE"
1910? "YOU CAN SEE THE DOORS"
1920IF RND(1)>.9 THEN ? "TO THE NORTH AND WEST"
1930IF RND(1)>.6 THEN ? "A SHAFT LEADS DOWNWARDS TO THE":? "REPAIR CENTER"
1940RETURN
1960REM        room 15
1970? "YOU ARE STANDING IN THE ANDROID"
1980? "STORAGE HOLD. ROW UPON OF METAL"
1990? "MEN STAND STIFFLY AT ATTENTION,"
2000? "AWAITING THE DISTINCTIVE SOUND"
2010? "OF THEIR LONG-DEAD CAPTAIN TO "
2020? " SET THEM INTO MOTION. A LIGHT"
2023? "COMES FROM THE WEST AND THROUGH"
2024? "THE GRAVITY WELL SET INTO THE "
2025? "FLOOR."
2026RETURN
2030REM        room 16
2040? "ANOTHER CAVERNOUS, SEEMINGLY"
2045? "ENDLESS HOLD, THIS ONE CRAMMED"
2050? "WITH GOODS FOR TRADING......"
2060IF RND(1)>.7 THEN ? "RARE METALS AND VENUSIAN ":? "SCULPTURES"
2065IF RND(1)>.8 THEN ? "PRESERVED SCALAPIAN DESERT FISH"
2066IF RND(1)>.7 THEN ? "FLASHING EBONY SCITH STONES":? "FROM XARIAN IV"
2067IF RND(1)>.8 THEN ? "AWESOME TRADER ANT EFIGIES FROM":? "THE QWERTYIOPIAN EMPIRE"
2068IF RND(1)>.9 THEN ? " A LANRGE ASSORTMENT OF DISNEY":? "MERCHANDIS, LIKE ROBOT ":? "MICKEY MOUSE DOLLS"
2069IF RND(1)>.95 THEN ? "VARIOUS HARD PORN VIDEOS FROM":? "ACROSS THE GALAXY"
2070IF RND(1)>.9 THEN ? "THE LIGHT IS STRONGER TO THE ":? "WEST"
2080RETURN
2100REM       room 17
2110? "A STARK, METALLIC ROOM, REEKING"
2120? "OF LUBRICANTS. WEAPONS LINE THE"
2130? "WALL, RANK UPON RANK. EXITS FOR"
2135? "SOLDIER ANDROIDS ARE TO THE"
2136? "NORTH AND THE EAST."
2140RETURN
2160REM       room 18
2170? "ABOVE YOU IS THE GRAVITY SHAFT"
2175? "LEADING TO THE ENGINE ROOM."
2180? "THIS IS THE SHIP REPAIR CENTER"
2185? "WITH EMERGENCY EXITS TO THE"
2190? "SOLDIER ANDROIDS STORAGE AND TO"
2200? "THE TRADING GOODS HOLD"
2205RETURN
2230REM       room 19
2240? "YOU'VE STUMBLED ON THE SECRET "
2250? "COMMAND CENTER WHERE SCREENS"
2260? "BRING VIEWS FROM ALL AROUND THE"
2270? "SHIP. THERE ARE TWO EXITS......"
2275 zvz=RND(1)
2276IF RND(1)>.5 THEN ? "ONE OF WHICH IS THE GRAVITY ":? "WELL":RETURN
2280? "ONE OF WHICH LEADS TO THE GOODS":? "HOLD":RETURN
2350REM          pick up
2360IF a(ro, 7)<10 THEN ? "THERE NO TREASURE HERE":GOSUB 3520:RETURN
2370IF light=0 THEN ? "YOU CANNOT SEE WHERE IT IS":GOSUB 3520:RETURN
2380 wealth=wealth+a(ro, 7)
2390 a(ro, 7)=0
2400RETURN
2420REM          no run
2430? "NO YOU MUST STAND AND FIGHT"
2440 a$="F"
2450GOSUB 3520
2460GOTO 620
2480REM          more oxygen
2490HOME
2500IF oxy<1 THEN RETURN
2510? "YOU HAVE "; oxy; " UNITS OF OXYGEN"
2520? "HOW MANY DO YOU WANT TO ADD TO YOUR TANKS"; 
2530INPUT z
2540IF z>oxy THEN 2530
2550 oxy=INT(oxy-z)
2560 strength=INT(strength+5*z)
2570GOSUB 3410:HOME
2580RETURN
2600REM                initialise
2610HOME
2620 strength=INT(RND(1)*50)+75
2630 wealth=INT(RND(1)*50)+50
2640 oxy=INT(RND(1)*16)
2650 tally=0
2655 qq=0
2660 mk=0
2680REM                set up ship
2690DIM a(19, 7)
2700FOR b=1 TO 19
2710FOR c=1 TO 7
2720READ a(b, c)
2730NEXT c
2740NEXT b
2750INPUT "WHAT IS YOUR NAME, SPACE HERO"; n$
2760HOME
2770 ro=3
2780 laser=0
2790 transporter=0
2800 ion=0
2810 suit=0
2820 light=0
2850FOR j=1 TO 7
2860 m=INT(RND(1)*19)+1
2870IF m=6 OR m=11 OR ro=13 OR a(m, 7)<>0 THEN 2860
2880 a(m, 7)=INT(RND(1)*100)+10
2890NEXT j
2915FOR t=1 TO 2
2920FOR j=1 TO 4
2930 m=INT(RND(1)*18)+1
2940IF m=6 OR m=13 OR a(m, 7)<>0 THEN 2930
2950 a(m, 7)=-j
2960NEXT j
2965NEXT t
2990RETURN
3010REM              supply android
3020? "A SUPPLY ANDROID HAS ARRIVED"
3030GOSUB 3260
3040IF wealth<.1 THEN  z=0:GOTO 3130
3050? "YOU CAN BUY"
3055? "1-NUCLEONIC LIGHT ($15)"
3060? "2-ION GUN ($10)"
3070? "3-LASER ($20)"
3080? "4-OXYGEN ($2 PER UNIT)"
3090? "5-MATTER TRANSPORTER ($30)"
3100? "6-COMBAT SUIT ($50)"
3110? "0-TO CONTINUE EXPLORATION"
3120INPUT "ENTER NO. OF ITEM REQUIRED"; z
3130IF z=0 THEN HOME:RETURN
3140IF z=1 THEN  light=1: wealth=wealth-15
3150IF z=2 THEN  ion=1: wealth=wealth-10
3160IF z=3 THEN  laser=1: wealth=wealth-20
3170IF z=5 THEN  transporter=1: wealth=wealth-30
3180IF z=6 THEN  suit=1: wealth=wealth-50
3190IF wealth<0 THEN ? "YOU HAVE TRIED TO CHEAT ME!": wealth=0: suit=0: light=0: ion=0: transporter=0: oxy=INT(oxy/4):GOSUB 3520
3200IF z<>4 THEN 3030
3210INPUT "HOW MANY UNITS OF OXYGEN"; q: q=INT(q)
3220IF 2*q>wealth THEN ? "YOU HAVEN'T GOT THE MONEY":GOTO 3210
3230 oxy=oxy+q
3240 wealth=wealth-2*q
3250GOTO 3030
3260IF wealth>0 THEN ?:?:? "YOU HAVE $"; wealth; " IN SOLARIAN CREDIT"
3270IF wealth=0 THEN ? "YOU HAVE NO SOLARIAN CREDITS ":? "LEFT":GOSUB 3520:RETURN
3310DATA                0,5,2,0,0,0,0 
3320DATA                0,0,0,1,0,0,0 
3330DATA                3,7,4,3,3,3,0
3340DATA                0,0,0,3,0,0,0
3350DATA                1,5,7,5,5,5,0
3360DATA                6,6,6,6,6,6,0
3370DATA                3,0,8,5,0,0,0
3380DATA                8,12,8,7,8,8,0
3390DATA                11,13,10,0,0,0,0
3400DATA                0,14,0,9,0,0,0
3410DATA                9,6,6,6,6,6,0
3420DATA                8,16,19,0,0,0,0
3430DATA                13,0,0,13,0,13,0
3440DATA                10,0,15,17,0,18,0
3450DATA                0,0,0,14,0,19,0
3460DATA                12,16,16,18,16,16,0
3470DATA                14,0,18,0,0,0,0
3480DATA                0,0,16,17,14,0,0
3490DATA                0,12,0,0,15,0,0
3510REM       loop
3520FOR t=1 TO 900:NEXT t
3530RETURN
4000? "YOUR SCORE SO FAR IS "; 
4010? 3*tally+5*strength+2*wealth+10*oxy+30*mk
4015?:? "-------------------------------":?
4020RETURN
5000INPUT "DO YOU NEED INSTRUCTIONS (Y/N)"; qo$
5005IF qo$="Y" THEN GOTO 5030
5009RETURN
5030? "The intergalactic liner, The"
5040? "Isaac Asimov, met with an "
5045? "unexplained disaster when on "
5050? "its way, with over 1,000 "
5055? "passengers, to terraformed "
5057? "planets of the Seuxarian System"
5058? "Press any key to continue.":GET a$:?
5059? "    When out on your regular "
5060? "patrol of the space lanes, two"
5065? "centuries later, you come "
5070? "across the drifting hulk of The"
5075? "Isaac Asimov. You decide to"
5080? "explore, to see if you can "
5085? "determine what went wrong. "
5090? "However, no sooner have you"
5095? "entered the hold of the wrecked"
5096? "ship than your own ship, which"
5097? "you left tethered outside, "
5098? "explodes. You must find a "
5099? "Safety-Pod on board the Asimov"
5100? "or die."
5200?:? "  Press any key to continue"
5210GET a$:?
5220? " Your Commands are,"
5225? "  N = go North"
5226? "  S = go South"
5227? "  E = go East"
5228? "  W = go west"
5229? "  P = pick up"
5230? "  B = Breath"
5235? "  F = Fight "
5240? "  R = Run"
5245? "  C = For your score"
5249? "  Q = Quit"
5250? "  Press any key to play"
5255GET a$
5260RETURN
