10 " " WAIT 0: RANDOM : RADIAN : CLS : PRINT " STAR WARS": PRINT CHR$ 16;: CALL &68B5,$1,c&5DA8,D: PRINT " soft 1987 30 CURSOR 2,2: INPUT "Musique :";Z$:Z=( ASC Z$=79): CLS 40 CURSOR 5,1: PRINT "STAR WARS GAME": CALL &68B5,V,MZ*&10FF,MZ*&20FF,MZ*&10FF: GOSUB 1400 100 CLS : CURSOR 15,0: PRINT "Hi score": CURSOR 16,1: PRINT D 110 CURSOR 20,2: PRINT "TIME": LINE (0,0)-(90,31),BF:C=0,EE=0,F=3,G=0,O=0,U=100: FOR X=0 TO 25 115 PRESET ( RND 90, RND 31): NEXT X: LINE (41,12)-(49,17),BF 117 LINE (41,16)-(41,14),R: LINE (49,16)-(49,14),R 118 LINE (42,15)-(43,15),R: LINE (48,15)-(47,15),R: CALL &68B5,m&5DA8 120 GOSUB 1300:X= RND 82+1,Y= RND 23+1 130 FOR A=U TO 0 STEP -1: IF G=1 THEN 2140 140 IF F<0 LET O=O+20,F= RND 4-1 150 CALL &68B5,r&5DA8: CURSOR 20,3: PRINT A: CALL &68B5,m&5DA8 180 CALL &68B5,r&5DA8: GOSUB 600: CALL &68B5,MZ*&10:V=0,W=0,B$= INKEY$ 190 IF B$="5" CALL &68B5,M&FF02*Z: GOSUB 700: GOSUB 1300: ON RR GOTO 240,300 200 IF B$="2" LET W=-3 210 IF B$="4" LET V=5 220 IF B$="6" LET V=-5 230 IF B$="8" LET W=3 240 IF F=0 GOSUB 1100: IF G=1 THEN 300 250 X=X+V+ RND 8-4,Y=Y+W+ RND 4-2 260 X=X-1,Y=Y-1,X=X*(X>1),Y=Y*(Y>1),X=X-83,Y=Y-24,X=X*(X<1)+83,Y=Y*(Y<1)+24 300 NEXT A: IF G<>1 AND O>0 LET U=0,O=0: GOTO 130 310 LINE (96,0)-(148,30),R,BF: LINE (0,0)-(90,31),BF: RESTORE 2100:LL=0 320 READ M,N: CALL &68B5,M&FF02*Z: LINE (M,N)-(M+4,N),R 330 FOR G=0 TO 40: READ M,N: LINE -(M,N),R: NEXT G: CALL &68B5,M&FF02*Z 340 FOR G=0 TO 6: LINE (45,15)-(45+50* COS LL,15+50* SIN LL),R 350 IF LL<> PI /2 LINE (45,15)-(45-50* COS LL,15+50* SIN LL),R 360 IF LL<>0 LINE (45,15)-(45-50* COS LL,15-50* SIN LL),R 370 IF LL<>0 AND LL<> PI /2 LINE (45,15)-(45+50* COS LL,15-50* SIN LL),R 380 LL=LL+ PI /12: CALL &68B5,M&A005*Z: NEXT G 400 GOSUB 1400: CLS : CURSOR 4,0: PRINT "GAME OVER": GOSUB 1400 410 IF C>D BEEP Z:T=S,S=D,D=C,R$=L$,L$=E$: INPUT "Votre nom :";E$: GOTO 440 420 IF C>S BEEP Z:T=S,S=C,R$=L$: INPUT "Votre nom :";L$: GOTO 440 430 IF C>T BEEP Z:T=C: INPUT "Votre nom :";R$ 440 CLS : PRINT "1er ";E$;"...";D: PRINT "2em ";L$;"...";S: PRINT "3em ";R$;"...";T: GOSUB 1400 450 CURSOR 3,3: PRINT "Votre score :";C: GOSUB 1400 460 CURSOR 1,3: PRINT "Encore :":EE=0 470 EE=EE+1:B$= INKEY$ : IF B$<>"" BEEP Z: GOTO 490 480 IF EE<200 THEN 470 490 IF B$="O" THEN 100 500 END 600 IF F=0 THEN 630 610 PSET (X,Y),X: PSET (X,Y+6),X 620 PSET (X+6,Y),X: PSET (X+6,Y+6),X: GOTO 650 630 PSET (X+1,Y),X: PSET (X+1,Y+6),X 640 PSET (X+5,Y),X: PSET (X+5,Y+6),X: PSET (X+3,Y+3),X 650 LINE (X,Y+1)-(X,Y+5),X: LINE (X+6,Y+1)-(X+6,Y+5),X 660 LINE (X+1,Y+3)-(X+5,Y+3),X 670 LINE (X+2,Y+2)-(X+4,Y+2),X: LINE (X+2,Y+4)-(X+4,Y+4),X: RETURN 700 RR=1: FOR G=0 TO 5:EE=EE*(EE<1) 710 IF EE=0 LINE (1,30)-(40,17),X: LINE (89,30)-(50,17),X 720 IF EE=1 LINE (1,1)-(40,13),X: LINE (89,1)-(50,13),X 730 IF RR=2 LET RR=0,EE=EE+1 740 RR=RR+1: NEXT G:RR=1 750 IF F>0 THEN 790 760 IF X<40 OR X>44 OR Y<11 OR Y>13 THEN 800 770 IF X=42 LET C=C+10 780 IF X=12 LET C=C+10 790 IF POINT (44,15)=0 OR POINT (45,15)=0 OR POINT (46,15)=0 GOSUB 900 800 C=C-5:C=C*(C>0) 810 RETURN 900 RESTORE 2000:B=0,F=F-1,RR=2: IF X<40 OR X>44 OR Y<11 OR Y>13 LET C=C-5 910 IF X<42 AND Y>11 LET B=1,X=X+6 920 IF X>41 AND Y<12 LET B=2,Y=Y+6 930 IF X<42 AND Y>12 LET B=3,X=X+6,Y=Y+6 940 FOR G=0 TO 6: READ H,I,J,K: ON B GOTO 960,970,980 950 H=H+X,I=I+Y,J=J+X,K=K+Y: GOTO 990 960 H=X-H,I=I+Y,J=X-J,K=K+Y: GOTO 990 970 H=H+X,I=Y-I,J=J+X,K=Y-K: GOTO 990 980 H=X-H,I=Y-I,J=X-J,K=Y-K 990 LINE (H,I)-(J,K),R,B: LINE (H,I)-(J,K),B: CALL &68B5,M&8010*Z: NEXT G 995 IF F<0 LET C=C+4+ RND 6 1000 C=C+19+ RND 6,X= RND 82+1,Y= RND 23+1: RETURN 1100 B=0,RR=0: IF X<38 OR X>46 OR Y<9 OR Y>15 LET RR=1 1110 P= RND 90,Q= RND 15 1120 FOR G=0 TO 1: IF B=1 THEN 1200 1130 IF P>46 THEN 1160 1140 LINE (X+3,Y+3)-(P,0),X: LINE (X+3,Y+3)-(89-P,0),X 1150 LINE (X+3,Y+3)-(89-P,31),X: GOTO 1180 1160 LINE (X+3,Y+3)-(0,Q),X: LINE (X+3,Y+3)-(90,Q),X 1170 LINE (X+3,Y+3)-(90,31-Q),X: LINE (X+3,Y+3)-(0,31-Q),X 1180 IF G=1 OR RR=0 THEN 1200 1190 IF POINT (44,15)=0 OR POINT (45,15)=0 OR POINT (46,15)=0 LET B=1 1200 NEXT G:G=B: RETURN 1300 CALL &68B5,r&5DA8: CURSOR 15,3: PRINT C: CALL &68B5,m&5DA8: RETURN 1400 FOR G=0 TO 150: NEXT G: RETURN 2000 DATA 0,0,4,4,0,2,4,6,3,3,6,6,3,0,6,3,1,1,5,5,2,2,4,4,3,3,3,3 2100 DATA 43,11,50,13,53,12,53,9,50,10 2102 DATA 50,13,63,7,63,5,65,5,65,6,50,15,65,24,65,25 2110 DATA 63,25,63,23,50,17,50,20,53,21,53,18,50 2112 DATA 17,47,19,43,19,40,17,37,18,37,21,40 2120 DATA 20,40,17,27,23,27,25,25,25,25,24,40 2122 DATA 15,25,6,25,5,27,5,27,7,40,13,40,10,37 2130 DATA 9,37,12,40,13,43,11 2140 CURSOR 20,3: PRINT A: NEXT A: GOTO 310