Hebdogiciel n°160 à 165

Note: L'EXL100 ne pouvant charger la totalité du programme en mémoire, l'Antre est scindé en deux programmes «ANTRE1.BAS» et «ANTRE2.BAS». Le listing a été adapté pour une utilisation sur disquette. Exécutez le premier programme, la seconde partie se lancera automatiquement.

1er LISTING (ANTRE1.BAS)

1 CALL POKE(50850,162,5,45,162,136,45,10):CALL EXEC(50850)
2 ! LA RECHERCHE DU DIAMANT VERT
3 ! COMME UN OURAGAN
4 !
5 DIM S(36)
6 RESTORE 7:FOR Y=1 TO 35:READ I:S(Y)=I:NEXT
7 DATA 88,79,74,5,79,88
8 DATA 74.5,66.5,79,88,99.5
9 DATA 59,66.5,74.5,79,99.5
10 DATA 88,79,0,74.5,66.5,59
11 DATA 66.5,74.5,55.5,59,66.5,74.5,79
12 DATA 49.75,55.5,59,66.5,74.5,74.5,79,0
13 CALL POKE(50688,165,8,6,10):CALL POKE(49156,198,0)
14 !
15 !
16 !
17 S$="0D9816C301EDE72CB8B4CBECBDD88AA6F3A2DD41AAF6BDB446407AFDAE3CEAA1EAA6AB7"
18 S1$="BE4A7CB86ADC6D377C9E04BE87411B508C04302FE":S$=S$&S1$
19 S2$="02882BCD51B69A6855B340F1E16A338903E517699E2A6154B80A929504815395AA50"
20 S3$="0D0006C4996684D44B84358E125455D1AED646B08325369C58410972B0C4B86321B0"
21 S4$="61A21B49848A77156B82122EDCE31D3F0FEBF":S1$=S2$&S3$&S4$
22 V$="0BA02163031B18008D1E139840073A108100F0901E81080480478F084420020570CEBD0"
23 V1$="2110840704E118840043CE0010F78C00316B080052C20010948800214A0000528FF"
24 S2$=V$&V1$
25 CLS "YBB"
26 !
27 !
28 !
29 !
30 !
31 CALL CHAR(36,"24FF24FF24FF24FF24FF")
32 CALL CHAR(37,"24FF24FF24E724666624")
33 !
34 !
35 CALL CHAR(38,"815A24187EA5BD2466E7")
36 !
37 CALL CHAR(46,"FFFFFFFFFFFFFFFFFFFF")
38 CALL CHAR(45,"00FFFFFFFFFFFFFFFFFF")
39 !
40 !
41 CALL CHAR(48,"00103854FE7C82440000")
42 !
43 !
44 CALL CHAR(49,"7F7F7F7F7F7F7F7F7F7F")
45 !
46 !
47 CALL CHAR(50,"18183C5A999924242466")
48 !
49 !
50 CALL CHAR(51,"FEFEFEFEFEFEFEFEFEFE")
51 !
52 !
53 CALL CHAR(52,"0018183C3C7E7EFFA5FF")
54 !
55 !
56 CALL CHAR(47,"7E7E7E666666667E7E7E")
57 CALL CHAR(54,"3C3C3C7E7E7E7EFFA5FF")
58 !
59 !
60 CALL CHAR(55,"03050913345F9FA0FFFF")
61 CALL CHAR(56,"00FFFFFF00FFFF00FFFF")
62 CALL CHAR(57,"C0A090C82CFAF905FFFF")
63 !
64 !
65 CALL CHAR(58,"010303070F1F1F3F7FFF")
66 CALL CHAR(59,"80C0C0E0F0F8F8FCFEFF")
67 !
68 !
69 CALL CHAR(60,"FF68351F0D0D0D0D0D0D")
70 CALL CHAR(61,"0D0D0D0D0D0D0D0D0D0D")
71 CALL CHAR(62,"FFD6ACF8B0B0B0B0B0B0")
72 CALL CHAR(63,"B0B0B0B0B0B0B0B0B0B0")
73 !
74 !
75 CALL CHAR(65,"FF44FF11FF44FF11FF44")
76 !
77 !
78 CALL CHAR(66,"00060718201E013E4080")
79 !
80 !
81 !
82 CALL CHAR(97,"00030F0F3E3E7FFFFFFF")
83 CALL CHAR(98,"C08000000000000084CE")
84 CALL CHAR(99,"03010000000000002173")
85 CALL CHAR(100,"00C0F0F07C7CFEFFFFFF")
86 CALL CHAR(101,"7F7F3F3F0F0E07070707")
87 CALL CHAR(102,"FFBFCFF7FB3D2FA3E7FE")
88 CALL CHAR(103,"FFFDF3EFDFBCF4C5E77F")
89 CALL CHAR(104,"FEFEFCFCF070E0E0E0E0")
90 CALL CHAR(105,"07070303010100000000")
91 CALL CHAR(106,"FEFEF8F8FFE7E2F2707A")
92 CALL CHAR(107,"7F7F1F1FFFE7474F0E5E")
93 CALL CHAR(108,"E0E0C0C0808000000000")
94 CALL CHAR(109,"3A1E0F07030000000000")
95 CALL CHAR(110,"5C78F0E0C00000000000")
96 !
97 !
98 CALL CHAR(67,"0000040E3F7FCE840000")
99 CALL CHAR(68,"427E2418FFC3663C5A99")
100 CALL CHAR(69,"00002070FCFE73210000")
101 CALL CHAR(70,"000000000B0F1E1A3020")
102 CALL CHAR(71,"00000000D0F078580C04")
103 !
104 !
105 CALL CHAR(72,"0103050B152B3F2B150F")
106 CALL CHAR(73,"008040A050A8F8A850E0")
107 !
108 !
109 CALL CHAR(74,"03060D1A356AFF000000")
110 CALL CHAR(75,"FFAA55AA557EFF000000")
111 CALL CHAR(76,"C0A050A854AAFF000000")
112 !
113 !
114 CALL CHAR(77,"3C3C7EFFFF87FF87FDFF")
115 !
116 !
117 CALL CHAR(78,"FF8587858787878785FF")
118 CALL CHAR(79,"007EFFFF7E007EFFFF7E")
119 !
120 !
121 CALL CHAR(80,"000103070F1E3C383020")
122 !
123 !
124 CALL CHAR(81,"0080C0E0F0783C1C0C04")
125 CALL CHAR(82,"007EFFFF7E0000000000")
126 !
127 !
128 CALL CHAR(83,"0000000000007EFFFF7E")
129 !
130 !
131 CALL CHAR(84,"01010101010101010101")
132 CALL CHAR(85,"80808080808080808080")
133 CALL CHAR(86,"000000000000000000FF")
134 CALL CHAR(87,"FF000000000000000000")
135 CALL CHAR(88,"01020404081010204080")
136 CALL CHAR(89,"80402020100808040201")
137 !
138 !
139 !


