10 REM : FUGITIF :
20 REM ***********
30 REM
40 REM C. Laurent BOUSQUET 1986
50 REM
60 DIM xsap(13):DIM ysap(13):DIM xtrace(400):DIM ytrace(400)
70 BORDER 1:PEN 1:INK 0,1:INK 1,24
80 REM --------------
90 REM REDEFINITION
100 REM --------------
110 SYMBOL AFTER 200
120 REM sapin
130 SYMBOL 201,0,0,0,0,16,40,84,170
140 sap$=CHR$(222)+CHR$(207)+CHR$(223)
150 SYMBOL 214,24,60,126,219,189,126,219,153
160 REM bonhommes
170 SYMBOL 202,24,126,56,60,24,60,90,90
180 SYMBOL 203,95,95,68,124,108,108,198,231
190 SYMBOL 204,24,126,56,60,24,60,90,114
200 SYMBOL 205,126,126,66,126,108,108,56,60
210 SYMBOL 208,24,126,28,60,24,60,90,90
220 SYMBOL 209,250,250,34,62,54,54,99,231
230 SYMBOL 210,24,126,28,60,24,60,90,78
240 SYMBOL 211,126,126,66,126,54,54,28,60
250 SYMBOL 212,24,126,36,36,24,60,102,66
260 SYMBOL 213,66,195,195,102,126,102,102,102
270 SYMBOL 215,0,104,76,72,82,119,127,119
280 SYMBOL 216,24,126,60,60,24,60,126,126
290 SYMBOL 217,126,255,255,126,126,102,102,102
300 SYMBOL 218,0,48,252,56,120,24,30,126
310 SYMBOL 219,126,79,73,79,79,127,227,231
320 REM voitures
330 SYMBOL 226,2,63,34,127,66,127,28,8
340 SYMBOL 227,0,192,32,255,1,255,56,16
350 car1$=CHR$(226)+CHR$(227)
360 SYMBOL 220,24,126,90,255,165,255,102,102
370 car2$=CHR$(220)
380 SYMBOL 224,0,3,4,255,128,255,28,8
390 SYMBOL 225,64,252,68,253,66,253,56,16
400 car3$=CHR$(224)+CHR$(225)
410 SYMBOL 228,3,4,60,126,126,126,60,0
420 SYMBOL 230,0,7,9,127,65,127,28,8
430 SYMBOL 231,0,192,32,252,2,254,56,16:SYMBOL 232,138,84,56,125,186,28,62,93:SYMBOL 233,0,98,54,28,28,54,98,0
440 car4$=CHR$(230)+CHR$(231)
450 REM ---------------
460 REM PRESENTATION 1
470 REM ---------------
480 MODE 2: CLS
490 LOCATE 30,2:PRINT "-------------------"
500 LOCATE 30,3:PRINT ":  F U G I T I F  :"
510 LOCATE 30,4:PRINT "-------------------"
520 LOCATE 3,7:PRINT "Vous vous etes evade de prison."
530 LOCATE 1,8:PRINT "Poursuivi par les policiers et traque par vos anciens complices,vous essayez de retrouver le butin de votre ancien vol, de l'ecouler et de vous enfuir ..."
540 LOCATE 30,11:PRINT "TABLEAU D'ENTRAINEMENT"
550 LOCATE 3,13:PRINT "Ce premier tableau est un entrainement au tir."
560 LOCATE 1,14:PRINT "Vous etes au centre de l'ecran et des cibles humaines apparaissent en haut, a   droite, en bas ou a gauche."
570 LOCATE 1,16:PRINT "Avec un maximun de 30 cartouches vous devez atteindre au moins 15 cibles sur 20."
580 LOCATE 1,17:PRINT "Pour atteindre celles-ci, il suffit de se tourner vers elles et de tirer."
590 LOCATE 25,19:PRINT "'A' ou ";CHR$(240);" : Vers le haut"
600 LOCATE 25,20:PRINT "'Z' ou ";CHR$(241);" : Vers le bas"
610 LOCATE 25,21:PRINT "'\' ou ";CHR$(243);" : Vers la droite"
620 LOCATE 25,22:PRINT "'/' ou ";CHR$(242);" : Vers la gauche"
630 LOCATE 25,23:PRINT "'ESPACE' : pour tirer"
640 LOCATE 20,25:PRINT "Appuyez sur une touche pour continuer";
650 FOR i=1 TO 20:f$=INKEY$:NEXT i
660 IF INKEY$="" THEN 660
670 REM ----------------------
680 REM Tableau d'entrainement
690 REM ----------------------
700 n1=216
710 MODE 1
720 INK 0,1:INK 1,20:INK 2,8:INK 3,15,24
730 PEN 3:LOCATE 9,3:PRINT "TABLEAU D'ENTRAINEMENT";:PEN 1
740 LOCATE 20,13:PRINT CHR$(216);:LOCATE 20,14:PRINT CHR$(217);
750 LOCATE 1,24:PRINT"taper sur une touche si vous etes pret";
760 FOR i=1 TO 20:f$=INKEY$:NEXT i
770 IF INKEY$="" THEN 770 ELSE LOCATE 1,24:PRINT STRING$(39," ");
780 FOR n=1 TO 20
790 h=INT(RND*4)+1
800 IF h=1 THEN n2=212:n3=216:xtu=20:ytu=8
810 IF h=2 THEN n2=208:n3=202:xtu=26:ytu=14
820 IF h=3 THEN n2=216:n3=212:xtu=20:ytu=20
830 IF h=4 THEN n2=202:n3=208:xtu=14:ytu=14
840 PEN 2:SOUND 1,200:LOCATE xtu,ytu-1:PRINT CHR$(n2);:LOCATE xtu,ytu:PRINT CHR$(n2+1);
850 PEN 1
860 FOR i=1 TO 40
870 a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
880 IF a$="\" THEN n1=202
890 IF a$="/" THEN n1=208
900 IF a$="A" THEN n1=216
910 IF a$="Z" THEN n1=212
920 LOCATE 20,13:PRINT CHR$(n1):LOCATE 20,14:PRINT CHR$(n1+1)
930 IF INKEY(47)<>0 OR ba>29 THEN 960
940 FOR m=300 TO 280 STEP -4:SOUND 1,m,5,(m-276)/4,,,1:NEXT m:ba=ba+1
950 IF n1=n3 THEN sc=sc+1:LOCATE xtu,ytu-1:pen 2:PRINT chr$(232);:FOR J=1 TO 80:NEXT J:GOTO 970
960 NEXT i
970 LOCATE xtu,ytu-1:PRINT " ";:LOCATE xtu,ytu:PRINT " ";
980 NEXT n
990 CLS:LOCATE 9,3:PRINT "TABLEAU D'ENTRAINEHENT";
1000 LOCATE 2,13:PRINT "Vous avez tire";ba;"fois et ",,"atteint";sc;"cibles"
1010 IF sc<15 THEN LOCATE 8,18:PRINT"Vous n'etes pas qualifie" ELSE LOCATE 10,18:PRINT"Vous etes qualifie"
1020 LOCATE 1,24:PRINT "Appuyez sur une touche pour continuer"
1030 FOR i=1 TO 60:b$=INKEY$:NEXT i
1040 IF INKEY$="" THEN 1040
1050 IF re2=1 THEN RETURN
1060 IF sc<15 THEN RUN
1070 score=(sc-15)*100
1080 REM --------------
1090 REM PRESENTATION 2
1100 REM --------------
1110 MODE 2
1120 INK 0,1:INK 1,24:BORDER 1:PEN 1
1130 LOCATE 34,4:PRINT "TABLEAU N.1"
1140 LOCATE 3,7:PRINT "Vous entrez maintenant dans la foret..."
1150 LOCATE 1,8:PRINT "Vous allez voir pendant un court instant une carte peu precise qui vous         indiquera l'emplacement du tresor."
1160 LOCATE 1,10:PRINT "Vous verrez une croix et entendrez un bip quand vous passerez a proximite de    celui ci.Pour creuser placer vous juste sur la croix et appuyez sur 'C'."
1170 LOCATE 1,12:PRINT "Quand vous aurez le tresor,la sortie vous sera indiquee."
1180 LOCATE 1,14:PRINT" Attention ! Certains de vos anciens complices se cachent derriere les sapinset sont prets a tirer.Aussi,des que vous les voyez depechez vous de degainer.";
1190 LOCATE 1,16:PRINT "Comme si cela n'etait pas suffisant ,une voiture de police apparaitra apres un  certain temps qui vous rattrapera vite si vous n'etes pas assez rapide."
1200 LOCATE 1,18:PRINT "Utiliser pour vous deplacer,vous retourner et tirer les memes touches qu'au     tableau precedent."
1210 LOCATE 25,22:PRINT "Patienter un instant..."
1220 REM ------
1230 REM CARTE
1240 REM ------
1250 FOR i=1 TO 12
1260 xsap(i)=INT(RND*35)+3
1270 ysap(i)=INT(RND*16)+6
1280 FOR a=1 TO i-1
1290 IF xsap(i)>xsap(a)-5 AND xsap(i)<xsap(a)+4 AND ysap(i)<ysap(a)+8 AND ysap(i)>ysap(a)-7 THEN 1260
1300 NEXT a
1310 NEXT i
1320 xtres=INT(RND*34)+6:ytres=INT(RND*20)+2
1330 FOR a=1 TO 12
1340 IF xtres>xsap(a)-2 AND xtres<xsap(a)+2 AND ytres<ysap(a)+2 AND ytres>ysap(a)-5 THEN 1320
1350 NEXT a
1360 LOCATE 20,22:PRINT "Appuyez sur une touche pour continuer"
1370 FOR i=1 TO 30:s$=INKEY$:NEXT i
1380 IF INKEY$="" THEN 1380 else SOUND 1,200
1390 MODE 1
1400 INK 1,9:INK 2,19:INK 3,1,6
1410 WINDOW #1,13,28,7,17:PAPER #1,2:CLS#1
1420 PLOT 200,136,0:DRAW 440,136:DRAW 440,288:DRAW 200,288:DRAW 200,136
1430 LOCATE 13,20:PEN 3:PRINT "CARTE DU TRESOR"
1440 PEN 1:PAPER 2
1450 FOR i=1 TO 12
1460 x=INT(xsap(i)/3)+14:y=INT(ysap(i)/2.5)+8
1470 LOCATE x,y-1:PRINT CHR$(214):LOCATE x,y:PRINT CHR$(214);
1480 NEXT i
1490 PEN 3
1500 LOCATE INT(xtres/3)+14,INT(ytres/2.5)+8:PRINT CHR$(233);
1510 FOR i=1 TO 2000:NEXT i
1520 INK 0,19:PAPER 0
1530 CLS
1540 PAPER #1,0
1550 BORDER 19
1560 INK 1,13
1570 INK 3,9
1580 FOR i=1 TO 40:LOCATE i,22:PRINT CHR$(143);:NEXT
1590 FOR i=1 TO 12
1600 LOCATE xsap(i),ysap(i)-4:PRINT CHR$(201);
1610 FOR a=ysap(i)-3 TO ysap(i)-1:LOCATE xsap(i)-1,a:PRINT sap$;:NEXT
1620 LOCATE xsap(i),ysap(i):PRINT CHR$(143);
1630 NEXT
1640 PEN 2
1650 FOR i=1 TO 15
1660 n=INT(RND*12)+1
1670 ytu=ysap(n)
1680 IF n>7 THEN xtu=xsap(n)-2 ELSE xtu=xsap(n)+2
1690 IF xtu>0 THEN LOCATE xtu,ytu:PRINT CHR$(143); ELSE 1660
1700 NEXT i
1710 PEN 1
1720 WINDOW #1,1,40,23,25
1730 ym=INT(RND*20)+2:xm=1:xtrace(1)=1:ytrace(1)=ym
1740 xtrace(0)=1:ytrace(0)=1
1750 n1=202
1760 LOCATE 1,ym-1:PRINT CHR$(202);:LOCATE 1,ym:PRINT CHR$(203);
1770 FOR i=1 TO 20:f$=INKEY$:NEXT i
1780 Xtabl=1
1790 REM -----------
1800 REM TABLEAU N.1
1810 REM -----------
1820 a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
1830 IF a$="" THEN 2040
1840 IF a$=" " THEN FOR n=300 TO 280 STEP -4:SOUND 1,n,5,(n-276)/4,,,1:NEXT
1850 IF a$="\" AND xm=39 AND tres=1 AND ym=xs THEN score=score+1000:GOTO 2560
1860 IF a$="\" AND xm<40 AND TEST(xm*16+13,401-ym*16)<>3 AND TEST(xm*16+13,401-(ym-1)*16)<>3 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:xm=xm+1:nO=nO+2:n1=202
1870 IF a$="/" AND xm>1 AND TEST((xm-1)*16-3,401-ym*16)<>3 AND TEST((xm-1)*16-3,401-(ym-1)*16)<>3 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:xm=xm-1:nO=nO+2:n1=208
1880 IF a$="A" AND ym>2 AND TEST(xm*16-3,401-(ym-2)*16)<>3 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:ym=ym-1:nO=0:n1=216
1890 IF a$="Z" AND ym<22 AND TEST(xm*16-3,401-(ym+1)*16)<>3 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:ym=ym+1:nO=0:n1=212
1900 IF a$<>"C" OR tres=1 THEN 1950
1910 nO=0:n1=218
1920 IF xm=xtres AND ym<ytres+2 AND ym>ytres-1 THEN tres=1:SOUND 1,150:CLS#1:PRINT #1," Vous avez reussi a deterrer le tresor  mais parviendrez vous a vous enfuir ?": score=score+300
1930 IF xm=xtres AND ym<ytres+2 AND ym>ytres-1 THEN xs=INT(RND*20)+2:LOCATE 40,xs-1:PEN 3:PRINT CHR$(143);:LOCATE 40,xs:PRINT CHR$(143);:PEN 1:GOTO 1950
1940 CLS#1:PRINT#1,"Le tresor n'est pas la mais vous pouvez toujours creuser a cote ..."
1950 IF nO=4 THEN nO=0
1960 LOCATE xm,ym-1:PRINT CHR$(n1+nO);:LOCATE xm,ym:PRINT CHR$(n1+nO+1 );
1970 nt=nt+1:IF nt<47 THEN READ xnote:SOUND 1,xnote
1980 cn=cn+1:xtrace(cn)=xm:ytrace(cn)=ym
1990 IF TEST(xm*16-8,408-(ym-3)*16)=2 THEN GOSUB 2190
2000 IF TEST(xm*16-8,408-(ym+3)*16)=2 THEN GOSUB 2210
2010 IF TEST((xm-2)*16-8,408-ym*16)=2 THEN GOSUB 2250
2020 IF TEST((xm+2)*16+-8,408-ym*16)=2 THEN GOSUB 2230
2030 IF a$<>"A" AND a$< >"\" AND a$<>"/" THEN GOTO 2040 ELSE IF bom=0.5 THEN bom=0:LOCATE xbo,ybo:PRINT CHR$(132);
2040 IF nt<47 THEN 2130
2050 IF nt=47 THEN FOR i=100 TO 200 STEP 2:SOUND 1,i,5,5:NEXT i:nt=48 ELSE READ xnote:SOUND 2,xnote
2060 IF xnote=0 THEN RESTORE 2550
2070 IF TEST(xtrace(cc)*16+13,401-ytrace(cc)*16)=0 AND xtrace(cc)<40 THEN LOCATE xtrace(cc),ytrace(cc): PRINT"  ";: ELSE LOCATE xtrace(cc),ytrace(cc):PRINT" ";
2080 cc=cc+1:IF xtrace(cc)=xtrace(cc-1) OR TEST(xtrace(cc)*16+13,401-ytrace(cc)*16)<>0 OR xtrace(cc)=40 THEN LOCATE xtrace(cc),ytrace(cc):PRINT car2$;:GOTO 2100
2090 IF xtrace(cc)=xtrace(cc-1)+1 THEN LOCATE xtrace(cc),ytrace(cc):PRINT car1$; ELSE LOCATE xtrace(cc),ytrace(cc):PRINT car3$;
2100 IF xtrace(cc)<>xm OR ytrace(cc)<ym-1 OR ytrace(cc)>ym THEN 2130
2110 LOCATE xm,ym-1:PRINT" ";:LOCATE xm,ym:PRINT car2$
2120 CLS#1:PRINT#1," Pris par les flics! La prochaine fois   entrainez vous a la course":FOR n=300 TO 280 STEP -4:SOUND 1,n,5,(n-276)/4,,,1:NEXT:LOCATE xm,ym-1:PRINT " ";:GOTO 4870
2130 IF xm=xtres AND ym<ytres+2 AND ym>ytres-1 THEN 2150
2140 IF xm>xtres-3 AND xm<xtres+3 AND ym>ytres-3 AND ym<ytres+3 AND tres=0 THEN LOCATE xtres,ytres:PRINT CHR$(233);:SOUND 1,30,5
2150 GOTO 1790
2160 REM
2170 REM DUEL
2180 REM
2190 n2=212:xtu=xm:ytu=ym-3:n3=216
2200 GOTO 2260
2210 n2=216:xtu=xm:ytu=ym+3:n3=212
2220 GOTO 2260
2230 n2=208:xtu=xm+2:ytu=ym:n3=202:arb=3
2240 GOTO 2260
2250 n2=202:xtu=xm-2:ytu=ym:n3=208:arb=-1
2260 SOUND 1,50:PEN 3:LOCATE xtu,ytu-1:PRINT CHR$(n2);:LOCATE xtu,ytu:PRINT CHR$(n2+1);
2270 PEN 1
2280 FOR i=1 TO 50
2290 a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
2300 IF a$="\" THEN n1=202
2310 IF a$="/" THEN n1=208
2320 IF a$="A" THEN n1=216
2330 IF a$="Z" THEN n1=212
2340 LOCATE xm,ym-1:PRINT CHR$(n1):LOCATE xm,ym:PRINT CHR$(n1+1)
2350 IF n1=n3 AND INKEY(47)=0 THEN GOTO 2380
2360 NEXT i
2370 GOTO 2480
2380 FOR n=300 TO 280 STEP -4:SOUND 1,n,5,(n-276)/4,,,1:NEXT
2390 LOCATE xtu,ytu:PRINT" ";:LOCATE xtu,ytu-1:PRINT " ";
2400 nO=0
2410 LOCATE xm,ym-1:PRINT CHR$(n1+nO);:LOCATE xm,ym:PRINT CHR$(n1+nO+1);
2420 PEN 3
2430 IF arb<>0 THEN LOCATE xtu+arb,ytu:PRINT CHR$(215);:GOTO 2450
2440 IF TEST((xtu-2)*16-8,408-ytu*16)=3 THEN LOCATE xtu-1,ytu:PRINT CHR$(215); ELSE LOCATE xtu+3,ytu:PRINT CHR$(215);
2450 PEN 1:arb=0:nO=0:bal=bal-1
2460 score=score+50
2470 RETURN 
2480 FOR n=300 TO 280 STEP -4:SOUND 1,n,5,(n-276)/4,,,1:NEXT
2490 CLS#1:PRINT#1,"Vous n'etes pas encore assez rapide.":PRINT#1,"Entrainez vous."
2500 GOTO 4840
2510 REM --------------
2520 REM DATA - MUSIQUE
2530 REM --------------
2540 DATA 253,253,253,253,284,319,\
319,338,379,379,319,253,190,190,19\
0,190,213,239,239,253,284,284,253,\
239,253,233,253,201,239,253,253,28\
4,313,319,338,379,338,338,338,338,\
313,338,379,379,379,379
2550 DATA 100,250,100,0
2560 REM ---------------
2570 REM PRESENTATION 3
2580 REM ---------------
2590 MODE 2
2600 INK 0,1:INK 1,24:BORDER 1:PEN 1
2610 LOCATE 34,4:PRINT "TABLEAU N.2"
2620 LOCATE 3,7:PRINT "Vous entrez maintenant dans la ville ..."
2630 LOCATE 1,8:PRINT "Vous devez ecouler les diamants que vous venez de recuperer."
2640 LOCATE 1,9:PRINT "Pour cela vous devez entrer dans les maisons et trouver deux acheteurs."
2650 LOCATE 3,11:PRINT "ATTENTION ! si vous tuez un de vos client,vous avez perdu car vous ne pourez plus ecouler vos diamants.D'autre part, certaines maisons renferment des bandits";
2660 LOCATE 1,14:PRINT "Si vous ne tirez pas rapidement,il vous tueront. Vous pouvez egalement decouvrirune bombe derrier la porte...Fuyez avant qu'elle n'explose."
2670 LOCATE 3,16:PRINT "Enfin,mefiez vous des voitures..."
2680 LOCATE 3,18:PRINT "Bonne chance !"
2690 LOCATE 20,22:PRINT "Appuyez sur une touche pour  continuer"
2700 FOR i=1 TO 40:f$=INKEY$:NEXT i
2710 IF INKEY$="" THEN 2710
2720 Xtabl=2
2730 REM ---------
2740 REM TABLEAU 2
2750 REM ---------
2760 RESTORE
2770 MODE 1
2780 INK 0,13:INK 3,9:INK 2,13:BORDER 13
2790 DIM Xentree(10)
2800 Xentr=INT(RND(1)*9)+1
2810 Xentre=INT(RND(1)*9)+1:IF Xentre=Xentr THEN 2810 ELSE Xentree(Xentr)=1:Xentree(Xentre)=1
2820 FOR i=1 TO 9:IF i<>Xentre AND i<>Xentr THEN Xentree(i)=INT(RND(2)*2)+2
2830 NEXT
2840 eno=0
2850 FOR i=1 TO 40:LOCATE i,22:PRINT CHR$(143);:NEXT
2860 WINDOW#1,1,40,23,25
2870 FOR i=4 TO 32 STEP 7
2880 WINDOW#2,i,i+5,2,7:PAPER#2,1:CLS#2
2890 NEXT i
2900 FOR i=5 TO 33 STEP 7
2910 PEN 3
2920 LOCATE i,4:PRINT CHR$(143);:LOCATE i+3,4:PRINT CHR$(143);
2930 PEN 3
2940 LOCATE i+1,6:PRINT CHR$(143);CHR$(143);
2950 LOCATE i+1,7:PRINT CHR$(143);CHR$(143);
2960 NEXT i
2970 FOR i=7 TO 28 STEP 7
2980 WINDOW#2,i,i+5,12,17:PAPER#2,1:CLS#2
2990 NEXT i
3000 FOR i=8 TO 29 STEP 7
3010 LOCATE i,14:PRINT CHR$(143);:LOCATE i+3,14:PRINT CHR$(143);
3020 PEN 3
3030 LOCATE i+1,16:PRINT CHR$(143);CHR$(143);
3040 LOCATE i+1,17:PRINT CHR$(143);CHR$(143);
3050 NEXT i
3060 PEN 1
3070 ym=INT(RND*20)+2:xm=1
3080 nO=0:n1=202
3090 LOCATE xm,ym-1:PRINT CHR$(n1+nO);:LOCATE xm,ym:PRINT CHR$(n1+nO+1);
3100 PEN 2
3110 FOR i=1 TO 7
3120 IF RND<0.5 THEN xp=0:xr=0:ELSE xp=3:xr=1
3130 IF xr=0 THEN yv=7 ELSE yv=INT(RND(2)*2)*5+12
3140 xv=INT(RND(1)*(4-xr))*7+10+xp
3150 LOCATE xv,yv:PRINT car2$;
3160 NEXT i
3170 PEN 1
3180  a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
3190 IF a$="" THEN 3330
3200 IF a$=" " THEN FOR n=300 TO 280 STEP -4:SOUND 1,n,5,(n-276)/4,,,1:NEXT:nO=0
3210 IF a$="\" AND xm<40 AND TEST(xm*16+13,401-ym*16)<>1 AND TEST(xm*16+13,401-(ym-1)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:xm=xm+1:nO=nO+2:n1=202
3220 IF a$="/" AND xm>1 AND TEST((xm-1)*16-3,401-ym*16)<>1 AND TEST((xm-1)*16-3,401-(ym-1)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:xm=xm-1:nO=nO+2:n1=208
3230 IF a$="A" AND TEST(xm*16-3,401-(ym-2)*16)=3 THEN GOTO 3650
3240 IF a$="A" AND ym>2 AND TEST(xm*16-3,401-(ym-2)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:ym=ym-1:nO=0:n1=216
3250 IF a$="Z" AND ym<22 AND TEST(xm*16-3,401-(ym+1)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:ym=ym+1:nO=0:n1=212
3260 IF nO=4 THEN nO=0
3270 LOCATE xm,ym-1:PRINT CHR$(n1+nO);:LOCATE xm,ym:PRINT CHR$(n1+nO+1);
3280 IF TEST(xm*16-3,369-ym*16)=2 THEN yc=ym+2:xc=xm:GOSUB 3350
3290 IF TEST(xm*16-3,353-ym*16)=2 THEN yc=ym+3:xc=xm:GOSUB 3350
3300 IF TEST(xm*16-3,449-ym*16)=2 THEN yc=ym-3:xc=xm:GOSUB 3500
3310 IF TEST(xm*16-3,465-ym*16)=2 THEN yc=ym-4:xc=xm:GOSUB 3500
3320 READ xnote:IF xnote=0 THEN RESTORE:GOTO 3320 ELSE SOUND 2,xnote,5
3330 GOTO 3180
3340 REM ------------------
3350 REM Voitures traversent
3360 REM -------------------
3370 SOUND 1,200:LOCATE xc,yc:PRINT car2$
3380 FOR i=1 TO 40
3390  a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
3400 IF a$="\" THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT " ";:xm=xm+1:n1=202:GOTO 3430
3410 IF a$="/" THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT " ";:xm=xm-1:n1=208:GOTO 3430
3420 NEXT
3430 LOCATE xm,ym-1:PRINT CHR$(n1);:LOCATE xm,ym:PRINT CHR$(n1+1);
3440 FOR i=1 TO 4:SOUND 1,50,4
3450 LOCATE xc,yc:PRINT " ";:yc=yc-1:LOCATE xc,yc:PRINT car2$;
3460 FOR g=1 TO 90:NEXT g
3470 NEXT
3480 IF xc=xm THEN 3630 ELSE LOCATE xc,yc:PRINT " ";
3490 RETURN
3500 SOUND 1,200:LOCATE xc,yc:PRINT car2$
3510 FOR i=1 TO 40
3520  a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
3530 IF a$="\" THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT " ";:xm=xm+1:n1=202:GOTO 3560
3540 IF a$="/" THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT " ";:xm=xm-1:n1=202:GOTO 3560
3550 NEXT i
3560 LOCATE xm,ym-1:PRINT CHR$(n1);:LOCATE xm,ym:PRINT CHR$(n1+1);
3570 FOR f=1 TO 4
3580 LOCATE xc,yc:PRINT" ";:yc=yc+1:LOCATE xc,yc:PRINT car2$;
3590 FOR g=1 TO 90:NEXT g
3600 NEXT f
3610 IF xc=xm THEN 3630 ELSE LOCATE xc,yc:PRINT " ";
3620 RETURN
3630 CLS#1:PRINT #1,"      Ecrase par une voiture ...":PRINT #1,"       Quelle fin horrible !"
3640 GOTO 4870
3650 REM -------------
3660 REM ENTREE MAISONS
3670 REM -------------
3680 eno=eno+1
3690 IF Xentree(eno)<>1 THEN 3940
3700 SOUND 1,500
3710 LOCATE xm,ym-1:PRINT" ";:LOCATE xm,ym:PRINT" ";
3720 IF TEST(xm*16-19,401-(ym-2)*16)=3 THEN xp=-1 ELSE xp=1
3730 FOR i=1 TO 400
3740 IF INKEY$=" " THEN FOR i=300 TO 280 STEP -4:SOUND 1,i,5,(i-276)/4,,,1:NEXT i:CLS#1:PRINT #1,"Vous avez tue la seule personne qui pouvait vous aider. Vous avez perdu.":GOTO 4870
3750 NEXT
3760 SOUND 1,500
3770 LOCATE xm+xp,ym-2:PRINT " ";:LOCATE xm+xp,ym-3:PRINT" ";
3780 LOCATE xm,ym-2:PRINT " ";:LOCATE xm,ym-3:PRINT " ";
3790 LOCATE xm,ym-1:PRINT CHR$(212);:LOCATE xm,ym:PRINT CHR$(213)
3800 trec=trec+1
3810 IF trec=1 THEN CLS#1:PRINT#1,"Vous avez vendu la moitie des diamants. Vous devez touver un autre acheteur.":GOTO 3180
3820 CLS#1:PRINT#1,"Vous avez vendu tous les diamants.Vous pouvez quitter la ville."
3830 FOR ic=3 TO xm STEP 2
3840 LOCATE ic-2,ym:PRINT"  ";
3850 LOCATE ic,ym:PRINT car4$;:SOUND 1,505,15,4,,,10:FOR i=1 TO 100:NEXT i:NEXT ic
3860 FOR i=1 TO 500:NEXT:SOUND 1,100:LOCATE xm,ym-1 :PRINT " ";:
3870 FOR ic=xm TO 39
3880 LOCATE ic-2,ym:PRINT" ";
3890 LOCATE ic,ym:PRINT car4$;:SOUND 1,505,15,4,,10:FOR i=1 TO 100:NEXT i
3900 NEXT ic
3910 score=score+2000
3920 GOTO 4240
3930 REM
3940 IF Xentree(enol)<>2 THEN 4160
3950 IF TEST(xm*16-19,401-(ym-2)*16)=3 THEN xp=-1 ELSE xp=1
3960 xb=xm:yb=ym-3
3970 LOCATE xm,ym-2:PRINT" ";:LOCATE xb,yb:PRINT CHR$(228);:LOCATE xm+xp,ym-2:PRINT " ";:LOCATE xm+xp,ym-3:PRINT " ";
3980 FOR i=1 TO 12
3990 SOUND 1,100,2
4000  a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
4010 IF a$="\" AND xm<40 AND TEST(xm*16+10,406-ym*16)<>1 AND TEST(xm*16+13,401-(ym-1)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT " ";:xm=xm+1:nO=nO+2:n1=202
4020 IF a$="/" AND xm>1 AND TEST((xm-1)*16-6,406-ym*16)<>1 AND TEST((xm-1)*16-3,401-(ym-1)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:xm=xm-1:nO=nO+2:n1=208
4030 IF a$="A" AND ym>2 AND TEST(xm*16-6,406-(ym-2)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:ym=ym-1:nO=0:n1=216
4040 IF at="Z" AND ym<22 AND TEST(xm*16-6,406-(ym+1)*16)<>1 THEN LOCATE xm,ym-1:PRINT " ";:LOCATE xm,ym:PRINT" ";:ym=ym+1:nO=0:n1=212
4050 IF nO=4 THEN nO=0
4060 LOCATE xm,ym-1:PRINT CHR$(n1+nO);:LOCATE xm,ym:PRINT CHR$(n1+nO+1);
4070 NEXT i
4080 FOR m=336 TO 272 STEP -4:SOUND 1,m,5,(m-268)/8,,,20:NEXT m
4090 LOCATE xb,yb:PRINT" ";
4100 IF xm<xb+3 AND xm>xb-3 AND ym<yb+6 AND ym>yb-2 THEN 4120
4110 score=score+100:GOTO 3180
4120 LOCATE xm,ym:PRINT" ";:LOCATE xm,ym-1:PRINT" ";
4130 CLS#1:PRINT#1,"Dechiquete par une bombe ... Que c'est    triste!!!"
4140 GOTO 4870
4150 REM
4160 IF TEST(xm*16-19,401-(ym-2)*16)=3 THEN xp=-1 ELSE xp=1
4170 LOCATE xm,ym-1:PRINT CHR$(216);:LOCATE xm,ym:PRINT CHR$(217);
4180 LOCATE xm,ym-2:PRINT CHR$(213);:LOCATE xm,ym-3:PRINT CHR$(212);:LOCATE xm+xp,ym-2:PRINT" ";:LOCATE xm+xp,ym-3:PRINT " ";
4190 FOR i=1 TO 90
4200 IF INKEY$=" " THEN FOR m=300 TO 280 STEP -4:SOUND 1,m,5,(m-276)/4,,,1:NEXT m:LOCATE xm,ym-2:PRINT " ";:LOCATE xm,ym-3:PRINT " ";:GOTO 3180
4210 NEXT i
4220 LOCATE xm,ym:PRINT" ";:LOCATE xm,ym-1:PRINT" ";
4230 GOTO 2480
4240 REM -------------
4250 REM PRESENTATION 4
4260 REM -------------
4270 MODE 2
4280 INK 0,1:BORDER 1
4290 LOCATE 34,4:PRINT "TABLEAU N.2"
4300 LOCATE 3,7:PRINT "Vous etes parvenu a vendre vos diamants. "
4310 LOCATE 1,8:PRINT "Vous avez maintenant assez d'argent. pour vous enfuir par les airs ..."
4320 LOCATE 1,9:PRINT "Vous entrez donc dans un aeroport ou vous attend un avion."
4330 LOCATE 3,11:PRINT "Dernier obstacle: une rangee de tueur. "
4340 LOCATE 3,12:PRINT "Vous pouvez seulement avancer ou reculer et vous devez bien sur eviter les     balles.Sachez tout de meme que le tueur qui s'apprete a tirer change de couleur auparavant."
4350 LOCATE 1,16:PRINT "La victoire est au fond de l'aeroport.Mais parviendrez vous a l'avion ?..."
4360 LOCATE 10,22:PRINT "Tapez une touche pour continuer"
4370 FOR d=1 TO 30:d$=INKEY$:NEXT d
4380 IF INKEY$="" THEN 4380
4390 Xtabl=3
4400 REM ----------
4410 REM TABLEAU N,3
4420 REM ----------
4430 MODE 1
4440 INK 0,13:BORDER 13:INK 2,0:INK 1,19
4450 PLOT 579,70,2:DRAW 580,170:DRAW 581,70
4460 PLOT 579,100:DRAW 560,135:DRAW 568,280:DRAW 580,330:DRAW 592,280:DRAW 600,135:DRAW 581,100
4470 PLOT 568,280:DRAW 592,280:PLOT 572,300:DRAW 588,300
4480 PLOT 560,170:DRAW 525,155:DRAW 566,255:PLOT 600,170:DRAW 635,155:DRAW 594,255
4490 PLOT 580,220:DRAW 580,240:PLOT 576,288:DRAW 576,292:PLOT 584,288: DRAW 584,292
4500 FOR i=5 TO 24 STEP 3
4510 LOCATE i,5:PRINT CHR$(212);:LOCATE i,6:PRINT CHR$(213);
4520 NEXT i 
4530 LOCATE 1,11:PRINT CHR$(202);:LOCATE 1,12:PRINT CHR$(203);
4540 LOCATE 28,11:PRINT STRING$(7,CHR$(158));:LOCATE 28,12:PRINT STRING$(7,CHR$(155));
4550 xm=1:n1=202:tir1=17
4560  a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
4570 IF a$="\" AND xm=34 THEN 4710
4580 IF a$="\" AND xm<34 THEN LOCATE xm,11:PRINT " ";:LOCATE xm,12:PRINT " ";:xm=xm+1:nO=nO+2:n1=202
4590 IF a$="/" AND xm>1 THEN LOCATE xm,11:PRINT" ";:LOCATE xm,12:PRINT" "; :xm=xm-1:nO=nO+2:n1=208
4600 IF nO=4 THEN nO=0
4610 LOCATE xm,11:PRINT CHR$(n1+nO);:LOCATE xm,12:PRINT CHR$(n1+nO+1);
4620 nti=nti+1
4630 IF nti=2 THEN nti=0:GOTO 4560
4640 FOR m=300 TO 290 STEP -4:SOUND 1,m,5,(m-276)/4,,,1:NEXT m
4650 IF tir1=xm THEN 4830
4660 FOR b=8 TO 17 STEP 2:LOCATE tir1,b:PRINT CHR$(144);:FOR i=1 TO 15:NEXT i:LOCATE tir1,b:PRINT " ";:NEXT b:LOCATE tir1,b:PRINT " ";:LOCATE tir1,5:PRINT CHR$(212):LOCATE tir1,6:PRINT CHR$(213)
4670 tir1=INT(RND(1)*7)*3+5
4680 PEN 2:LOCATE tir1,5:PRINT CHR$(212):LOCATE tir1,6:PRINT CHR$(213):PEN 1
4690 GOTO 4560
4700 END
4710 LOCATE xm,11:PRINT" ";:LOCATE xm,12:PRINT" ";
4720 SOUND 1,200,10,7:SOUND 1,300,10,7:SOUND 1,400,10,7:SOUND 1,200,10,7
4730 LOCATE 5,12:PRINT "FELICITATIONS !!!"
4740 LOCATE 5,14:PRINT "Vous avez gagne "
4750 WINDOW#1,30,40,1,25
4760 FOR i=5 TO 35:IF i/2=INT(i/2) THEN PRINT#1,CHR$(10):FOR c=1 TO 30:NEXT c
4770 SOUND 1,200,20,i/5,,,10:NEXT i
4780 FOR i=5 TO 20:IF i/2=INT(i/2) THEN PRINT#1,CHR$(10):FOR c=1 TO 30:NEXT c
4790 SOUND 1,200,20,7,,,10:NEXT
4800 score=score+3000
4810 GOTO 4960
4820 FOR i=5 TO 35:PRINT#1,CHR$(10):FOR c=1 TO 30:NEXT c:SOUND 1,200,20,i/5,,,10:NEXT i:FOR i=5 TO 20:SOUND 1,200,20,7,,,10:NEXT i
4830 FOR b=8 TO 12:LOCATE tir1,b:PRINT CHR$(144);:FOR i=1 TO 15:NEXT i:LOCATE tir1,b:PRINT " ";:NEXT b
4840 REM -------------------
4850 REM FIN DE PARTIE
4860 REM -------------------
4870 xv1=xm:xv2=xm:yv1=ym:yv2=ym
4880 INK 2,0:BORDER 0
4890 WINDOW#2,xv1,xv2,yv1,yv2:PAPER#2,2: CLS#2
4900 IF xv1>1 THEN xv1=xv1-1
4910 IF xv2<40 THEN xv2=xv2+1
4920 IF yv1>1 THEN yv1=yv1-1
4930 IF yv2<22 THEN yv2=yv2+1
4940 IF xv1=1 AND xv2=40 AND yv1=1 AND yv2=22 THEN WINDOW #2,xv1,xv2,yv1,yv2:PAPER#2,2:CLS#2:GOTO 4960
4950 FOR k=1 TO 20:NEXT k:GOTO 4890
4960 FOR k=1 TO 500:NEXT k
4970 MODE 1:BORDER 12
4980 INK 2,8:PEN 2
4990 LOCATE 13,6:PRINT STRING$(16,"$")
5000 LOCATE 13,14:PRINT STRING$(16,"$")
5010 FOR i=7 TO 13:LOCATE 13,i:PRINT "$";:LOCATE 28,i:PRINT "$";:NEXT i
5020 PEN 1:LOCATE 15,9:PRINT "TABLEAU :";Xtabl
5030 LOCATE 15,11:PRINT "SCORE :";score
5040 LOCATE 8,20:PRINT "Voulez-vous rejouer ? (O/N)"
5050  a$=INKEY$:if a$<>"" then IF ASC(a$)>239 AND ASC(a$)<244 THEN a$=MID$("AZ/\",ASC(a$)-239,1) ELSE a$=UPPER$(a$)
5060 IF a$="O" THEN RUN ELSE IF a$<>"N" THEN 5050
5070 CLS:END 