1 REM Ins{nt av 2839 10 REM ******************************** 20 REM * STJ[RNFALL * 60 REM ******************************** 70 ; CHR$(12) 80 ; CUR(0,0);CHR$(151);STRING$(39,44) 90 ; CUR(1,0);CHR$(151);STRING$(14,44);" STJ[RNFALL ";STRING$(13,44) 100 ; CUR(2,0);CHR$(151);STRING$(39,44) 110 ; TAB(1);"Detta {r spelet STJ[RNFALL.Det g}r ut" 111 ; "p} att du skall f}nga de 'stj{rnor' som faller ner fr}n "; 120 ; "'himlen'." 130 ; : ; TAB(1);"Till din hj{lp har du en stj{rnf}ngare som du kan styra till v{nster eller h|ger." 140 ; : ; TAB(1)"Du styr med f|ljande tangenter:" 141 ; " Z=V{nster " 142 ; " -=H|ger" 150 ; : ; TAB(1);"Om 'stj{rnan' tar p} kanten av f}ngaren studsar den antingen ner i f}ngaren" 151 ; " eller utanf|r ." 160 ; : ; TAB(1);"N{r du har f}ngat alla 'stj{rnor' har du vunnit." 170 ; CUR(23,1);"TRYCK p} RETURN n{r du l{st f{rdigt "; : GET V$ : ; CHR$(12) 180 ; CUR(0,0);CHR$(151);STRING$(39,44) 190 ; CUR(1,0);CHR$(151);STRING$(14,44);" STJ[RNFALL ";STRING$(13,44) 200 ; CUR(2,0);CHR$(151);STRING$(39,44) 210 ; CUR(4,1);"Det finns 10 olika sv}righetsgrader d{r 10 {r sv}rast och 1 {r l{ttast." 220 ONERRORGOTO 220 : ; : ; TAB(1);"VILKEN SV]RIGHETSGRAD \NSKAS (1-10)"; : INPUT Y1 230 IF Y1<1 OR Y1>10 THEN 220 ELSE Y=INT((1/Y1)*10) 240 ; CHR$(12) 250 C=0 : \%=0 : [%=0 : R1%=0 : U%=0 : Z1%=0 : DIM B%(40),Z%(40) : ; CHR$(12) 260 FOR I=1 TO 24 : ; : ; CHR$(151); : NEXT I 270 X%=36 : SETDOT 69,X% : FOR D%=0% TO 4% : SETDOT 70%,X%+D% : NEXT D% 280 SETDOT 69,X%+4 : SETDOT 68,X% : SETDOT 68,X%+4 290 RANDOMIZE 300 FOR I=5 TO 75 STEP 2 : Z1%=Z1%+1 : B%(Z1%)=I : Z%(Z1%)=INT(20*RND+1) : SETDOT Z%(Z1%),B%(Z1%) : NEXT I 310 FOR I=1 TO 2000 : NEXT I 320 D=D+1 : IF INP(56%) AND 128% 350 330 IF D<>Y THEN 320 340 D=0 : IF R1%<>1% 510 ELSE 470 350 IF D<>Y THEN D=D+1 : GOTO 350 ELSE D=0 : Q%=INP(56%)-128% 351 IF Q%=ASC('Z') OR Q%=ASC('z') A%=1% : GOTO 380 360 IF Q%=ASC('-') OR Q%=ASC('-') A%=2% : GOTO 380 370 IF R1%=1% 470 ELSE 320 380 CLRDOT 69%,X% : FOR D%=0% TO 4% : CLRDOT 70%,X%+D% : NEXT D% 390 CLRDOT 69%,X%+4% : CLRDOT 68%,X% : CLRDOT 68%,X%+4% 400 ON A% GOTO 410,420 410 X%=X%-1% : GOTO 430 420 X%=X%+1% 430 IF X%<2% X%=2% ELSE IF X%>75% X%=75% 440 SETDOT 69%,X% : FOR D%=0% TO 4% : SETDOT 70%,X%+D% : NEXT D% 450 SETDOT 69%,X%+4% : SETDOT 68%,X% : SETDOT 68%,X%+4% 460 IF R1%<>1% Y%=INT(24%*RND+1%) : IF Y%<>24% 320 ELSE C=C+1 : GOTO 520 470 CLRDOT \%,[% : \%=\%+1% : IF DOT(\%,[%) R1%=0% : U%=U%+1% : IF \%<>70% GOSUB 610 480 IF U%=36% 580 490 IF \%>=71% 540 ELSE SETDOT \%,[% 500 GOTO 320 510 RANDOMIZE : Y%=INT(12%*RND+1%) : IF Y%<>3% 320 ELSE C=C+1 520 R1%=1% : S%=36%*RND+1% : \%=Z%(S%) : [%=B%(S%) : IF NOT DOT(\%,[%) 520 530 OUT 6,0 : OUT 6,131 : GOTO 460 540 OUT 6,155 : ; CUR(9,12);CHR$(135);"DU TOG ";C-1;" STYCKEN !" : ; CUR(10,12);CHR$(135);"DU F\RLORAR!" 550 ; CUR(11,8);CHR$(135);"VILL DU SPELA IGEN (J/N) ?" : POKE 32168+35,255 : GET U$ 560 IF U$="J" OR U$="j" THEN 250 ELSE IF U$="N" OR U$="n" THEN END 570 GOTO 550 580 OUT 6,237 : ; CUR(10,12);CHR$(135);"DU VINNER !" 590 GOTO 550 600 END 610 GOSUB 730 : \%=\%-1% : FOR P%=1% TO 4% : GOSUB 720 : \%=\%-1 : GOSUB 730 : NEXT P% 620 W%=2%*RND+1% : ON W% GOTO 630,670 630 GOSUB 720 : GOSUB 740 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 640 GOSUB 720 : GOSUB 740 : GOSUB 750 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 : GOSUB 750 650 GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 660 IF [%=X%+2% 710 ELSE 540 670 GOSUB 720 : GOSUB 760 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 671 GOSUB 750 : GOSUB 730 : GOSUB 720 680 GOSUB 760 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 690 GOSUB 750 : GOSUB 730 : GOSUB 720 : GOSUB 750 : GOSUB 730 : GOSUB 720 700 IF [%<>X%+2% 540 710 RETURN 720 GOSUB 770 : CLRDOT \%,[% : RETURN 730 GOSUB 770 : SETDOT \%,[% : RETURN 740 [%=[%+1% : RETURN 750 \%=\%+1% : RETURN 760 [%=[%-1% : RETURN 770 FOR M=1 TO 20 : NEXT M : RETURN