140 RESTORE 141:FOR T=1 TO 7:READ Y,X:CALL AFCO(Y,X):NEXT
141 DATA 10,8,10,12,10,16,10,20,10,24,10,28,10,32
142 RESTORE 141:FOR T=1 TO 7:READ Y,X:LOCATE (Y-1,X):PRINT "..":NEXT
143 LOCATE (16,1):PRINT "      ............................"
144 PRINT "    -------------------------------"
145 PRINT "   ---------------------------------"
146 Y=1:X=2:A$="CDE":C$="FDG"
147 CALL COLOR("1RB"):LOCATE (Y,X):IF X/2=INT(X/2)THEN PRINT A$ ELSE PRINT C$
148 LOCATE (Y,X-1):PRINT " "
149 PAUSE .1:IF X=7 THEN A=8:B$="LL":CALL IL(A,B$,S2$,S$)
150 IF X=11 THEN A=12:B$="''":CALL IL(A,B$,S2$,S$)
151 IF X=15 THEN A=16:B$="AA":CALL IL(A,B$,S2$,S$)
152 IF X=19 THEN A=20:B$="NN":CALL IL(A,B$,S2$,S$)
153 IF X=23 THEN A=24:B$="TT":CALL IL(A,B$,S2$,S$)
154 IF X=27 THEN A=28:B$="RR":CALL IL(A,B$,S2$,S$)
155 IF X=31 THEN A=32:B$="EE":CALL IL(A,B$,S2$,S$)
156 IF X<36 THEN X=X+1:GOTO 147
157 CALL COLOR("1RB"):LOCATE (2,19):PRINT "abcd":LOCATE (3,19):PRINT "efgh"
158 LOCATE (4,19):PRINT "ijkl":LOCATE (5,20):PRINT "mn":Y=1
159 CALL COLOR("0RB"):LOCATE (21,4):PRINT "Voulez-vous lire les regles (O/N) ?"
160 CALL KEY1(A,B)
161 IF S(Y)=0 THEN CALL POKE(259,45):PAUSE .2:GOTO 163
162 CALL POKE(258,S(Y),132):FOR T=1 TO 90:NEXT T
163 IF A=78 THEN CALL POKE(259,45):CLS:GOTO 216
164 IF A=79 THEN CALL POKE(259,45):GOTO 167
165 Y=Y+1:IF Y=37 THEN Y=1
166 GOTO 160
167 CALL AFC:CALL SPEECH("L,"&S1$):PAUSE .8
168 CALL AF("Je suis l'EXELMAITRE DU TEMPS",5)
169 CALL AF("car je suis un ordinateur",7)
170 CALL AF("d'une puissance fantastique.",9)
171 CALL AF("Grace a celle ci,",11)
172 CALL AF("j'ai detecte la presence de",13)
173 CALL AF("l'ignoble comte BEAFSAIGNANT",15)
174 CALL AF("dans un chateau,en foret noire",17)
175 CALL AF("mais au 12e siecle",19)
176 G$=KEY$:CALL AFC
177 CALL AF("Il a decide de detruire l'avenir",5)
178 CALL AF("dans lequel nous evoluons",7)
179 CALL AF("en changeant le passe.",9)
180 CALL AF("Je fais appel a vous car",11)
181 CALL AF("vous etes notre meilleur agent.",13)
182 CALL AF("Mais attention l'univers",15)
183 CALL AF("que vous allez rencontrer",17)
184 CALL AF("va vous etre tres hostile",19)
185 G$=KEY$:CALL AFC
186 CALL AF("Vous devrez parcourir",5)
187 CALL AF("les salles du chateau dont une",7)
188 CALL AF("est la salle de commande",9)
189 CALL AF("Il y a dans cette salle une",11)
190 CALL AF("source d'energie qui permet",13)
191 CALL AF("au comte de controler ses",15)
192 CALL AF("gardes mais surtout de se",17)
193 CALL AF("maintenir au 12e siecle",19)
194 G$=KEY$:CALL AFC
195 CALL AF("Vous partez avec un certain",5)
196 CALL AF("nombre de points d'endurance",7)
197 CALL AF("de chance et d'habilete",9)
198 CALL AF("qui varieront pendant votre aventure",11)
199 CALL AF("Ils pourront varier pendant les combats",13)
200 CALL AF("Il existe 2 sortes de combats:",15)
201 A$=KEY$:CALL AFC
202 CALL AF("Le premier est controle",5)
203 CALL AF("entierement par l'ordinateur",7)
204 CALL AF("qui en fonction de vos points",9)
205 CALL AF("d'habilete,d'endurance et de la chance",11)
206 CALL AF("determine l'issue du combat.",13)
207 A$=KEY$:CALL AFC
208 CALL AF("le deuxieme depend de vous",5)
209 CALL AF("et de votre rapidite.",7)
210 CALL AF("En fait c'est un mini jeu d'arcade.",9)
211 CALL AF("Vous deplacez votre personnage",11)
212 CALL AF("avec les touches du curseur.",13)
213 CALL AF("Je ne vous donne aucun autre",15)
214 CALL AF("renseignement sur la suite du combat.",17)
215 A$=KEY$:CLS
216 CALL AF("C'EST PARTI POUR UNE GRANDE",5)
217 CALL AF("AVENTURE SEMIGRAPHIQUE",7)
218 CALL COLOR("1RB"):PRINT:PRINT
219 PRINT "         abcd      FDG"
220 PRINT "CDE  4   efgh   4"
221 PRINT "    :.;  ijkl  :.;"
222 PRINT "    ...   mn   ..."
223 PRINT "    .%.        .%."
224 PRINT "    ... 0 HI & ..."
225 PRINT "   :..............;"
226 PRINT "   ..$...$..$...$.."
227 PRINT "   ................"
228 PRINT "   ..$...$$$$...$.."
229 PRINT "   ......$$$$......"
230 PRINT "   ......$$$$......"
231 PRINT "  :......%%%%......;":PAUSE 1
232 FOR Y=22 TO 19 STEP -1:LOCATE (Y,10):PRINT "%%%%":PAUSE .2:LOCATE (Y,10)
233 PRINT "    ":NEXT:LOCATE (19,10):PRINT "%%%%":CALL COLOR("0YB")
234 LOCATE (15,20):PRINT "J'ENTRE LE LISTING 2"
235 CALL DOS("LOADRUN A:ANTRE2")
236 SUB AFC
237 CLS:CALL COLOR("0RBL"):LOCATE (2,14):PRINT "LL''AANNTTRREE"
238 CALL COLOR("1YB"):LOCATE (2,12):PRINT "B":LOCATE (2,29):PRINT "B"
239 CALL COLOR("0YB"):LOCATE (22,10):PRINT "APPUYER SUR UNE TOUCHE"
240 CALL COLOR("0RB"):LOCATE (22,8):PRINT "<":LOCATE (22,33):PRINT ">"
241 SUBEND
242 SUB AF(A$,H)
243 H1=INT((42-LEN(A$))/2-1):FOR Y=1 TO LEN(A$)
244 CALL COLOR("0RR"):LOCATE (H,H1+Y):PRINT " ":CALL POKE(258,111,132)
245 CALL COLOR("0WB"):CALL POKE(258,123,132):LOCATE (H,H1+Y):PRINT SEG$(A$,Y,1)
246 CALL KEY1(A,B):IF B<>0 THEN 248
247 NEXT:CALL POKE(259,45):SUBEXIT
248 LOCATE (H,H1+1):PRINT A$:CALL POKE(259,45):SUBEND
249 SUB AFCO(Y,X)
250 CALL COLOR("1WB")
251 LOCATE (Y,X):PRINT "<>":FOR A=Y+1 TO Y+5:LOCATE (A,X):PRINT "=?":NEXT
252 SUBEND
253 SUB AFFCO(Y,X)
254 FOR A=Y TO Y+7:LOCATE (A,X):PRINT "  ":NEXT:SUBEND
255 SUB IL(A,B$,S2$,S$)
256 CALL COLOR("0RB"):FOR O=2 TO 8:LOCATE (O,A):PRINT CHR$(1)
257 CALL SPEECH("L,"&S$):PAUSE .1:LOCATE (O,A):PRINT "  ":NEXT
258 CALL COLOR("0RL"):LOCATE (9,A):PRINT B$
259 CALL SPEECH("L,"&S2$)
260 SUBEND



2ème LISTING (ANTRE2.BAS)



