1 REM ++++++++++++++++++++++++++++++++ 2 REM ! Program .... FLUGAN 3 REM ! Utg}va 2.0 1983-??-?? 4 REM ! av L. Tufvesson 6 REM ! Copyright LT-DATA 7 REM ! Minne 16 Kbytes 8 REM ! Ins{nt av 3189 9 REM ++++++++++++++++++++++++++++++++ 10 REM Ett spelprogram som i tre 11 REM etapper g}r ut p} att besegra 12 REM en utomjordisk flug-arm`. 20 ; CHR$(12%)CUR(4%,10%)"[NNU ETT ROLIGT SPEL" 30 ; CUR(7%,19%)"FR]N"CUR(10%,14%)"L. TUFVESSON"CUR(15%,18%)"ALIAS"CUR(20%,11%)"L T - D A T A ! !" 40 FOR E%=0% TO 10000% : NEXT E% 70 ; CHR$(12%)TAB(8%)"SUPERFLUGANS H[MND" 80 ; : ; "I detta rymdspel anfalls du av en insektsliknande marsvarelse och alla" 90 ; "hans medhj{lpare. (P.g.a att du i slagetom Uranus }r 2132 tog k}l p} h{lften av hans arm`.)" : ; 100 ; "Makulera dem innan de makulerar dig!" : ; 110 ; : ; "1. Skjut h}l p} rymdskeppet." 120 ; "2. Tillintetg|r marsflugan." 130 ; "3. Skjut s|nder hans medhj{lpare." 140 ; "4. Styr f|rbi alla kometer." 150 ; : ; "Anv{ndbara tangenter:" : ; "<< X : >> (mellan slag) skjut" 160 ; : ; : ; "Tryck return s} b|rjar vi!" 170 Q%=Q%+1% : IF Q%>35% Q%=0% 180 ; CUR(22%,Q%)CHR$(151%)"==" : IF INP(56%)<>141% FOR E%=0% TO 400% : NEXT E% : GOTO 170 190 A=.02 : Q%=1% : H%=16% : B=.3 : RESTORE 200 ; CHR$(12%) : FOR E%=0% TO 23% : ; CUR(E%,0%)CHR$(151%)CUR(E%,29%)"5"CHR$(135%); : NEXT E% 210 ; CUR(5%,31%)"<< X"CUR(6%,34%)": >>"CUR(7%,31%)"MELLAN-"CUR(8%,32%)"SL AG"CUR(9%,32%)"SKJUT" : RANDOMIZE 220 ; CUR(1%,33%)"SUPER-"CUR(2%,32%)"FLUGANS"CUR(3%,33%)"H[MND"CUR(19%,32%)"PO[NG:" 230 FOR F%=0% TO 15% : READ E% : FOR X%=0% TO 100% : NEXT X% 240 DATA 4,5,6,7,8,9,10,11,12,11,10,9,8,9,8,9 250 ; CUR(0%,E%)" jcccccccccck " 260 ; CUR(1%,E%)" j j " 270 ; CUR(2%,E%)" j )0`& j " 280 ; CUR(3%,E%)' j (ss$ j ' 290 ; CUR(4%,E%)" j f9 j " 300 ; CUR(5%,E%)" j d:e8 j " 310 ; CUR(6%,E%)" j j " 320 ; CUR(7%,E%-3%)"  " 330 ; CUR(8%,E%-3%)" j5 " 340 ; CUR(9%,E%-2%)" o? " 350 ; CUR(10%,E%-1%)" +' " 360 ; CUR(11%,E%+1%)" ##////## " 370 NEXT F% : FOR E%=0% TO 3000% : NEXT E% 380 A%=22% : B%=INT(RND*20%+2%) : A1%=22% : B1%=10% 390 FOR E%=1% TO 8% : READ X%,Y% : SETDOT A%*3%+X%,B%*2%+Y% : FOR F%=0% TO 500% : NEXT F% : NEXT E% : OUT 6%,255% 400 RESTORE 410 REM  HUVUD 420 ; CUR(A1%,B1%)" "CUR(A1%+1%,B1%)" "CUR(20%,32%)S3% 430 ; CUR(A%,B%)"n$"CUR(A%+1%,B%)"#!"; : A1%=A% : B1%=B% : IF RND0% AND Q%<3% FOR E%=0% TO 80% : NEXT E% 470 IF V%>0% 550 480 REM  FLYTTA SK\LD 490 IF DOT(21%,46%) X%=1% ELSE X%=0% 500 FOR E%=46% TO 18% STEP -2% : IF DOT(21%,E%-2%) ; CUR(7%,E%/2%)"" ELSE ; CUR(7%,E%/2%)" " 510 NEXT E% : IF X%=1% ; CUR(7%,8%)"" ELSE ; CUR(7%,8%)" " 520 IF DOT(24%,16%) X%=1% ELSE X%=0% 530 FOR E%=16% TO 44% STEP 2% : IF DOT(24%,E%+2%) ; CUR(8%,E%/2%)"" ELSE ; CUR(8%,E%/2%)" " 540 NEXT E% : IF X%=1% ; CUR(8%,23%)"" ELSE ; CUR(8%,23%)" " 550 IF INP(56%)=216% AND B%>1% B%=B%-1% 560 IF INP(56%)=174% AND B%<27% B%=B%+1% 570 IF D%>0% D%=D%-1% 580 IF INP(56%)<>160% OR V%>0% 690 590 REM  SKJUT 600 OUT 6%,135% : D%=1% 610 FOR E%=A%-2% TO 0% STEP -1% : IF NOT DOT(E%*3%+4%,B%*2%) ; CUR(E%+1%,B%)" " 620 IF DOT(E%*3%,B%*2%+1%) 670 630 IF DOT(E%*3%+1%,B%*2%) 650 640 ; CUR(E%,B%)"j" 650 NEXT E% : ; CUR(0%,B%)" " 660 GOTO 690 670 OUT 6%,9% : ; CUR(E%,B%)CHR$(RND*31%+33%)CUR(E%+1%,B%)" "; : S3%=S3%+1% : IF E%<6% AND B%<17% AND B%>14% 820 680 REM  SUPERBOMBFALL 690 OUT 6%,0% : IF V%>0% 890 700 ; CUR(A1%,H%)" " : FOR E%=A% TO 13% STEP -1% : IF DOT(E%*3%-2%,H%*2%) ; CUR(E%,H%)"\" ELSE ; CUR(E%,H%)" " 710 NEXT E% 715 IF DOT(A%*3%+1%,H%*2%) AND B%H%-2% A$="DU AVLED AV EN SUPERBOMB" : GOTO 760 ELSE ; CUR(12%,H%)" " 720 IF ABS(B%-H%)<3% AND RND16% AND ABS(H%-B%)>2% FOR E%=12% TO A% : ; CUR(E%,H%)" " : NEXT E% : GOTO 1170 740 GOTO 420 750 A$="DU F\RINTAS AVV[RMESTR]LNINGEN" 760 ; CUR(A1%,B1%)" "CUR(A1%+1%,B1%)" "CUR(A%,B%)"n$"CUR(A%+1%,B%)"#!"; : OUT 6%,9% 770 RESTORE 800 : FOR E%=1% TO 8% : READ X%,Y% : CLRDOT A%*3%+X%,B%*2%+Y% : FOR F%=0% TO 1000% : NEXT F% : NEXT E% 780 FOR E%=0% TO A% : ; CUR(E%,7%)" "CHR$(151%) : NEXT E% 790 OUT 6%,9% : ; CUR(20%,0%)A$CHR$(151%)CUR(20%,32%)S3% : OUT 6%,0% 800 DATA 3,0,2,1,1,2,3,1,1,0,3,2,1,1,0,1 810 ; CUR(21%,25%)CHR$(151%)CUR(22%,25%)CHR$(151%)CUR(20%,0%); : GOTO 1190 820 REM  SPELAREN HAR VUNNIT 830 FOR E%=2% TO 5% : ; CUR(E%,14%)" " : FOR F%=0% TO 1000% : NEXT F% : NEXT E% 840 OUT 6%,255% : GET A$ : B=B+.1 : FOR E%=0% TO 10% : Y%(E%)=0% : NEXT E% 850 FOR E%=0% TO 4000% : NEXT E% 855 FOR E%=0% TO A% : ; CUR(E%,7%)" " : FOR F%=0% TO 500% : NEXT F% : NEXT E% 860 FOR E%=A% TO 22% : ; CUR(E%-1%,B%)" "CUR(E%,B%)"n$"CUR(E%+1%,B%)"#!"; : FOR F%=0% TO 400% : NEXT F% : NEXT E% 870 OUT 6%,135% : V%=1% : D%=0% : A%=22% : W%=Q%+1% : GOTO 420 880 REM  SUBRUTIN OM V%>1% 890 IF V%=2% 1130 900 FOR F%=0% TO Q% 910 IF INP(56%)<>160% 930 920 IF D%<>0% 930 ELSE OUT 6%,135% : D%=5% : FOR E%=0% TO Q% : IF INT(Y%(E%))/2%=B% 1010 ELSE NEXT E% 930 IF Y%(F%)>0% CLRDOT X%(F%),Y%(F%) : X%(F%)=X%(F%)+X1%(F%) : Y%(F%)=Y%(F%)+Y1%(F%) : GOTO 960 940 IF Y%(F%)=-1% 960 ELSE OUT 6%,251% 950 X%(F%)=INT(RND*60%) : Y1%(F%)=INT(RND*2%)*4%-2% : X1%(F%)=3% : IF Y1%(F%)=-2% Y%(F%)=56% ELSE Y%(F%)=2% 960 IF X%(F%)>65% AND B%=INT(Y%(F%)/2%) OR X%(F%)>65% AND B%+1%=INT(Y%(F%)/2%) A$="EN DOT TR[FFADE DIG" : GOTO 760 970 IF X%(F%)>68% Y%(F%)=0% 980 IF Y%(F%)>0% SETDOT X%(F%),Y%(F%) 990 NEXT F% : GOTO 420 1000 REM  TR[FF AV DOTFARKOST 1010 ; CUR(X%(E%)/3%,Y%(E%)/2%-1%)",9<"CUR(X%(E%)/3%,Y%(E%)/2%)"d"CUR(X%(E%)/3%+1%,Y%(E%)/2%)"i" 1020 OUT 6%,9% : FOR X%=0% TO 1000% : NEXT X% : OUT 6%,0% 1025 ; CUR(X%(E%)/3%,Y%(E%)/2%-1%)" "CUR(X%(E%)/3%,Y%(E%)/2%)" " 1030 ; CUR(X%(E%)/3%+1%,Y%(E%)/2%)" " 1040 REM IF Y%(1%)/2%=B% OR Y%(1%)/2%=B%+1% Y%(1%)=-1% ELSE Y%(0%)=-1% 1050 Y%(E%)=-1% : W%=W%-1% : IF W%>0% 930 1060 S3%=S3%+1% 1070 ; CUR(3%,33%)" [R "CUR(4%,32%)"BESEGRAD"CUR(2%,38%)" "CUR(20%,0%) 1080 FOR E%=0% TO 3000 : NEXT E% 1085 FOR E%=0% TO 200% : OUT 6%,0% : OUT 6%,17% : FOR F%=0% TO 25% : NEXT F% : NEXT E% : OUT 6%,0% 1090 FOR E%=0% TO 12%+Q%*4% : ; CUR(RND*24%,RND*28%+1%)"O"; : NEXT E% 1100 ; CUR(0%,1%)"      " 1110 A=A+.02 : Q%=Q%+1% : FOR E%=0% TO Q% : Y%(E%)=0% : NEXT E% 1120 FOR E%=0% TO 3000% : NEXT E% : V%=2% : GOTO 420 1130 A%=A%-1% 1140 IF DOT(A%*3%,B%*2%) OR DOT(A%*3%,B%*2%+2%) A$="DU [R TOTALKVADDAD." : GOTO 760 1150 IF A%=0% V%=0% : Y%=0% : X%=0% : GOTO 200 1160 S3%=S3%+1% : OUT 6%,17% : GOTO 420 1170 IF H%=16% H%=B% ELSE H%=16% 1180 GOTO 420 1190 REM  SLUTSPELAT 1200 GET A$ : ; : ; "Tryck tangent f|r nytt spel."CHR$(151%) 1210 ; CUR(0%,0%)" Ett spel fr}n LT-data." 1220 ; : ; " VERSION 2.0"CHR$(151%) 1230 IF S4%