10 REM MOTOCROSS
20 REM PAUL STANLEY. 25 REM PAN BOOKS 1984 30 MODE 1:INK 0,0:INK 1,24:INK 2,20:INK 3,6:WINDOW #1,1,40,1,25:PAPER #1,0:PEN #1,1:CLS #1 40 GOSUB 930 50 HS=0: WR=4 60 GOSUB 670 70 GOSUB 790 80 CLS #1:WINDOW #0,5,36,1,25:PAPER #0,0:PEN #0,1:CLS #0 90 GOSUB 330 100 TIM=TIME 110 SOUND 1,120,3 120 PEN 3:TS=INT((TIME-TIM)/300):LOCATE 27,1:PRINT MID$(STR$(TS),2);:LOCATE X+1,Y+1:PEN 3:PRINT" ";CHR$(231);:PEN 1 130 FOR F=1 TO S:NEXT 140 X=X+1:IF X=31 THEN LOCATE 32,Y+1:PRINT" ":X=0:Y=Y+5:IF Y=25 THEN GOTO 270 150 LOCATE X+2,Y+1:CALL 360:K=PEEK(367):IF K<>32 THEN GOSUB 210 160 IF INKEY(9)=0 THEN 220 170 IF INKEY(1)=0 THEN S=S+1 180 IF INKEY(8)=0 THEN S=S-1 190 IF S<1 THEN S=1 200 GOTO 120 210 IF INKEY(9)=0 THEN GOTO 240 220 C=231:FOR F=X TO 30:TS=INT((TIME-TIM)/300):LOCATE 27,1:PRINT MID$(STR$(TS),2);:LOCATE F+1,Y+1:PRINT" ";CHR$(C):FOR Z=1 TO 100:NEXT:C=C-(C<234)-(3 AND C=234):SOUND 1,90,3:NEXT F 230 CLS:PEN 2:PRINT"Bad luck! You crashed.":PEN 1:GOTO 840 240 LOCATE X+1,Y+1:PRINT" ";:LOCATE X+2,Y:PEN 3:PRINT CHR$(231);:PEN 1 250 FOR f=-15 TO 15:SOUND 1,(f+100),3:NEXT 260 LOCATE X+2,Y:PRINT" ";:LOCATE X+3,Y+1:PEN 3:PRINT CHR$(231):X=X+2:PEN 1:RETURN 270 REM 280 CLS 290 LOCATE 1,2:PEN 2:PRINT"Your time was";:PEN 3:PRINT ts;:PEN 2:PRINT"seconds":PEN 1 300 IF TS>HS THEN PRINT:PRINT"That is a new fast time!":HS=TS 310 PEN 3:PRINT:PRINT"The best time is";:PEN 1:PRINT HS;:PEN 3:PRINT"Seconds.":PEN 1 320 GOTO 840 330 FOR G=21 TO 6 STEP -5:LOCATE (RND*20+7),G:PRINT CHR$(235);:LOCATE (RND*20+7),G:PRINT CHR$(235);:FOR F=0 TO 31:LOCATE F+1,G+1:PRINT" ":NEXT F,G 340 Y=5:X=0:S=20 350 RETURN 360 CLS #1:WINDOW #0,5,36,1,25:PAPER #0,0:PEN #0,1:BUSES =5:CLS #0 370 Y=5:X=0:S=10 380 LOCATE 12,1:PEN 3:PRINT BUSES;"BUSES":PEN 1 390 GOSUB 640 400 LOCATE X+1,Y+1:PEN 3:PRINT" ";CHR$(231);:PEN 1:SOUND 1,180,1 410 FOR F=1 TO S:NEXT 420 X=X+1:IF X=31 THEN LOCATE 32,Y+1:PRINT" ":X=0:Y=Y+5 430 LOCATE X+2,Y+1:CALL 360:K=PEEK(367):IF K<>32 THEN 490 440 IF INKEY(9)=0 THEN 490 450 IF INKEY(1)=0 THEN S=S+1 460 IF INKEY(8)=0 THEN S=S-1 470 IF S<1 THEN S=1 480 GOTO 400 490 LOCATE X+1,Y+1:PRINT" ";:LOCATE X+2,Y:PEN 3:PRINT CHR$(231);:PEN 1:SOUND 1,(S+100),4 500 LOCATE X+2,Y:PRINT" ";:LOCATE X+3,Y-1:PEN 3:PRINT CHR$(231):PEN 1:SOUND 2,(S+70),4 510 X=X+2:FOR F=X TO (X+20-S):SOUND 2,(S+100),4:LOCATE F+1,Y-1:PEN 3:PRINT " ";CHR$(231):PEN 1:NEXT F 520 LOCATE F+1,Y-1:PRINT" ";:LOCATE F+2,Y:PEN 3:PRINT CHR$(231):PEN 1:SOUND 1, (S+75),4 530 IF TEST((F+2)*16+62,65) <> 1 THEN 600 540 FOR X=F+1 TO 30:LOCATE X+1,Y:PEN 3:PRINT " ";CHR$(231);:PEN 1 550 SOUND 2,(S+100),4 560 LOCATE X+2,Y+1:CALL 360:K=PEEK(367):IF K=32 THEN LOCATE X+2,Y:PRINT " "; 570 NEXT X 580 CLS:BUSES=BUSES+1 590 GOTO 370 600 LOCATE F+2,Y:PRINT" ":C=231:FOR X=F+1 TO 31:SOUND 1,120,3:LOCATE X+1,Y+1:PRINT" ";CHR$(C):C=C-(C<234)-(3 AND C=234):NEXT 610 CLS:LOCATE 1,1:PEN 2:PRINT"You failed in your attempt at";:PEN 3:PRINT BUSES;:PEN 2:PRINT"BUSES.":PEN 1 620 IF BUSES-1>WR THEN PRINT:PRINT"However, your successeful jump over";:PEN 3:PRINT BUSES-1;:PEN 1:PRINT"Buses is a new world";:PRINT"record!!!!!":WR=BUSES-1 630 GOTO 840 640 FOR F=21 TO 6 STEP -5:FOR G=0 TO 31:LOCATE G+1,F+1:PRINT" ":SOUND 2,(F*2+150),2: NEXT G,F 650 LOCATE 5,21:PRINT CHR$(236);:FOR F=1 TO BUSES:PEN 2:PRINT CHR$(237);:PEN 1:NEXT F:PRINT CHR$(238);CHR$(239);CHR$(240) 660 RETURN 670 SYMBOL AFTER 230 680 SYMBOL 231,32,62,50,254,152,90,231,66 690 SYMBOL 232,2,119,82,92,124,242,23,26 700 SYMBOL 233,66,231,90,25,127,76,124,4 710 SYMBOL 234,88,232,79,62,58,74,238,64 720 SYMBOL 235,0,0,0,0,0,32,112,248 730 SYMBOL 236,1,3,7,15,31,63,127,255 740 SYMBOL 237,126,66,126,126,66,126,126,36 750 SYMBOL 238,224,252,255,255,255,255,255,255 760 SYMBOL 239,0,0,128,240,254,255,255,255 770 SYMBOL 240,0,0,0,0,0,192,248,255 780 RETURN 790 A$="MOTOCROSS":LOCATE 16,25:PEN 3:PRINT A$;:PEN 1:FOR F=1 TO 9:FOR G=24 TO 1 STEP -1:SOUND 2,(G*F*3),3:LOCATE F+15,G:PEN 2:PRINT MID$(A$,F,1):PEN 1:LOCATE F+15,G+1:PRINT" ":NEXT G,F 800 FOR F=1 TO 39:SOUND 1,120,3:SOUND 1,90,5:SOUND 1,180,4:SOUND 1,220,4:LOCATE F+1,3:PRINT " ";CHR$(231);:NEXT:LOCATE 1,4:PRINT" " 810 LOCATE 1,5:PRINT"This program consists of two Motorbike games." 820 PEN 3:PRINT:PRINT"For [Moto-cross],jump with COPY key onlywhen you reach the obstacle":PEN 1 830 PRINT:PRINT"For both programs, acceleration and deceleration are both possible by holding left and right cursor arrow keys" 840 PEN 3:LOCATE 1,16:PRINT CHR$(24);" 1....Moto-cross ";CHR$(24):PEN 1 850 LOCATE 1,18:PRINT CHR$(24);" 2....Stunt-cycle ";CHR$(24):PEN 1 860 PEN 3:LOCATE 1,20:PRINT CHR$(24);" 3....To quit ";CHR$(24):PEN 1 870 PEN 2:LOCATE 1,23:PRINT CHR$(24);" SELECT YOUR OPTION (1-3)";CHR$(24);:PEN 1 880 A$=INKEY$:IF A$<"1"OR A$>"3" THEN 880 890 IF A$="1" THEN 80 900 IF A$="2" THEN 360 910 IF A$="3" THEN STOP 920 GOTO 880 930 RESTORE 940:FOR X=360 TO 366:READ A:POKE X,A:NEXT:RESTORE:RETURN 940 DATA 205,96,187,50,111,1,201 |