8 ! SECOND LISTING
9 ON BREAK STOP
10 RANDOMIZE
20 S$="077C312DD46D6F708213EC60072B58C10C66308211F4A0072D6841823E9316EAB637BAD"
30 T$="18D6E74A2139DE8443BDAD18E7634A319CD6846339AD18C6634A2118D68442D6A518B5A"
40 U$="D4A21AD5A84635AA518D4A54321295A844294AD1FF"
50 S$=S$&T$&U$
60 GOTO 490
70 !
80 IF EN<=0 THEN PRINT "Il vous a vaincu , ADIEU !!!!"
90 !
100 !
110 !
120 !
130 A$="0D9816C301EDE72CB8B4CBECBDD88AA6F3A2DD41AAF6BD446407AFDAE3CEAA1EAA6AB7"
140 B$="DE4A7CB86ADC6D377C9E04BE87411B508C04302FE"
150 C$="":D$=""
160 RETURN
170 !
180 !
190 !
200 A$="0E683FC7031EF040043CE0010F78C00216B040042C60010F5840031AD08006FE"
210 B$="":C$="":D$=""
220 RETURN
230 !
240 !
250 !
260 A$="28D5AA4C35B39094B932956E5CC2E4D704AB72D242D9008B4881F7A398D59326DA85"
270 B$="56B14C92A89806D5CA59A1334F75CB340A28505D01DB76257DDB1B53959CC4C05323"
280 C$="2A6C12AD0D0D2F254EBAD14C6A5819C93496B0506C6525AB2E5A19AEB5AC64D995B3"
290 D$="D2B1949424AB5385DB31922DCE9EA94AC9898E51A45B02E4"
300 RETURN
310 !
320 !
330 !
340 A$="02F0B43D94556E2A9193D665DDA9424946DFAC9526271D55B5D61ADCF41435586B71"
350 B$="D393576F2DC54B4FD69C97942C3B5975915CBEF464CD6752FA9A9396E2CE15B34FD2"
360 C$="7D04A5AE39490B1194B6FAC42D8653DA9213D5924EA18B5750BD2B4F344A51B2A6BE"
370 D$="11537849A9E7B809044E55AA4235FF"
380 RETURN
390 !
400 !
410 !
420 A$="2AD2ACA2CC1B9384A98DB468A5B2485AC32C6E8BB2BA32A9302DE8A2D3A9232FAB98"
430 B$="4DB3B572C4123B2D57F1E50E9B737AE4C82A427643654939285995187694A417B662"
440 C$="14B69393CCA94135A95E0A933931DC322E8EF65164CA98328A17E1BEACEBFF07"
450 D$=""
460 RETURN
470 !
480 !
490 !
500 CLS "YBB":CALL COLOR("1RB")
510 FOR Y=17 TO 21:LOCATE (Y,1)
520 PRINT "...............................":NEXT
530 LOCATE (17,32):PRINT ";":LOCATE (18,32):PRINT ".;"
540 LOCATE (19,32):PRINT "..;":LOCATE (20,32):PRINT "...;"
550 LOCATE (21,32):PRINT "....;"
560 LOCATE (5,1):CALL COLOR("1RB")
570 PRINT "        :.............;"
580 PRINT "       :...............;"
590 PRINT "      :.................;"
600 PRINT "     :...................;"
610 PRINT "    :.....................;"
620 PRINT "   :.......................;"
630 PRINT "   -------------------------"
640 CALL COLOR("1GB")
650 PRINT "             78889"
660 PRINT "        4   7888889   4"
670 PRINT "        /  788888889  /"
680 PRINT "        / 78888888889 /"
690 PRINT "        /7888888888889/"
700 LOCATE (11,15):CALL COLOR("1GR"):PRINT "789"

710 CALL COLOR("1BR")
720 LOCATE (8,12):PRINT ".-------.":LOCATE (9,12):PRINT ".... ...."
730 LOCATE (9,16):CALL COLOR("0RR"):PRINT " "
740 CALL COLOR("1BR"):LOCATE (7,12):PRINT "/":LOCATE (6,12):PRINT "/"
750 LOCATE (5,12):PRINT "4"
760 LOCATE (7,20):PRINT "/":LOCATE (6,20):PRINT "/":LOCATE (5,20):PRINT "4"
770 LOCATE (7,13):PRINT ":":LOCATE (6,14):PRINT ":"
780 LOCATE (7,19):PRINT ";":LOCATE (6,18):PRINT ";"
790 LOCATE (6,15):PRINT "1.3"
800 CALL COLOR("1RB"):LOCATE (7,14):PRINT ":":LOCATE (7,18):PRINT ";"
810 PAUSE .5:GOSUB 230:CALL SPEECH("L,"&A$&B$&C$&D$)
820 CALL COLOR("0RB"):LOCATE (1,1)
825 PRINT "Vous etes devant une falaise enjambee"
830 PRINT "par un pont.Devant vous se dres-"
840 PRINT "se le chateau du malefique comte                < BEAFSAIGNANT >"
850 PAUSE 4:LOCATE (1,1):PRINT "Etes vous pret a entrer dans le chateau"
860 PRINT "afin de detruire la source qui permet "
870 PRINT "au comte de se maintenir au 12e siecle"
880 CALL COLOR("0CB"):PRINT "< Appuyer sur une touche >"
890 A$=KEY$
900 LOCATE (1,1):PRINT "Vous traversez le pont,inquiete par    "
910 PRINT "l'absence de gardes , remarquez c'est  "
920 PRINT "tant mieux.Vous vous trouvez devant la "
930 PRINT "porte                      "
940 FOR Y=16 TO 11 STEP -1:CALL COLOR("1BG"):LOCATE (Y,16):PRINT "2"
950 GOSUB 110:CALL SPEECH("L,"&A$&B$&C$&D$)
960 PAUSE 1:LOCATE (Y,16):CALL COLOR("1GB"):PRINT "8":NEXT
970 EN=INT(13*RND+15):HA=INT(9*RND+6):CH=INT(8*RND+5):ARG=0:CLS
975 CALL POKE(50850,162,5,45,162,200,45,10):CALL EXEC(50850)
980 !
990 !
1000 !
1010 CLS:CALL AFS(S$,EN,HA,CH,OB$)
1020 CALL CHAR(40,"22AA2A62099C3E5D0000")
1030 CALL COLOR("1WB"):FOR Y=2 TO 9:LOCATE (Y,2):PRINT "AAAAAAAAAAAAA":NEXT
1040 FOR Y=5 TO 9:LOCATE (Y,6):PRINT "      ":NEXT
1050 CALL COLOR("1bB"):LOCATE (5,6):PRINT "%%%%%%"
1060 CALL COLOR("1WB"):LOCATE (9,9):PRINT "2"
1070 CALL COLOR("0BB"):FOR Y=3 TO 14 STEP 2:LOCATE (2,Y):PRINT " ":NEXT
1080 CALL EFF
1090 CHE=0:PRINT "Vous etes sous la herse et pour"
1100 PRINT "l'instant vous ne voyez aucun garde"
1110 CALL QFV
1120 PRINT "1 Vous vous ruez dans l'enceinte"
1130 PRINT "2 Vous cherchez d'eventuels pieges"
1140 PRINT "3 Vous appelez un garde"
1150 A$=KEY$
1160 IF A$="1" THEN 1590
1170 RANDOMIZE
1180 IF A$="2" THEN CHA=INT(3*RND-1):CH=CH-1:IF CHA=1 THEN 1570
1190 CALL COLOR("1RB"):FOR Y=2 TO 14 STEP 2:LOCATE (1,Y):PRINT "&":NEXT
1200 CALL COLOR("1YB"):FOR Y=3 TO 14 STEP 2:LOCATE (2,Y):PRINT "0":NEXT
1210 CALL EFF
1220 IF A$="2" THEN LOCATE (11,1):PRINT "Vous inspectez la herse , la muraille"
1230 IF A$="2" THEN PRINT "Vous avancez mais vous trebuchez et     tombez"
1240 LOCATE (14,1):PRINT "Des gardes arrivent,leurs intentions"
1250 PRINT "sont hostiles,en effet vous etes ici"
1260 PRINT "pour ruiner les projets du comte"
1270 PRINT "Preparez-vous a combattre":CALL COLOR("0CB")
1280 PRINT "APPUYER SUR UNE TOUCHE"
1290 GOSUB 310:CALL SPEECH("L,"&A$&B$&C$&D$):DP=1
1300 A$=KEY$:A$="":PRINT "*** O.K ***"
1310 CALL EFF
1320 GOSUB 6280
1330 CALL CHAR(1,"22AA2A62099C3E5D0000")
1340 CALL POKE(124,0,1,120,1)
1350 CALL EXEC(IN):TOU=0:U=9
1360 RANDOMIZE:X=INT(6*RND+5):Y=3
1370 GOSUB 170:CALL SPEECH("L,"&A$)
1380 GOSUB 6530
1390 CALL KEY1(CC,TT)
1400 CALL COLOR("0BB"):LOCATE (9,U):PRINT " "
1410 IF CC=131 THEN DP=-1
1420 IF CC=129 THEN DP=1
1430 U=U+DP:IF U<6 THEN U=6:DP=1
1440 IF U>11 THEN U=11:DP=-1
1450 IF X+1=U AND Y=9 THEN EN=EN-1
1460 CALL COLOR("1WB"):LOCATE (9,U):PRINT "2"
1470 Y=Y+1
1480 IF X+1=U AND Y=9 THEN EN=EN-1
1490 IF Y<10 THEN 1380
1500 TOU=TOU+1:IF TOU<30 AND U=6 THEN X=5:Y=3:GOTO 1370
1510 IF TOU<30 AND U=11 THEN X=10:Y=3:GOTO 1370
1520 IF TOU<30 THEN 1360
1530 IF EN>0 THEN CALL EFF
1540 IF EN>0 THEN PRINT "Vous etes encore vivant":PAUSE 1
1550 IF EN>0 THEN GOSUB 390:CALL SPEECH("L,"&A$&B$&C$&D$):PAUSE 1
1560 GOTO 1590
1570 CALL EFF
1580 PRINT "Vous ne decouvrez rien et avancez dans  la cour":PAUSE 3
1590 !
1600 !
1610 !
1620 CLS:CALL AFS(S$,EN,HA,CH,OB$)
1630 CALL CHAR(40,"FF030509091121418181")
1640 CALL CHAR(41,"80404020100808040201")
1650 CALL CHAR(42,"01020408081020404080")
1660 CALL COLOR("1RB")
1670 DATA "   . . . ."
1680 DATA "  :-.-.-.-;"
1690 DATA " :.AAAAAAA.;"
1700 DATA ":..AAAAAAA..;"
1710 DATA "...AAA AAA..."
1720 DATA "...AAA AAA..."
1730 DATA "-1..........."
1740 DATA "............."
1750 DATA "............."


