10 REM SPIDER
20 BORDER 13 30 GOSUB 620 40 GOSUB 780 50 REM NEW PLAYER START 60 SCORE=0 70 REM NEW WAVE START 80 MODE 0 90 WAVE=WAVE+1 100 TM=300 110 GOSUB 840 120 GOSUB 940 130 X=15:Y=24 140 PEN 11 150 LOCATE X,Y:PRINT CHR$(251); 160 GOSUB 1080 170 TM=TM-6 180 LOCATE X,Y:GOSUB 740 190 IF DD<>251 AND DD<>206 OR TM=0 THEN GOTO 370 200 XX=X:YY=Y 210 IF INKEY(0)=0 THEN YY=Y-1 220 IF INKEY(1)=0 THEN XX=X+1 230 IF INKEY(2)=0 THEN YY=Y+1 240 IF INKEY(8)=0 THEN XX=X-1 250 IF X<1 OR X>20 OR Y>25 THEN GOTO 370 260 LOCATE XX,YY:GOSUB 740 270 IF DD=253 THEN GOTO 500 280 IF DD<>206 AND DD<>251 THEN GOTO 370 290 LOCATE X,Y 300 PEN 7 310 PRINT CHR$(206); 320 LOCATE XX,YY 330 PEN 11 340 PRINT CHR$(251); 350 X=XX:Y=YY 360 GOTO 160 370 REM DEAD 380 LOCATE 4,25:PEN 14 390 PRINT " SPLAT ! "; 400 LOCATE 3,10 410 PRINT " SCORE : ";SCORE 420 FOR Q=300 TO 450 STEP 50 430 SOUND 1,Q,50 440 SOUND 2,Q+15,45 450 SOUND 0,Q+30,40 460 NEXT Q 470 IF INKEY$="" THEN GOTO 470 480 IF INKEY$<>"" THEN GOTO 480 490 GOTO 60 500 REM SPIDER HAS REACHED THE WEB 510 SCORE=SCORE+TM 520 PEN 7 530 LOCATE 10,2 540 PRINT CHR$(206); 550 PEN 15 560 LOCATE 10,1:PRINT CHR$(251); 570 LOCATE 5,25:PRINT"WELL DONE" 580 LOCATE 3,10:PRINT" SCORE : ";SCORE 590 FOR Q=1 TO 500 600 SOUND 1,Q,1:NEXT Q 610 GOTO 70 620 REM MACHINE CODE 630 MEMORY &987F 640 MC=&A880 650 TA=&A8FF 660 POKE MC,&CD 670 POKE MC+1,&60 680 POKE MC+2,&BB 690 POKE MC+3,&32 700 POKE MC+4,&FF 710 POKE MC+5,&A8 720 POKE MC+6,&C9 730 RETURN 740 REM CHECK ON SCREEN USING MACHINE CODE ROUTINE 750 CALL MC 760 DD=PEEK(TA) 770 RETURN 780 REM DEFINE LORRY AND SPIDER CHARACTERS 790 SYMBOL 250,0,&77,&22,&7E,&BE,&7E,&22,&77 800 SYMBOL 251,&24,&99,&7E,&3C,&FF,&3C,&3C,&5A 810 SYMBOL 252,0,&E0,&40,&FE,&FF,&FE,&40,&E0 820 SYMBOL 253,&BD,&42,&BD,&B5,&AD,&BD,&42,&BD 830 RETURN 840 REM BUILD LORRY STRINGS 850 A$="" 860 FOR L=1 TO 5 870 A$=A$+CHR$(230)+STRING$(3,CHR$(206)) 880 NEXT L 890 B$="" 900 FOR L=1 TO 4 910 B$=B$+CHR$(252)+STRING$(4,CHR$(206)) 920 NEXT L 930 RETURN 940 REM FILL IN THE SCREEN 950 PEN 7 960 Q$=STRING$(20,CHR$(206)) 970 LOCATE 1,2 980 FOR L=1 TO 24 990 PRINT Q$; 1000 NEXT L 1010 LOCATE 1,1 1020 PEN 8 1030 PRINT STRING$(9,CHR$(250));" ";STRING$(10,CHR$(252)); 1040 PEN 13 1050 LOCATE 10,1 1060 PRINT CHR$(253); 1070 RETURN 1080 REM MOVE THE LORRIES 1090 PEN 9 1100 LOCATE 1,3 1110 PRINT A$ 1120 LOCATE 1,7 1130 PRINT A$ 1140 LOCATE 1,11 1150 PRINT A$ 1160 LOCATE 1,15 1170 PRINT A$ 1180 A$=RIGHT$(A$,19)+LEFT$(A$,1) 1190 PEN 7 1200 LOCATE 1,5 1210 PRINT B$ 1220 LOCATE 1,9 1230 PRINT B$ 1240 LOCATE 1,13 1250 PRINT B$ 1260 LOCATE 1,17 1270 PRINT B$ 1280 B$=RIGHT$(B$,1)+LEFT$(B$,19) 1290 RETURN |