Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß) 10 DIM C$(40):DIM A(400):BORDER 1:PAPER 1:INK 3 20 CLS 30 TT=0 40 INK 3:CR=0:LL=100 50 DEF FN ZU(X)=INT(400*RND(I))+1 60 PRINT:PRINT "****************************************" 70 PRINT:PRINT TAB(15)"GANYMED":PRINT 80 PRINT "****************************************" 90 INPUT "WIRD EINE ANLEITUNG BENOETIGT ?(Y/N) ? ";A$ 100 IF A$="N"THEN 160 110 CLS 120 FOR I=1 TO 24:READ C$ 130 PRINT C$ 140 IF I>15 THEN PAUSE 20 150 NEXT I:INPUT "START MIT >ENTER< !";A:CLS 160 GOSUB 1430 170 PRINT "SIE SIND JETZT AUF GANYMED GELANDET":PRINT 180 PRINT "SIE SIND IN RAUM " 190 OU=FN ZU(I) 200 IF A(OU)<>ASC(".")GOTO 190 210 OT=FN ZU(I) 220 IF A(OT)<>ASC(".")THEN 210 230 E=FN ZU(I) 240 IF A(E)<>ASC(".") THEN 230 250 A(E) = ASC(""):PRINT E 260 OG=ASC("") 270 IF INKEY$=" " THEN RETURN 280 PRINT 290 PRINT "HIER IST EINE KARTE DER RAUEME !" 300 PAUSE 40 310 GOSUB 330 320 GOTO 560 330 CLS:PAPER 5:WINDOW 0,19,0,19:CLS:WINDOW:REM KARTE ZEIGEN 340 FOR I=1 TO 400 350 PRINT;INK 8;CHR$(A(I)); 360 IF 20*INT(I/20)=I THEN PRINT 370 A$=INKEY$:IF A$=" "THEN A$="":PAPER 1:RETURN 380 A$="" 390 NEXT I 400 WINDOW 0,23,21,37:PAPER 1:CLS 410 PRINT;INK 2;"ERKLAERUNG :" 420 PRINT 430 PRINT;INK 7;" - SIE":PRINT 440 PRINT "^- BEAM-STRAHLEN":PRINT 450 PRINT "- VERSPERRT ":PRINT 460 PRINT "U- FALLGRUBE":PRINT 470 PRINT "M- MONSTER":PRINT 480 PRINT;INK 2;"- KRISTALL":PRINT 490 PRINT " N" 500 PRINT "WO" 510 PRINT " S" 520 FOR I=1 TO 8:PRINT AT(INT(E/20),E-1-20*INT(E/20));" " :PAUSE 3 530 PRINT;INK 2;AT(INT(E/20),E-1-20*INT(E/20));"":PAUSE 3:NEXT I 540 WINDOW:CLS 550 RETURN 560 REM DIALOG 570 CLS 580 PRINT "KRISTALLANZAHL :";CR 590 PRINT:PRINT;INK 6;"SAUERSTOFF FUER";LL;"RAEUME" 600 PRINT 610 FOR I=0 TO 37 620 PRINT ""; 630 NEXT I:PRINT 640 PRINT "SIE BEFINDEN SICH IN RAUM:";E 650 FOR I=0 TO 37:PRINT "";:NEXT I:PRINT 660 PRINT:PRINT "LAGEMELDUNG DES COMPUTERS" 670 PRINT:PRINT "NORDEN :",CHR$(A(E-20)) 680 PRINT "SUEDEN :",CHR$(A(E+20)) 690 PRINT "OSTEN :",CHR$(A(E+1)) 700 PRINT "WESTEN :",CHR$(A(E-1)) 710 PRINT:PRINT "WELCHE RICHTUNG WOLLEN SIE GEHEN ?" 720 PRINT "(N/S/O/W) ?":OG =E 730 A$=INKEY$ 740 IF LEN(A$)=0 THEN 730 750 BEEP:PRINT 760 IF A$="N" AND A(E-20)<>ASC("")THEN E=E-20 770 IF A$="S" AND A(E+20)<>ASC("")THEN E=E+20 780 IF A$="O" AND A(E+1)<>ASC("")THEN E=E+1 790 IF A$="W" AND A(E-1)<>ASC("")THEN E=E-1 800 IF A$="@" THEN GOSUB 330 810 A$="" 820 IF A(E)= ASC("") THEN GOSUB 940 830 IF A(E)= ASC("^") THEN GOTO 990 840 IF A(E)= ASC("M") THEN GOSUB 1270 850 IF A(E)= ASC("U") THEN GOTO 1050 860 LL=LL-1 870 IF LL=50 OR LL=20 THEN GOSUB 2220 880 IF LL=0 THEN 1960 890 A(OG)=ASC(".") 900 A(E)= ASC("") 910 IF RND(2)>.8 THEN GOSUB 330 920 IF E=OT OR E=OU THEN 1670 930 GOTO 560 940 REM KRISTALL GEFUNDEN 950 X=INT(RND(3)*3)+2:CR=CR+X:INK 2 960 PRINT "SIE HABEN";X;" KRISTALLE GEFUNDEN,GESAMT :";CR 970 PAUSE 20:INK 3 980 CLS:RETURN 990 REM BEAMSTRAHL 1000 INK 6:PRINT "SIE WURDEN WEGGEBEAMT !" 1010 E=FN ZU(I) 1020 IF A(E)=ASC("")THEN 1010 1030 PRINT "SIE BEFINDEN SICH JETZT IN RAUM :";E 1040 PAUSE 40:CLS:INK 3:GOTO 830 1050 REM FALLGRUBE 1060 CLS 1070 PRINT:PRINT "SIE SIND IN EINE FALLGRUBE GEFALLEN !":PAUSE 15 1080 FOR I=1 TO 24 1090 X$="" 1100 INK 2:PRINT STRING$(40,X$) 1110 PRINT SPC(40) 1120 NEXT I:INK 3 1130 X=INT(RND(3)*10)+1 1140 IF X>8 THEN CLS:PRINT:PRINT "ABER EIN MONSTER HAT SIE GERETTET !" 1150 IF X>8 THEN Y=INT(RND(3)*CR)+1:PRINT:PRINT "ES VERLANGT DAFUER";Y; 1160 IF X>8 THEN PRINT " KRISTALLE ":CR=CR-Y 1170 IF X>8 THEN PAUSE 25:GOTO 860 1180 CLS 1190 BORDER 5:PAPER 5:PRINT:PRINT "SIE SIND AUSSERHALB VON GANYMED ." 1200 PRINT:PRINT "ENDSTAND :";CR;" KRISTALLE" 1210 PRINT:IF CR<30 THEN PRINT "DAS REICHT ABER NICHT,LEBEN SIE WOHL":GOTO 2160 1220 PRINT:PRINT "DAS GENUEGT ZUM RUECKFLUG ! 1230 PRINT:PRINT "SIE ERHALTEN FUER DIE KRISTALLE";1.5*CR;"MILL.DOLLAR" 1240 IF CR>TT THEN TT=CR 1250 PRINT:PRINT "DER BESTE ERHIELT BISHER";1.5*TT;"MILL.DOLLAR" 1260 GOTO 2160 1270 REM BEGEGNUNG MIT MONSTER 1280 K=INT(RND(3)*4)+1:INK 6 1290 PRINT "SIE SIND EINEM MONSTER BEGEGNET" 1300 PAUSE 40 1310 IF K<4 THEN PRINT "ES HAT SIE GESEHEN !" 1320 PAUSE 20: IF K<4 THEN GOSUB 2000 1330 PRINT "ABER ES IST FREUNDLICH " 1340 IF K=2 THEN S=INT(RND(3)*30)+1:PRINT "UND GIBT IHNEN";S;" KRISTALLE" 1350 IF K=2 THEN CR=CR+S 1360 IF K=3 THEN PRINT "UND NIMMT NUR" 1370 IF K=3 AND CR>0 THEN S=INT(RND(0)*CR):ELSE S=0 1380 IF K=3 THEN PRINT:PRINT;S;" KRISTALLE !":CR=CR-S 1390 IF K>3 THEN PRINT "ES SCHLAEFT !" 1400 PRINT "GESAMTSTAND";CR;"KRISTALLE" 1410 PAUSE 40:INK 3 1420 RETURN 1430 CLS:PRINT "BITTE WARTEN":REM INIT-TEIL 1440 FOR I=1 TO 400 1450 A(I)=ASC(".") 1460 IF I<=20 OR I>=380 THEN A(I)=ASC("") 1470 IF I=20*INT(I/20)THEN A(I)=ASC("") 1480 NEXT I 1490 FOR I=21 TO 381 STEP 20:A(I)=ASC(""):NEXT I 1500 FOR I=20 TO 380 STEP 20:A(I)=ASC(""):NEXT I 1510 PRINT "BITTE WARTEN,BILDAUFBAU":REM HINDERNISSE 1520 FOR I=1 TO 40 1530 C=FN ZU(I) 1540 IF A(C)=ASC(".") THEN A(C)=ASC(""):NEXT I:FOR I=1 TO 25 1550 C=FN ZU (I) 1560 IF A(C)=ASC(".") THEN A(C)=ASC("M") 1570 C=FN ZU(I) 1580 IF A(C)=ASC(".") THEN A(C)=ASC("^") 1590 C=FN ZU(I) 1600 IF A(C)=ASC(".")THEN A(C)=ASC("U") 1610 NEXT I 1620 FOR I=1 TO 80 1630 C=FN ZU(I) 1640 IF A(C)=ASC(".") THEN A(C)=ASC("") 1650 NEXT I 1660 RETURN 1670 REM GEHEIMGANG 1680 PAPER 6:CLS:PRINT " SIE SIND IN EINEM GEHEIMGANG !" 1690 PAUSE 20:GOTO 1230 1700 REM INSTRUKTIONEN 1710 DATA " INSTRUKTIONEN ZU GANYMED.II" 1720 DATA "" 1730 DATA "" 1740 DATA "SIE BEFINDEN SIH AN BORD VON FLUG 7/18" 1750 DATA "DER XYLENIUMSUCHFLOTTE,IHRE AUFGABE IST" 1760 DATA "SOVIEL WIE MOEGLICH XYLENIUMKRISTALLE" 1770 DATA "ZU FINDEN UND DAMIT ZURUECKZUKEHREN ." 1780 DATA "GANYMED BESTEHT AUS EINEM LABYRINTH" 1790 DATA "VON 400 RAEUMEN." 1800 DATA "SIE KOENNEN FOLGENDE UEBERRASCHUNGEN" 1810 DATA "ERLEBEN :1. VERSCHLOSSENE RAEUME" 1820 DATA " 2.^ MATERIEBEAMER DIE SIE " 1830 DATA " WEGTRANSPORTIEREN" 1840 DATA " 3.M MONSTER DIE UNBERECHENBAR" 1850 DATA " SIND." 1860 DATA " 4.U FALLGRUBEN, DURCH DIE SIE" 1870 DATA " HERAUSKOMMEN 1880 DATA " 1890 DATA "UND NATUERLICH AUCH KRISTALLE. AUCH " 1900 DATA "DIE MONSTER KOENNEN KRISTALLE GEBEN !" 1910 DATA "IHR SAUERSTOFF REICHT FUER 100 RAEUME" 1920 DATA "SIE BRAUCHEN MINDESTENS 30 KRISTALLE" 1930 DATA "FUER DEN RUECKFLUG,VON DENEN JEDES" 1940 DATA "KRISTALL AUF DER ERDE 1,5 MILL. DOLLAR BRINGT" 1950 DATA "ICH WUNSCHE IHNEN VIEL GLUECK !" 1960 PRINT;INK 2;"IHRE LEBENSERHALTUNGSSYSTEME SIND AUF NULL" 1970 PRINT "IRGENDWANN WIRD EIN MONSTER SIE BEERDIGEN" 1990 GOTO 2160 2000 CLS 2010 X$="":PRINT "ES KOMMT AUF SIE ZU !!" 2020 PRINT AT(10,0);STRING$(40,X$) 2030 PRINT AT(9,35);"" 2040 IF K=1 THEN FOR I=0 TO 34 2050 IF K<>1 THEN FOR I=0 TO 33 2060 PRINT AT(9,I);" &" 2070 PAUSE 2 2080 NEXT I 2090 IF K<>1 THEN RETURN 2100 FOR I=1 TO 30 2110 PRINT STRING$(40,X$) 2120 NEXT I 2130 CLS 2140 PRINT "ES HAT SIE GEFRESSEN" 2150 GOTO 2160 2160 PRINT "WOLLEN SIE NEU BEGINNEN(Y/N)?" 2170 INPUT A$ 2180 IF A$="Y"THEN GOTO 40 2190 CLS 2200 PRINT AT(10,15);"NA DANN NICHT !" 2210 PAUSE 100:CLS:END 2220 FOR I=1 TO 10 2230 PRINT;INK 2;AT(20,2);"DENKEN SIE AN DEN SAUERSTOFFVORRAT !!":PAUSE 3 :BEEP 2240 PRINT AT(20,2);" ":PAUSE 3 2250 NEXT I 2260 RETURN