1760 RESTORE 1670:FOR Y=1 TO 9:READ A$:LOCATE (Y,2):PRINT A$:NEXT
1770 CALL COLOR("1BR")
1780 LOCATE (3,4):PRINT "*":LOCATE (4,3):PRINT "*":LOCATE (5,2):PRINT "*"
1790 LOCATE (3,12):PRINT ")":LOCATE (4,13):PRINT ")":LOCATE (5,14):PRINT ")"
1800 LOCATE (7,4):PRINT "*":LOCATE (8,3):PRINT "(":LOCATE (9,2):PRINT "*"
1810 LOCATE (7,12):PRINT ")":LOCATE (8,13):PRINT ")":LOCATE (9,14):PRINT ")"
1820 LOCATE (6,3):PRINT "(":LOCATE (7,4):PRINT "(":LOCATE (5,2):PRINT "("
1830 LOCATE (8,4):PRINT "*"
1840 CALL EFF
1850 PRINT "Vous etes dans la cour du chateau"
1860 PRINT "Vous remarquez une porte au  NORD"
1870 PRINT "ainsi qu'un escalier qui monte au donjonVous ne voyez pas de gardes"
1880 CALL QFV
1890 PRINT "1 Vous montez sur les remparts"
1900 PRINT "2 Vous ouvrez la porte au NORD"
1910 A$=KEY$
1920 IF A$="2" THEN 2210
1930 CALL CHAR(41,"7FBFDFDFEFF7F7FBFDFE")
1940 CALL CHAR(42,"FEFDFBF7F7EFDFDFBF7F")
1950 CLS:CALL AFS(S$,EN,HA,CH,OB$):CALL COLOR("1WB")
1960 DATA "      1111111"
1970 DATA "      1111111"
1980 DATA "    : 1111111"
1990 DATA "    .:111  11"
2000 DATA "  : *.111  11"
2010 DATA "  .:.*-------"
2020 DATA ": *.*--------"
2030 DATA ".:.*---------"
2040 DATA "*.*----------"
2050 RESTORE 1960:FOR Y=1 TO 9:READ A$:LOCATE (Y,2):PRINT A$:NEXT
2060 CALL EFF:PRINT "Vous apercevez une porte au fond"
2070 CALL QFV
2080 PRINT "1 Vous ouvrez la porte"
2090 PRINT "2 Vous retournez dans la cour"
2100 A$=KEY$
2110 IF A$="2" THEN 1590
2120 CALL EFF
2130 PRINT "Vous ouvrez la porte et vous decouvrez  de nombreux gardes"
2140 PRINT "Vous tentez de faire front mais ils sonttrop nombreux"
2150 PRINT "Vous vous enfuyez sous l'averse de fle- ches vous perdez"
2160 ENDU=INTRND(6)
2170 PRINT ENDU;" Points d'endurance"
2180 EN=EN-ENDU:CALL COLOR("0CB"):ENDU=0
2190 PRINT "APPUYER SUR UNE TOUCHE"
2200 A$=KEY$
2210 !
2220 !
2230 !
2240 H=INTRND(3)+2:CLE(H)=1
2250 H=INTRND(3)+2:PAR(H)=1
2260 !
2270 CALL CHAR(41,"7FBFDFDFEFF7F7FBFDFE")
2280 CALL CHAR(42,"FEFDFBF7F7EFDFDFBF7F")
2290 RANDOMIZE:H=INTRND(3)
2300 CLS:CALL AFS(S$,EN,HA,CH,OB$)
2310 CALL COLOR("1BW"):MON$="GARDE":GOSUB 390:S2$=A$&B$:GOSUB 100:S3$=A$&B$
2320 DATA "AA3**3..1))1A"
2330 DATA "AA3**3..1))1A"
2340 DATA "AA3***--)))1A"
2350 DATA "AA3**....))1A"
2360 DATA "AA3*......)1A"
2370 DATA "---........--"
2380 RESTORE 2320:FOR Y=1 TO 6:READ A$:LOCATE (Y,2):PRINT A$:NEXT:CALL EFF
2390 H=INTRND(3):IF H=1 THEN CALL COMBAT(EN,HA,MON$,S2$,S3$)
2400 CALL AFS(S$,EN,HA,CH,OB$)
2410 CALL EFF
2420 PRINT "Vous vous trouvez a un croisement,il y a"
2430 PRINT "un chemin au nord,un vers l'est,un vers"
2440 PRINT "l'ouest"
2450 CALL QFV
2460 PRINT "1 Aller vers le Nord"
2470 PRINT "2 Aller vers l'Est"
2480 PRINT "3 Aller vers l'Ouest"
2490 PRINT "4 Fouiller ce croisement"
2500 A$=KEY$
2510 IF A$="1" THEN 3230
2520 IF A$="2" THEN 3800
2530 IF A$="3" THEN 2640
2540 IF CLE(3)=0 AND PAR(3)=0 THEN MON$="RAT":CALL EFF
2550 IF CLE(3)=0 AND PAR(3)=0 THEN CALL COMBAT(EN,HA,MON$,S2$,S3$)
2560 IF CLE(3)=0 AND PAR(3)=0 THEN GOTO 2300
2570 CALL EFF
2580 IF PAR(3)=1 THEN 2610
2590 PRINT "Vous decouvrez une clef,vous la prenez":OB$=OB$&" clef":CLE(3)=0
2600 CL=1:CH=CH+1:PAUSE 3:GOTO 2300
2610 PRINT "Vous trouvez un parchemin,vous le prenez":CH=CH+1
2620 PRINT "sans le lire car un garde arrive":OB$=OB$&" parchemin":PAR(3)=0
2630 PA=1:PAUSE 3:GOTO 2300
2640 !
2650 !
2660 !

