childhood games
1984-2008 Eugenio Tisselli

dracula's labyrinths

Your train has just arrived to Transilvania. The treasures of Dracula await! Inside the castle there are terrible dangers... but you are a fearless hero, thirsty of adventures.

Instructions

Move towards the treasure ($) using the cursor keys... Avoid dracula (&), who will be trying to catch you. Black widows are also deadly(*). In each laberynth, you will have one minute to get to the treasure. Beware: Dracula can destroy walls. You win when you collect all 15 treasures. If the keyboard is not responding, click on the game to activate it.

Play "Dracula's Labyrinths"

Original code

Transcription

1 ?"[clr]DRACULA'S CASTLE[down]MCMLXXXIV BY TISSELLI":POKE788,52
2 ?"HIT ANY KEY"
3 GET A$:IF A$="" THEN 3
4 GOSUB 52
5 ?"[clr]":F=9:G=200:LAB=1:RT=0
6 ?"ACABA DE LLEGAR TU TREN"
7 ?"A TRANSILVANIA"
8 ?"TU MISION:"
9 ?"RECOGER LOS 7 TESOROS DE DRACULA"
10 ?"QUE ESTAN EN SU CASTILLO"
11 ?"SIMBOLOS:"
12 ?"* = VIUDA NEGRA"
13 ?"& = DRACULA"
14 ?"% = TESORO"
15 ?"$ = TU"
16 ?"[Q][Q]APRIETA CUALQUIER TECLA"
17 GET A$:IF A$="" THEN 17
18 S=1106:L=1114:R=1428
19 ?"[clr]"
20 FOR A=1 TO G
21 N=INT(RND(1)*1000)+1024
22 POKEN,81:POKEN+54272,0:NEXT
23 FOR B=1 TO 2000:NEXT
24 FOR A=1 TO F
25 O=INT(RND(1)*1000)+1024
26 POKEO,42:POKEO+54272,0:NEXT
27 TI$="000000"
28 POKEL,88:POKEL+54272,7
29 POKES,90:POKES+54272,7
30 POKER,65:POKER+54272,0
31 GET A$:IF A$="[up]" AND PEEK(L-40)<>81 THEN POKEL,32:L=L-40
32 IF A$="[down]" AND PEEK(L+40)<>81 THEN POKEL,32:L=L+40
33 IF A$="[left]" AND PEEK(L-1)<>81 THEN POKEL,32:L=L-1
34 IF A$="[right]" AND PEEK(L+1)<>81 THEN POKEL,32:L=L+1
35 LY=INT((L-S)/40):LX=L-S-LY*40
36 RY=INT((M-S)/40):RX=R-S-RY*40
37 IF RX<LX AND (PEEK(M+1)=32 OR PEEK(M+1)=88) THEN POKER,32:R=R+1
38 IF RX>LX AND (PEEK(M-1)=32 OR PEEK(M-1)=88) THEN POKER,32:R=R-1
39 IF RY>LY AND PEEK(M-40)=32 OR PEEK(M-40)=88) THEN POKER,32:R=R-40
40 IF RY<LY AND PEEK(M+40)=32 OR PEEK(M+40)=88) THEN POKER,32:R=R+40
41 IF PEEK(L)=42 THEN ?"[S][R]TE ATRAPO LA VIUDA NEGRA": END
42 IF PEEK(L)=65 THEN ?"[S][R]TE ATRAPO DRACULA": END
43 IF TI>=2000 THEN ?"[S][R] SE ACABO EL TIEMPO":LA=LA-1:G=G-50:F=F-5:GOTO 48
44 IF PEEK(L)=90 THEN 46
45 GOTO 28
46 ?"[S][R]ENCONTRASTE EL TESORO!!!":LAB=LAB+1:G=G+50:F=F+5
47 FOR A=1 TO 5000:NEXT
48 IF LA=0 THEN END
49 IF LA=8 THEN ?"GANASTE!!!":END
50 ?"PASAS AL ";LAB;"LABERINTO
51 GOTO 16
52 V=53248:POKE 53281,1:?"[clr]"
53 POKEV+21,4:POKEV+40,0
54 POKE 2042,13
55 FOR N=0 TO 62:READ Q:POKE832+N,Q:NEXT
56 FOR X=0 TO 200
57 POKEV+5,X:POKEV+4,X
58 FOR A=1 TO 100: NEXT A:NEXT X
59 GOTO 66
60 DATA 0,0,0,0,252,0,0,180,0,0,252,0
61 DATA 0,204,0,0,252,48,0,120,96,3,183
62 DATA 192,3,207,128,7,248,0,7,248,0,15
63 DATA 252,0,11,252,0,3,252,0,3,252,0
64 DATA 3,252,0,3,252,0,3,232,0,2,207
65 DATA 0,6,0,0,0,0,0
66 ?"[clr]":V=53248
67 POKEV+21,8:POKEV+40,2
68 POKE 2043,13
67 FOR N=0 TO 62:READ R: POKE 832+N,Q: NEXT
68 FOR X=0 TO 500
69 POKEV+6,X:NEXT:RETURN

Comments

* The subroutine in lines 52-69 is probably a sound introduction to the game. I haven't been able to check, but I'm pretty sure that it plays a little melody as far as I can tell.

* The game, as I wrote it, has a lot of problems which generate syntax errors. In any case, these are not fundamental problems, and I'm sure I corrected them very easily back then. In the first place, the variable "M" should be "R".

* There is a missing open parenthesis "(" in line 39, and also in line 40.

* In lineas 5, 46 and 50, variable "LAB" should be "LA".

* Double quotes are missing at the end of line 50.

* Line 67 should be:
67 FOR N=0 TO 62:READ R: POKE 832+N,R: NEXT

* In the original game, Dracula can't destroy walls. I just added this to make it more exciting.

New Processing code (download)

<<< back