1 '***********************************
2 '* MICHEL BOISBRUN PRESENTE * 3 '* WAR-BLOCK 2 (juin/juillet 85) * 4 '* Granges Les Valence (Ardeche) * 5 '*********************************** 6 ' 10 POKE 20000,255 20 POKE 30000,0 30 SYMBOL AFTER 32:SYMBOL 128,8,28,56,115,254,120,72,140 40 GOTO 1000 50 ' 60 '*** PLACEMENT DES MURS *** 70 ' 80 R=PEEK(20000):DIM Z(40,24):CLS:INK 1,26:INK 2,24:INK 3,7:PEN 1 90 FOR o=2 TO 23 100 FOR q=1 TO 8 110 a=INT(RND*40+1) 120 LOCATE a,o:PRINT CHR$(207):z(a,o)=1 130 NEXT q 140 NEXT o 150 ' 160 '*** BORDURE *** 170 ' 180 FOR i=1 TO 40:LOCATE i,1:PEN 2:PRINT CHR$(127):z(i,1)=1 190 NEXT i 200 FOR i=1 TO 40:LOCATE i,24:PRINT CHR$(127):z(i,24)=1 210 NEXT i 220 FOR i=2 TO 24:LOCATE 1,i:PRINT CHR$(127):z(1,i)=1 230 NEXT i 240 FOR i=1 TO 24:LOCATE 40,i:PRINT CHR$(127):z(40,i)=1 250 NEXT i 260 ' 270 '** PLACEMENT DES PERSONNAGES ** 280 ' 290 PEN 3 300 FOR i=10 TO 20:IF z(i,12)<>1 THEN 310 ELSE NEXT i 310 LOCATE i,12:PEN 2:PRINT CHR$(128):X=I:Y=12 320 FOR j=28 TO 39:IF z(j,12)<>1 THEN 330 ELSE NEXT j 330 LOCATE j,12:PEN 3:PRINT CHR$(248):u=j:v=12 340 LOCATE 16,25:PEN 2:PRINT CHR$(202):LOCATE 18,25:PEN 1:PRINT"Prises:";:G=PEEK(30000):IF G=0 THEN PRINT" aucune" ELSE FOR I=1 TO G:PRINT " ";CHR$(128);:NEXT I 350 FOR i=239 TO 63 STEP -5:SOUND 1,i,10:NEXT 360 ' 370 '*** COMPTEURS TEMPS REEL *** 380 ' 390 PEN 3:LOCATE 3,25:PRINT"TEMPS : ";R:EVERY 5,2 GOSUB 440:EVERY 50,3 GOSUB 720 400 GOTO 590 410 ' 420 '*** DEPLACEMENT BANDIT *** 430 ' 440 B=INT(RND*4+1) 450 GOTO 760 460 ON b GOTO 480,500,520,540 470 RETURN 480 IF z(x,y-1)=1 THEN 470 490 PEN 2:LOCATE x,y:PRINT" ":LOCATE x,y-1:PRINT CHR$(128):y=y-1:GOTO 470 500 IF z(x,y+1)=1 THEN 470 510 PEN 2:LOCATE x,y:PRINT" ":LOCATE x,y+1:PRINT CHR$(128):Y=y+1:GOTO 470 520 IF z(x+1,y)=1 THEN 470 530 PEN 2:LOCATE x,y:PRINT" ":LOCATE x+1,y:PRINT CHR$(128):x=x+1:GOTO 470 540 IF z(x-1,y)=1 THEN 470 550 PEN 2:LOCATE x,y:PRINT" ":LOCATE x-1,y:PRINT CHR$(128):x=x-1:GOTO 470 560 ' 570 '*** DEPLACEMENT POLICIER *** 580 ' 590 FOR i=72 TO 75:t=2*(i-71)+INKEY(i)+1:ON t GOTO 600,600,610,600,630,600,650,600,670 600 NEXT i:GOTO 590 610 FOR i=v-1 TO 2 STEP -1:IF z(u,i)=1 THEN NEXT i:IF i=1 AND z(u,i)=1 THEN 590 620 DI:PEN 3:IF u=x AND i=y THEN GOSUB 440 :EI:GOTO 590 ELSE LOCATE u,v:PRINT" ":LOCATE u,v-1:PRINT CHR$(248):v=v-1:IF z(u,v)=1 THEN z(u,v)=0:LOCATE u,i:PEN 1:PRINT CHR$(207):SOUND 1,0,10,6,0,0,20:z(u,i)=1:PEN 3:EI:GOTO 590 ELSE EI:GOTO 590 630 FOR i=v+1 TO 23:IF z(u,i)=1 THEN NEXT i:IF i=24 AND z(u,i)=1 THEN 590 640 DI:PEN 3:IF u=x AND i=y THEN GOSUB 440:EI:GOTO 590 ELSE LOCATE u,v:PRINT" ":LOCATE u,v+1:PRINT CHR$(248):v=v+1:IF z(u,v)=1 THEN z(u,v)=0:LOCATE u,i:PEN 1:PRINT CHR$(207):SOUND 1,0,10,6,0,0,20:z(u,i)=1:PEN 3:EI:GOTO 590 ELSE EI:GOTO 590 650 FOR i=u-1 TO 2 STEP -1:IF z(i,v)=1 THEN NEXT i:IF i=2 AND z(u,i)=1 THEN 590 ELSE IF i=1 AND z(u,i)=1 THEN 590 660 DI:PEN 3:IF i=x AND v=y THEN GOSUB 440 :EI:GOTO 590 ELSE LOCATE u,v:PRINT" ":LOCATE u-1,v:PRINT CHR$(251):u=u-1:IF z(u,v)=1 THEN z(u,v)=0:LOCATE i,v:PEN 1:PRINT CHR$(207):SOUND 1,0,10,6,0,0,20:z(i,v)=1:PEN 3:EI:GOTO 590 ELSE EI:GOTO 590 670 FOR i=u+1 TO 39:IF z(i,v)=1 THEN NEXT i:IF i=40 AND z(i,v)=1 THEN 590 680 DI:PEN 3:IF i=x AND v=y THEN GOSUB 440 :EI:GOTO 590 ELSE LOCATE u,v:PRINT" ":LOCATE u+1,v:PRINT CHR$(250):u=u+1:IF z(u,v)=1 THEN z(u,v)=0:LOCATE i,v:PEN 1:PRINT CHR$(207):SOUND 1,0,10,6,0,0,20:z(i,v)=1:PEN 3:EI:GOTO 590 ELSE EI:GOTO 590 690 ' 700 '*** AFFICHAGE DU COMPTEUR *** 710 ' 720 R=R-1:POKE 20000,R:LOCATE 11,25:PEN 3:PRINT R:IF R =10 THEN BORDER 1,18 ELSE IF R=0 THEN DI:BORDER 0:GOTO 900 ELSE RETURN 730 ' 740 '*** TEST SI GAGNE *** 750 ' 760 IF z(x,y+1)=1 AND z(x,y-1)=1 AND z(x+1,y)=1 AND z(x-1,y)=1 THEN 800 ELSE GOTO 460 770 ' 780 '*** ON GAGNE *** 790 ' 800 EVERY 0,2 GOSUB 800:EVERY 0,3 GOSUB 800 810 G=PEEK(30000):G=G+1:POKE 30000,G:FOR i=1 TO 40:FOR j=1 TO 24:z(i,j)=0:NEXT j:NEXT i:CLS:INK 2,15,18:INK 3,25:LOCATE 16,4:PEN 2:PRINT"BRAVO!":PLOT 231,359,1:DRAW 343,359:DRAW 343,327:DRAW 231,327:DRAW 231,359 820 J=247:FOR I=231 TO 343:PLOT i,359:DRAW j,375:j=j+1:NEXT i:j=375:FOR i=359 TO 327 STEP -1:PLOT 343,i:DRAW 359,j:j=j-1:NEXT i:PLOT 343,359,0:DRAW 359,375 830 PEN 3:LOCATE 2,10:PRINT"Vous avez enferme Jean Peuplus";G;"fois.":LOCATE 1,11:PRINT"Mais celui-ci,infatigable,a encore reus-":LOCATE 1,12:PRINT"si a s'echapper.":LOCATE 1,13:PRINT"Il vous reste";R; 840 PRINT"secondes pour le reen-":LOCATE 1,14:PRINT"fermer,depechez-vous !" 850 LOCATE 7,23:PEN 1:PRINT"TAPER SUR A POUR CONTINUER" 860 A$=INKEY$:IF A$="A" OR A$="a" THEN CLEAR:GOTO 70 ELSE GOTO 860 870 ' 880 '*** RESULTATS *** 890 ' 900 CLS:BORDER 0:INK 2,25:INK 3,15:LOCATE 16,4:PEN 3:PRINT"RESULTATS:":PLOT 231,359,1:DRAW 231,327:DRAW 403,327:DRAW 403,359 910 J=247:FOR I=231 TO 403:PLOT I,359,1:DRAW J,375:J=J+1:NEXT I:J=375:FOR I=359 TO 327 STEP -1:PLOT 403,I:DRAW 419,J:J=J-1:NEXT I:PLOT 403,359,0:DRAW 419,375 920 IF G=0 THEN PEN 2:GOTO 930 ELSE IF G=1 OR G=2 THEN PEN 2:GOTO 940 ELSE IF G=3 OR G=4 THEN PEN 2:GOTO 950 ELSE PEN 2:GOTO 960 930 LOCATE 2,11:PRINT"Comment,vous n'avez pas reussi a enfer-":LOCATE 1,12:PRINT"mer Jaen Peuplus ?Vous n'avez pas honte?":LOCATE 1,13:PRINT"Depechez-vous de vous entrainer avant de":LOCATE 1,14:PRINT"devenir la risee de vos amis !":GOTO 970 940 LOCATE 2,11:PRINT"Vous avez reussi a enfermer l'horrible":LOCATE 1,12:PRINT"Jean Peuplus";G;"fois.Ce n'est pas mal,":LOCATE 1,13:PRINT"mais il y a du progres a faire,perseve-":LOCATE 1,14:PRINT"rez !":GOTO 970 950 LOCATE 2,11:PRINT"Bravo! Vous avez reussi a enfermer la":LOCATE 1,12:PRINT"terreur des bacs a sable";G;"fois.":LOCATE 1,13:PRINT"Hourra pour le champion du joystick!":GOTO 970 960 LOCATE 2,11:PRINT"Incroyable mais vrai! Vous avez enferme":LOCATE 1,12:PRINT"la calamite du siecle";G;"fois !!":LOCATE 1,13:PRINT"Je me prosterne aux pieds du roi du man-":LOCATE 1,14:PRINT"che a balai !":GOTO 970 970 PEN 1:LOCATE 9,21:PRINT"TAPER SUR A POUR REJOUER":PEN 3:LOCATE 9,23:PRINT"TAPER SUR Z POUR ARRETER":PEN 2:LOCATE 20,22:PRINT"ou":LOCATE 10,14 980 a$=INKEY$:IF a$="a" OR a$="A" THEN RUN ELSE IF a$="z" OR a$="Z" THEN 1260 ELSE GOTO 980 990 ' 1000 '*** PRESENTATION *** 1010 ' 1020 MODE 1:BORDER 0:PAPER 0:INK 0,0:INK 1,26:INK 2,6:INK 3,18,16 1030 LOCATE 13,4:PEN 1:PRINT"MICHEL BOISBRUN":PEN 2:LOCATE 16,6:PRINT"presente:" 1040 PEN 1:LOCATE 20,24:PRINT CHR$(207):FOR i=2 TO 18:PEN 2:LOCATE i,24:PRINT CHR$(128):LOCATE i-1,24:PRINT" ":FOR j=1 TO 40:NEXT j:NEXT i:LOCATE 10,12:PEN 1:PRINT"W A R - B L O C K" 1050 FOR T=1 TO 500:NEXT T 1060 PEN 2:FOR J=39 TO 22 STEP -1:LOCATE J,24:PRINT CHR$(248):LOCATE J+1,24:PRINT" ":FOR I=1 TO 40:NEXT I:NEXT J 1070 PEN 3:FOR i=29 TO 32:LOCATE i,9:PRINT CHR$(207):NEXT i:LOCATE 28,10:PRINT CHR$(207);CHR$(207):LOCATE 32,10:PRINT CHR$(207);CHR$(207):LOCATE 32,11:PRINT CHR$(207);CHR$(207):FOR i=29 TO 32:LOCATE i,12:PRINT CHR$(207):NEXT i 1080 FOR i=13 TO 15:LOCATE 28,i:PRINT CHR$(207);CHR$(207):NEXT i 1090 FOR i=30 TO 33:LOCATE i,15:PRINT CHR$(207):NEXT i:LOCATE 32,14:PRINT CHR$(207);CHR$(207) 1100 FOR k=1 TO 75:READ h,i,j:SOUND 1,h,i,j:NEXT k 1110 CLS:LOCATE 11,10:PEN 3:PRINT"INSTRUCTIONS(O/N)" 1120 a$=INKEY$:IF A$="O" OR a$="o" THEN 1160 ELSE IF a$="N" OR a$="n" THEN 70 ELSE GOTO 1120 1130 ' 1140 '*** INSTRUCTIONS *** 1150 ' 1160 INK 2,25:INK 3,15:CLS:PEN 3:LOCATE 14,4:PRINT"INSTRUCTIONS:" 1170 PLOT 199,359,1:DRAW 423,359:DRAW 423,327:DRAW 199,327:DRAW 199,359 1180 J=215:FOR i=199 TO 423:PLOT i,359:DRAW j,375:j=j+1:NEXT i:j=374:FOR i=359 TO 327 STEP -1:PLOT 423,i:DRAW 439,j:j=j-1:NEXT i:PLOT 423,359:DRAW 439,375,0 1190 PEN 2:LOCATE 2,10:PRINT"C'est la panique dans la commune de ":LOCATE 1,11:PRINT"Trifouillis les oies.Le celebre gang-":LOCATE 1,12:PRINT"ster,Jean Peuplus s'est evade de la":LOCATE 1,13:PRINT"prison d'Altacraz.En tant que chef de" 1200 LOCATE 1,14:PRINT"la police,votre role est d'enfermer ce":LOCATE 1,15:PRINT"bandit entre quatre murs...":LOCATE 2,16:PRINT"A l'aide de la manette de jeu,vous au-":LOCATE 1,17:PRINT"rez 255 secondes pour l'immobiliser en" 1210 LOCATE 1,18:PRINT"poussant les murs disperses sur l'ecran.":LOCATE 15,21:PEN 3:PRINT"BONNE CHANCE":PEN 1:LOCATE 6,24:PRINT"taper une touche pour continuer" 1220 a$=INKEY$:IF a$="" THEN 1220 ELSE GOTO 70 1230 ' 1240 'TRISTE FIN 1250 ' 1260 CLS:LOCATE 8,10:PEN 3:PRINT"Vous ne voulez plus jouer?":LOCATE 16,20:PEN 1:PRINT"DOMMAGE...":PEN 0:END 1270 ' 1280 'J-S BACH EN DATAS ! 1290 ' 1300 DATA 284,20,7,426,10,7,379,10,7,338,10,7,319,10,7,284,20,7,426,20,7,426,5,0,426,20,7,213,20,7,319,10,7,284,10,7,253,10,7,225,10,7,213,20,7,426,20,7,426,5,0,426,20,7,319,20,7,284,10,7,319,10,7,338,10,7,379,10,7,338,20,7,319,10,7,338,10,7,379,10,7 1310 DATA 426,10,7,478,20,7,426,10,7,379,10,7,338,10,7,426,10,7,379,60,7,127,20,0,284,20,7,426,10,7,379,10,7,338,10,7,319,10,7,284,20,7,426,20,7,426,5,0,426,20,7,426,5,0,213,20,7,319,10,7,284,10,7,253,10,7,225,10,7 1320 DATA 213,20,7,426,20,7,426,5,0,426,20,7,426,5,0,426,20,0,319,20,7,284,10,7,319,10,7,338,10,7,379,10,7,338,20,7,319,10,7,338,10,7,379,10,7,426,10,7,379,20,7,338,10,7,379,10,7,426,10,7,478,10,7,426,60,7 1330 DATA 338,10,7,379,10,7,426,10,7,478,10,7,426,60,7 |