2670 CLS:CALL AFS(S$,EN,HA,CH,OB$)
2680 CALL COLOR("1BM"):CALL CHAR(44,"FFFFFFFFFFFFFFFFFF00")
2690 DATA "AAAAAA2AAAAAA"
2700 DATA "AAAA),,,*AAAA"
2710 DATA "AAAA)1.3*AAAA"
2720 DATA "....)1.3*...."
2730 DATA ".....---....."
2740 DATA "............."
2750 DATA "...*-----)..."
2760 DATA "..*.......).."
2770 DATA "..---------.."
2780 RESTORE 2690:FOR Y=1 TO 9:READ A$:LOCATE (Y,2):PRINT A$:NEXT
2790 CALL EFF
2800 PRINT "Vous etes dans une salle avec au fond"
2810 PRINT "une cheminee,il y a un tableau au dessus";
2820 PRINT "de cette derniere et un tapis qui s'e-"
2830 PRINT "tend a vos pieds":CALL QFV
2840 PRINT "1 Soulever le tapis"
2850 PRINT "2 Soulever le tableau"
2860 PRINT "3 Inspecter la cheminee"
2870 A$=KEY$
2880 IF A$<>"1" THEN 2940
2890 CALL EFF:PRINT "Vous soulevez le tapis et decouvrez un"
2900 PRINT "bouton qui vous intrigue,vous appuyez"
2910 PRINT "sur celui la,le sol se derobe,vous tom-bez  dans un gouffre"
2920 CALL COLOR("0CB"):PRINT "APPUYEZ SUR UNE TOUCHE"
2930 A$=KEY$:GOTO 5970
2940 IF A$<>"2" THEN 3090
2950 CALL EFF
2960 PRINT "Vous decouvrez,colle au tableau un"
2970 PRINT "PARCHEMIN"
2980 CALL QFV
2990 PRINT "1 Vous le lisez":PRINT "2 Vous poursuivez votre recherche"
3000 A$=KEY$:IF A$="2" THEN 2640
3010 RANDOMIZE:IF INTRND(2)=1 THEN 3060
3020 CALL EFF:PRINT "Vous le lisez et ressentez une etrange"
3030 PRINT "impression,vous vous asphixiez,vos"
3040 PRINT "points d'endurance sont divises par 2":EN=INT(EN/2)
3050 PAUSE 5:GOTO 2640
3060 CALL EFF:PRINT "Vous le lisez et ressentez aussitot"
3070 PRINT "une sentation de bien etre qui double   vos points d'assurances"
3080 EN=INT(EN*2):PAUSE 4:GOTO 2640
3090 CALL EFF:IF LUM<>1 THEN 3150
3100 PRINT "Vous regardez a l'interieur de la chemi"
3110 PRINT "nee et allumez votre bougie,vous decou-"
3120 PRINT "vrez des barres de fer qui servent d'e-"
3130 PRINT "chelons,vous montez":CALL COLOR("0CB")
3131 PRINT "APPUYER SUR UNE TOUCHE"
3140 A$=KEY$:GOTO 5410
3150 PRINT "Vous inspectez la cheminee et penchez"
3160 PRINT "votre tete a l'interieur,une chauve-"
3170 PRINT "souris vampire se colle sur votre visageet vous ne pouvez rien voir"
3180 PRINT "Vous perdez 2 pts d'endurance":EN=EN-2:CALL COLOR("0CB")
3190 PRINT "APPUYER SUR UNE TOUCHE":A$=KEY$:MON$="VAMPIRE VOLANT"
3200 CALL AFS(S$,EN,HA,CH,OB$)
3210 CALL EFF:CALL COMBAT(EN,HA,MON$,S2$,S3$)
3220 GOTO 2670


3230 !
3240 !
3250 !
3260 CALL COLOR("1WB"):FOR Y=9 TO 2 STEP -1:LOCATE (Y,9):PRINT "2":PAUSE .2
3270 LOCATE (Y,9):PRINT " ":NEXT Y:EN=EN-2
3280 CLS:CALL AFS(S$,EN,HA,CH,OB$):CALL COLOR("1RB")
3290 DATA "AAAAAAAAAAAAA"
3300 DATA "AAAAAAAAAAAAA"
3310 DATA "   ^   ^ 0 ^ "
3320 DATA " ^ 0 ^   ^   "
3330 DATA "   ^ 2 ^   ^0"
3340 DATA " ^   ^   ^   "
3350 DATA "   ^   ^   ^ "
3360 DATA " ^   ^   ^   "
3370 DATA "   ^   ^   ^ "
3380 RESTORE 3290:FOR Y=1 TO 9:READ A$:LOCATE (Y,2):PRINT A$:NEXT
3390 CALL COLOR("1WBF"):LOCATE (9,8):PRINT "2":CALL EFF
3400 PRINT "Vous etes tombe dans une fosse garnie de"
3410 PRINT "pieux.Vous perdez 2 pts d'endurance"
3420 PRINT "Cette fosse a deja fait beaucoup de vic-"
3430 PRINT "times parmi les gardes,cependant vous"
3440 PRINT "remarquez un cadavre d'homme en decompo-"
3450 PRINT "sition.Un pieu s'erige de son thorax"
3460 PRINT "et une violente odeur,vous fait tourner la tete":CALL QFV
3470 PRINT "1 Fouiller un garde"
3480 PRINT "2 Fouiller l'homme"
3490 IF COR=1 THEN PRINT "3 Lancer la corde"
3500 IF CH=0 OR EN=0 THEN 3730
3510 A$=KEY$
3520 IF A$="3"AND COR=1 THEN 3690
3530 IF A$<>"1" THEN 3620
3540 CALL EFF:CHA=INTRND(12):IF CHA<CH THEN 3570
3550 PRINT "L'odeur devient tres forte,vous vacillezet perdez 3 pts ";
3560 PRINT "d'endurance":EN=EN-3:CALL AFS(S$,EN,HA,CH,OB$):PAUSE 3
3570 CALL EFF:CH=CH-1:CHA=INTRND(12):IF CHA>CH THEN 3610
3580 PRINT "Vous trouvez dans une poche une fiole"
3590 PRINT "de serum contre les morsures de serpent":FIOLE=1:CH=CH-1
3600 PAUSE 3:GOTO 3280
3610 PRINT "Vous ne trouvez rien sur lui":CH=CH-1:PAUSE 3:GOTO 3280
3620 IF CLE(5)=0 THEN 3660
3630 IF CLE(5)<>1 THEN 3610 ELSE CALL EFF
3640 LOCATE (11,1):PRINT "Vous avez de la chance vous trouvez une clef"
3650 CH=CH+1:OB$=OB$&" CLEF":CLE(5)=0:PAUSE 4:CL=1:GOTO 3280
3660 IF PAR(5)<>1 THEN 3610 ELSE CALL EFF
3670 LOCATE (11,1):PRINT "Vous avez de la chance vous trouvez un  parchemin"
3680 CH=CH+1:OB$=OB$&" parchemin":PAR(5)=0:PA=1:PAUSE 3:GOTO 3280
3690 CALL EFF:PRINT "Vous lancez la corde ,et vous vous"
3700 PRINT "hissez hors du piege.Vous continuez     votre chemin"
3710 PRINT "Vous avez le choix entre 2 directions":CALL QFV:PRINT "1 Ouest"
3720 PRINT "2 Est":A$=KEY$:IF A$="2" THEN 5520 ELSE 5970
3730 CALL EFF:PRINT "Vous n'avez pas l'objet necessaire pour"
3740 PRINT "sortir de la fosse , vous mourez de faim"
3750 PRINT "et nourrissez les vers qui pullulent    dans ce piege.  ADIEU !!!"
3760 CALL BOB
3770 !
3780 !
3790 !
3800 CLS
3810 DATA "WWWWWWWWWWWWW"
3820 DATA " SOS    S    "
3830 DATA "SO OS     R Q"
3840 DATA "O   O  S    S"
3850 DATA "O   OVVVVVVVV"
3860 DATA " !           "
3870 CALL COLOR("1MB")
3880 RESTORE 3810:FOR Y=1 TO 6:READ A$:LOCATE (Y,2):PRINT A$:NEXT
3890 CALL COLOR("1YB"):LOCATE (3,4):PRINT "$":LOCATE (4,3):PRINT "$$$"
3900 LOCATE (5,3):PRINT "%%%"
3910 CALL COLOR("1WB"):LOCATE (8,4):PRINT "2"
3920 CALL AFS(S$,EN,HA,CH,OB$)
3930 CALL EFF:PRINT "Vous etes dans un couloir sombre"
3940 PRINT "Vous voyez une porte entouree de"
3950 PRINT "pierres.Au pied de celle-ci se trouve"
3960 PRINT "unebougie qui eclaire seulement la porte":CALL QFV
3970 PRINT "1 Ouvrir la porte,celle d'ou vous venez"
3980 PRINT "2 Partir dans le couloir"
3990 IF LUM<>1 THEN PRINT "3 Prendre la bougie" ELSE LOCATE (6,3):PRINT " "
4000 A$=KEY$
4010 IF A$="3" THEN LUM=1:GOTO 3770
4020 IF A$="2" THEN 4160
4030 CALL EFF:PRINT "Pour ouvrir cette porte vous devez trou"
4040 PRINT "ver le code (entre 0 et 999)":RANDOMIZE:COD=INTRND(999):TOU=1
4050 LOCATE (15,1):PRINT "QUEL NOMBRE PROPOSEZ VOUS ??"
4060 INPUT CODE:TOU=TOU+1
4065 IF CODE=COD THEN GOTO 4120
4070 IF TOU>10 THEN PRINT "Vous n'avez pas trouve le code,tout exp-lose"
4075 CALL BOB
4080 IF CODE>COD THEN PRINT "TROP GRAND"
4090 IF CODE<COD THEN PRINT "TROP PETIT"
4100 !
4110 PAUSE 1:GOTO 4050
4120 PRINT "BRAVO !!!!!":CALL SPEECH("L,"&S2$):PAUSE 2:CALL GRI:CALL EFF
4130 PRINT "Vous pouvez aller au nord ou a l'ouest":CALL QFV
4140 PRINT "1 Nord":PRINT "2 Ouest":A$=KEY$
4150 IF A$="1" THEN 3280 ELSE GOTO 2640
4160 CALL COLOR("1WB"):LOCATE (8,4):PRINT " ":LOCATE (8,13):PRINT "2"
4170 CALL AFS(S$,EN,HA,CH,OB$):CALL EFF:IF LUM=1 THEN GOTO 4200
4180 PRINT "Vous aventurez dans le passage et heur"
4190 PRINT "tez le mur et perdez 2 pts d'endurance":EN=EN-2:PAUSE 4:GOTO 3800
4200 PRINT "Vous trouvez une corde,et distinguer    un levier sur le mur"
4210 CALL QFV
4220 PRINT "1 Appuyer sur le levier"
4230 PRINT "2 Fouiller le recoin"
4240 PRINT "3 Retourner a la porte"
4250 IF COR<>1 THEN PRINT "4 Prendre la corde"
4260 A$=KEY$
4270 IF A$="3" THEN 3800
4280 IF A$="4" THEN COR=1:GOTO 4170
4290 IF A$="1" THEN CHE=1:GOTO 4390
4300 IF CLE(4)=0 THEN 4330
4310 CALL EFF:PRINT "Vous avez de la chance vous trouvez une"
4320 PRINT "clef":CLE(4)=0:CL=1:CH=CH+1:OB$=OB$&" clef":PAUSE 2:GOTO 4160
4330 IF PAR(4)=0 THEN 4370
4340 CALL EFF:PRINT "Vous avez de la chance vous trouvez un"
4350 PRINT "parchemin":PAR(4)=0:PA=1:CH=CH+1:OB$=OB$&" parchemin":PAUSE 2
4360 GOTO 4160
4370 MON$="SERPENT AILE":CALL EFF:CALL COMBAT(EN,HA,MON$,S2$,S3$)
4380 GOTO 4160
4390 CALL COLOR("1MB"):LOCATE (3,14):PRINT "P"
4400 CALL EFF:PRINT "Vous pressez sur le levier,une porte"
4410 PRINT "s'ouvre,vous avancez jusqu'a un croise-ment":CALL QFV
4420 PRINT "1 Aller au nord":PRINT "2 Aller a l'ouest"
4430 PRINT "3 Fouiller l'endroit":A$=KEY$
4440 IF A$="1" THEN 5050
4450 IF A$="2" THEN 5520
4460 CALL EFF:PRINT "Vous trouvez un parchemin":CALL QFV
4470 PRINT "1 Le lire"
4480 PRINT "2 Aller au nord":PRINT "3 Aller a l'ouest"
4490 PRINT "4 Continuer a chercher":A$=KEY$
4500 IF A$="2" THEN 5050
4510 IF A$="3" THEN 5520
4520 IF A$="4" THEN 4630
4530 CHA=INTRND(12):CALL EFF:IF CHA<CH THEN 4570
4540 PRINT "Vous venez de lire le poeme a la mort"
4550 PRINT "Vous etes pris de convulsions et dans un"
4560 PRINT "moment de folie,vous plongez votre epee dans votre poitrine"
4565 CALL BOB
4570 PRINT "Vous lisez le texte suivant:"
4580 PRINT "Mefie toi homme du futur,le vierle est"
4590 PRINT "dangereux,et rien ne pourra te sauver"
4600 PRINT "sauf le recueil des efdjnbm ecri par":TOU=INTRND(68)+54
4610 PRINT "dwdkuhrhnm ,appuie sur le ";TOU;" et tu seras libre"
4620 CALL COLOR("0CB"):PRINT "APPUYER SUR UNE TOUCHE":A$=KEY$:GOTO 4460
4630 CALL EFF:PRINT "Vous trouvez un passage vers une piece"
4640 PRINT "Vous avancez":PAUSE 4
4650 !
4660 !
4670 !

4680 CLS:CALL AFS(S$,EN,HA,CH,OB$):CALL COLOR("1WB")
4690 DATA "AAAAAAAAAAAAA"
4700 DATA "AAA.......AAA"
4710 DATA "AAA.D...D.AAA"
4720 DATA "AAA.......AAA"
4730 DATA "AAA.......AAA"
4740 DATA "AAA.......AAA"
4750 RESTORE 4690:FOR Y=1 TO 6:READ A$:LOCATE (Y,2):PRINT A$:NEXT
4760 CALL COLOR("1BW"):LOCATE (5,12):PRINT "Q":LOCATE (3,6):PRINT "D"
4761 LOCATE (3,10):PRINT "D"
4770 CALL EFF:PRINT "Vous etes dans une piece circulaire,vous"
4780 PRINT "voyez un levier":CALL QFV
4790 PRINT "1 Abaisser le levier"
4800 IF AIL=0 AND EP=0 THEN PRINT "2 Fouiller la piece"
4810 A$=KEY$
4820 IF A$="2"AND AIL=0 AND EP=0 THEN 4890
4821 CALL COLOR("1BW"):LOCATE (5,12):PRINT "P"
4830 IF A$=CHR$(T0U)THEN 5010
4840 CHA=INTRND(12):IF CHA<CH THEN 4870
4850 CALL EFF:PRINT "Vous abaissez le levier,et soudain le"
4860 PRINT "plafond s'ecroule,vous mourez sans souf-frir       ADIEU !!!!"
4865 CALL BOB
4870 CALL EFF:PRINT "Le sol se derobe sous vos pieds":CH=INT(CH/2)
4880 PRINT "Vous atterrissez devant la porte du     chateau.":PAUSE 5:GOTO 980
4890 CALL EFF:PRINT "Vous fouillez la piece et au bout de"
4900 PRINT "plusieurs minutes de recherches vous"
4910 PRINT "decouvrez un coffre;il contient une epeeet curieusement de l'ail"
4920 PRINT "Vous pouvez prendre l'epee,si vous"
4930 PRINT "prenez l'ail vos points d'endurance     seront divises par 2"
4940 CALL QFV
4950 IF EP=0 THEN PRINT "1 Prendre l'epee"
4955 IF AIL=0 THEN PRINT "2 Prendre l'ail"
4960 PRINT "3 Retour devant le levier":A$=KEY$
4970 IF A$="1" THEN HA=HA+5:EP=1
4980 IF A$="2" THEN AIL=1:EN=INT(EN/2)
4990 IF A$<>"3" THEN 4890
5000 GOTO 4680
5010 CALL EFF:PRINT "Vous trouvez le passage pour sortir":EP=0
5020 FOR Y=6 TO 2 STEP -1:LOCATE (Y,5):PRINT "       ":PAUSE .5:NEXT
5030 LOCATE (12,1):CALL QFV:PRINT "1 Nord":PRINT "2 Ouest":A$=KEY$
5040 IF A$="2" THEN 5520
5050 !
5060 !
5070 !
5080 CLS:CHE=1:CALL AFS(S$,EN,HA,CH,OB$):CALL COLOR("1RB")
5090 DATA "  abcd"
5100 DATA "  efgh"
5110 DATA "  ijkl"
5120 DATA ":..mn..;"
5130 DATA "...31..."
5140 DATA "...31..."
5150 DATA "...31..."


5160 RESTORE 5090:FOR Y=3 TO 9:READ A$:LOCATE (Y,4):PRINT A$:NEXT
5170 CALL EFF:PRINT "Vous arrivez devant une porte que vous  ouvrez a grand mal"
5180 PRINT "Quelle n'est pas votre surprise de vous"
5190 PRINT "trouvez en face du comte BEAFSAIGNANT."
5200 PRINT "Il vous toise du regard et laisse echap"
5210 PRINT "per un rire malefique;il vous demande:"
5220 PRINT "QUEL ES TON NOM,JEUNE IMBECILE"
5230 PRINT "Pour toute reponse vous lui crachez a la"
5240 PRINT "figure a quoi il repond d'un large geste"
5250 PRINT "du bras qui dechaine un vent violent"
5260 CALL COLOR("0CB"):PRINT "APPUYER SUR UNE TOUCHE":A$=KEY$
5270 CALL EFF:PRINT "Ce vent vous jette a terre et c'est a"
5280 PRINT "cet instant que vous realisez votre     erreur"
5290 PRINT "Le comte est un sorcier redoutable et"
5300 PRINT "sait se servir a merveille de la magie"
5310 PRINT "noire,vous allez le voir"
5311 IF AIL=0 THEN 5320
5312 PRINT "Heureusement vous avez de l'ail qui va"
5313 PRINT "vous aider a combattre ce vampire":CALL COLOR("0CB")
5320 PRINT "APPUYER SUR UNE TOUCHE":A$=KEY$:CALL EFF
5330 MON$="COMTE":CALL COMBAT(EN,HA,MON$,S2$,S3$)
5340 CALL EFF:PRINT "FELICITATION,JEUNE HOMME,VOICI L'EPREUVE NUMERO 2"
5350 PRINT "Mon premier est un ceaumor de ednaiv"
5360 PRINT "Mon deuxieme est juteux":PRINT "Quel est la solution ??":INPUT A$
5370 IF A$<>"BEAFSAIGNANT" THEN PRINT "FAUX,MEURS !!!!!!!":CALL BOB
5380 CALL EFF:PRINT "FELICITATIONS"
5390 PRINT "Le comte se transforme en fumee"
5400 PRINT "Une porte s'ouvre,vous entrez":PAUSE 3:GOTO 5520
5410 !
5420 !
5430 !
5440 CLS:CALL AFS(S$,EN,HA,CH,OB$):CALL COLOR("1WB")
5450 RESTORE 1960:FOR Y=1 TO 9:READ A$:LOCATE (Y,2):PRINT A$:NEXT:CALL EFF:CHE=1
5460 PRINT "Vous etes sur les remparts,devant vous"
5470 PRINT "une porte.Vous vous dirigez vers elle"
5480 CHA=INTRND(5):PRINT "Vous rencontrez";CHA;"garde(s)":MON$="GARDE"
5490 CALL COLOR("0CB"):PRINT "APPUYER SUR UNE TOUCHE":A$=KEY$
5500 FOR Y=1 TO CHA:CALL EFF:CALL COMBAT(EN,HA,MON$,S2$,S3$):NEXT
5510 CALL EFF:PRINT "BRAVO ,vous poursuivez votre chemin":PAUSE 5:GOTO 5050
5520 !
5530 !
5540 !
5550 DATA "AAAAAAAAAAAAA"
5560 DATA "AAAAA> <AAAAA"
5570 DATA "AA AA? =AA AA"
5580 DATA "AA AA? =AA AA"
5590 CLS:CALL AFS(S$,EN,HA,CH,OB$):RESTORE 5550
5600 CALL COLOR("1bY"):FOR Y=1 TO 4:READ A$:LOCATE (Y,2):PRINT A$:NEXT
5610 CALL EFF:PRINT "Vous etes dans une salle froide,de par "
5620 PRINT "la presence de portes.Vous etes inquiete"
5621 PRINT "par un sifflement percant."
5630 PRINT "vous levez votre bougie allumee et tout s'eclaire; malheureusement"
5640 PRINT "vous apercevez un serpent et une chauve souris"
5641 PRINT "Vous devrez eviter les animaux pour     aller ouvrir la porte"
5650 PRINT "APPUYER SUR UNE TOUCHE":GOSUB 310:CALL SPEECH("L,"&A$&B$&C$&D$)
5660 A$=KEY$:A$="":PRINT "*** O.K ***"
5670 GOSUB 6290:CALL POKE(124,0,1,128,50):CALL EXEC(IN)
5680 X=7:Y=9:SX=INTRND(5)+5:DX=1:CX=INTRND(6)+4:CY=6:DCX=1:DCY=1:H=0
5690 LOCATE (5,SX):PRINT " ":SX=SX+DX
5700 IF SX=4 OR SX=12 THEN DX=-DX
5710 IF SX=X AND Y=5 AND FIOLE=0 THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5720 IF SX=X AND Y=5 AND FIOLE=1 THEN EN=EN/2
5730 CALL COLOR("1GB"):LOCATE (5,SX):PRINT "B"
5740 LOCATE (CY,CX):PRINT "   ":CX=CX+DCX:CY=CY+DCY
5750 IF CX=2 OR CX=12 THEN DCX=-DCX
5760 IF CY=5 OR CY=9 THEN DCY=-DCY
5770 IF CX=X AND CY=Y THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5780 IF CX=X+1 AND CY=Y THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5790 IF CX=X+2 AND CY=Y THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5800 CALL COLOR("1RB"):LOCATE (CY,CX):PRINT "CDE"
5810 CALL KEY1(R,G):IF G=0 AND H=1 THEN 5690
5820 IF R=128 THEN Y=Y-1:IF Y=4 AND X<>7 THEN Y=5:GOTO 5860
5830 IF R=130 THEN Y=Y+1:IF Y=10 THEN Y=9:GOTO 5860
5840 IF R=129 THEN X=X+1:IF X=14 THEN X=13:GOTO 5860
5850 IF R=131 THEN X=X-1:IF X=1 THEN X=2
5860 IF X=SC AND Y=4 AND FIOLE=0 THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5870 IF CX=X AND CY=Y THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5880 IF CX=X+1 AND CY=Y THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5890 IF CX=X+2 AND CY=Y THEN EN=0:CALL AFS(S$,EN,HA,CH,OB$)
5900 GOSUB 6530
5910 IF X=7 AND Y=4 THEN GOTO 5930
5920 H=1:GOTO 5690
5930 GOSUB 390:CALL SPEECH("L,"&A$&B$&C$&D$):PAUSE 1
5940 IF CHE=1 THEN 5970
5950 CALL EFF:PRINT "Vous partez vers l'est":PAUSE 2:CHE=1:CALL QFV
5960 GOTO 4420
5970 !
5980 !
5990 !
6000 CLS:CALL AFS(S$,EN,HA,CH,OB$)
6001 DATA "   YXWWYX"
6002 DATA "    Y  X"
6010 DATA "     <>"
6020 DATA ""
6030 DATA ""
6040 DATA " NN      N"
6050 DATA " MM      M"
6060 DATA "JKKL    JKL"
6070 DATA "..........."
6080 CALL COLOR("1WB"):RESTORE 6001:FOR Y=1 TO 9:READ A$:LOCATE (Y,2)
6090 PRINT A$:NEXT:CALL COLOR("1YR"):LOCATE (2,7):PRINT "HI"
6100 CALL EFF:IF CL=1 THEN 6160
6110 PRINT "Vous avez trouve la salle de commande"
6120 PRINT "vous poussez la porte mais elle reste   obstinement fermee."
6130 PRINT "En effet vous nepouvez l'ouvrir car vous"
6140 PRINT "ne possedez pas la clef.Desole,tout vos"
6150 PRINT "efforts n'auront servis a rien.         ADIEU !!!!!":CALL BOB
6160 CALL EFF:PRINT "Vous etes devant la porte de la salle"
6170 PRINT "que vous ouvrez a l'aide de votre clef."
6180 CALL QFV:PRINT "1 Lire votre parchemin":PRINT "2 Brisez les ordinateurs"
6190 IF PA=1 THEN PRINT "3 Brisez le diamant"
6200 A$=KEY$:IF A$="3"AND PA=1 THEN 6265
6210 IF A$="2" THEN 6260
6211 IF A$="1"AND PA=1 THEN INPUT "QUE TAPEZ VOUS ?";B$:GOTO 6261
6220 CALL EFF:PRINT "Vous enlevez le diamant dont l'energie"
6230 PRINT "etait aspiree;cette derniere vous inon"
6240 PRINT "de,vous sentez naitre en vous une force nouvelle que vous ne pouvez"
6250 PRINT "dominer.Vous vous ecroulez,victime du   diamant.":CALL BOB
6260 CALL BOB
6261 CALL EFF:PRINT "Vous brisez les ordinateurs qui explo- sent;vous avec.":END
6262 IF B$<>"INTRODUIRE LE PARCHEMIN" THEN 6260
6263 CALL EFF:PRINT "BRAVO,vous avez reussi votre mission":GOSUB 400
6264 PRINT "la preuve le chateau disparait avec le":CALL SPEECH("L,"&A$&B$&C$)
6265 PRINT "comte.Vous aussi vous rejoignez le 20e  siecle.BRAVO":CALL BOB
6266 CALL EFF:PRINT "DF QBSDIFNJO FTU VOF EJTRVFUUF QPVS"
6267 PRINT "BSSFUFS MF TZTUFNT RVJ NBJOUFJOU MF"
6268 PRINT "DPNUV BV EPVAJFNF TJFDMF JM GBVU UBQFS"
6269 PRINT "==> JOUSPEVJSF MF QBSDIFNJO":CALL COLOR("0CB")
6270 PRINT "APPUYER SUR UNE TOUCHE":A$=KEY$:GOTO 6160
6280 !
6290 !
6300 !
6310 IN=50688
6320 DE=50725
6330 DATA 7C527DDE7C387C290058FE297798017D98010EF6D728D07AD728D07B127EY
6340 DATA 822E127F822E0AY
6350 DATA 987D0EF7127A822E127B822E7D2978E3EE98797DE0C5X
6360 ADR=IN
6370 RESTORE 6330
6380 J=0
6390 READ X$
6400 FOR I=1 TO LEN(X$)STEP 2
6410 A$=SEG$(X$,I,1)
6420 IF A$="X" THEN GOTO 6520
6430 IF A$="Y" THEN GOTO 6390
6440 IF NUMERIC(A$)THEN A=VAL(A$) ELSE A=ASC(A$)-55
6450 B=16*A
6460 A$=SEG$(X$,I+1,1)
6470 IF NUMERIC(A$)THEN A=VAL(A$) ELSE A=ASC(A$)-55
6480 B=B+A
6490 CALL POKE(ADR+J,B)
6500 J=J+1
6510 NEXT I
6520 RETURN
6530 !
6540 !
6550 !
6560 CALL POKE(120,X,Y)
6570 CALL EXEC(DE)
6580 RETURN
6590 !
6600 !
6660 SUB AFS(S$,EN,HA,CH,OB$)
6670 CALL COLOR("0bb"):CALL SPEECH("L,"&S$)
6680 LOCATE (10,1):PRINT RPT$(" ",40)
6690 FOR Y=1 TO 9:LOCATE (Y,1):PRINT " ":NEXT Y
6700 FOR Y=1 TO 9:LOCATE (Y,15):PRINT " ":NEXT Y
6710 CALL COLOR("0YB"):LOCATE (2,17):IF CH<0 THEN CH=0
6720 PRINT "Endurance :";EN
6730 LOCATE (4,17):PRINT "Habilete  :";HA
6740 LOCATE (6,17):PRINT "Chance    :";CH
6750 LOCATE (8,17):PRINT "Objets :";OB$
6760 IF EN<=0 THEN CALL BOB
6770 SUBEND
6780 !
6790 !
6800 !
6810 SUB EFF
6820 CALL COLOR("0BB"):FOR Y=11 TO 21
6830 LOCATE (Y,1):PRINT "                                        ";:NEXT Y
6840 LOCATE (22,1):PRINT "                                       ";
6850 CALL COLOR("0MB"):LOCATE (11,1)
6860 SUBEND
6870 !
6880 !
6890 !
6900 SUB COMBAT(EN,HA,MON$,S2$,S3$)
6910 RANDOMIZE:EN2=INTRND(12):HA2=INTRND(6)+6
6920 IF MON$="COMTE" THEN HA2=14:EN2=20
6930 CALL COLOR("0CB"):LOCATE (11,1)
6940 PRINT "Vous rencontrez un ";MON$
6950 PRINT "Vous devez le combattre,son endurance"
6960 PRINT "est de ";EN2;" et son habilete de ";HA2
6965 CALL COLOR("0YB"):PRINT "*** Appuyez sur une touche ***":Q$=KEY$
6970 CALL SPEECH("L,"&S3$)
6980 LOCATE (16,1):CALL COLOR("0GB"):PRINT "VOUS";RPT$(" ",LEN(MON$)-3);
6990 FOR Y=1 TO EN:PRINT CHR$(12);:NEXT:PRINT " "
7000 LOCATE (18,1):CALL COLOR("0RB"):PRINT MON$;" ";
7010 FOR Y=1 TO EN2:PRINT CHR$(12);:NEXT:PRINT " "
7020 FA2=INTRND(12)+HA2
7030 FA1=INTRND(12)+HA
7040 IF FA2>FA1 THEN EN=EN-1
7050 IF FA2<FA1 THEN EN2=EN2-1
7060 IF FA2=FA1 THEN 7020
7070 IF EN2<=0 THEN PRINT "Vous l'avez vaincu le ";MON$
7080 IF EN<=0 THEN PRINT "Il vous a vaincu , ADIEU !!!!": END
7090 IF EN2>0 AND EN>0 THEN 6970
7100 CALL COLOR("0CB"):PRINT "APPUYER SUR UNE TOUCHE"
7110 CALL SPEECH("L,"&S2$):PAUSE 1
7120 CALL KEY1(CC,TT):IF CC=255 THEN 7120
7130 SUBEND
7140 SUB QFV
7150 CALL COLOR("0CB"):PRINT "########## Que faites vous ?? ##########";
7160 CALL COLOR("0GB"):SUBEND
7170 SUB GRI
7180 CALL COLOR("1YB")
7190 LOCATE (5,3):PRINT "   ":LOCATE (4,3):PRINT "%%%":PAUSE .3
7200 LOCATE (4,3):PRINT "   ":LOCATE (3,4):PRINT "%":PAUSE .3
7210 LOCATE (3,4):PRINT " "
7220 SUBEND
7240
7250
7260
7270

 

Ce listing est uniquement proposé pour un usage privé.
Sans accord écrit préalable, vous n'êtes pas autorisé à le distribuer, le transmettre ou le rediffuser.