"Return to Belmar Castle" para QL

El único de Sinclair no puede no tener un foro dedicado

Moderador: Fundadores

Responder
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5879
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2834 times
Contactar:

"Return to Belmar Castle" para QL

Mensaje por cacharreo »

Instrucciones para la versión en INGLÉS

Presentación
Basado en la nueva versión extendida del juego original “Belmar Castle” para el sistema Commodore 64 programada por @dancresp.

Imagen
Imagen

El juego es una aventura conversacional en inglés en el que nuestro protagonista, el caballero Will E., debe realizar las acciones oportunas y reunir los objetos necesarios para derrotar al maligno mago que habita en el castillo de Belmar.

Instrucciones
Solo hay que introducir las órdenes desde el teclado para movernos por las distintas localizaciones del juego y avanzar en la aventura.

Las 13 órdenes disponibles son las siguientes,

N, S, E, W, UP, DOWN - Para moverse por el territorio de la aventura.
TAKE, GET, DROP, USE - Manipular objetos (respectivamente coger, coger, soltar, usar).
INV - Inventario de objetos (lista de objetos que se transportan).
EXAMINE - Examinar un objeto que tenemos o que está en nuestra misma ubicación.
LOOK - Descripción de la ubicación.
QUIT - Abandonar el juego.

Durante el juego se puede obtener este listado de órdenes introduciendo el comando "HELP".

Notas
La resolución del juego es totalmente lógica y no requiere de acciones absurdas o inesperadas.

El juego no es trivial pero es totalmente resoluble.

última versión
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5879
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2834 times
Contactar:

"Regreso al castillo de Belmar" para QL

Mensaje por cacharreo »

Instrucciones para la versión en ESPAÑOL

Presentación
Basado en la nueva versión extendida del juego original “Belmar Castle” para el sistema Commodore 64 programada por @dancresp.

Imagen
Imagen

El juego es una aventura conversacional en español en el que nuestro protagonista, el caballero Will E., debe realizar las acciones oportunas y reunir los objetos necesarios para derrotar al maligno mago que habita en el castillo de Belmar.

Instrucciones
Solo hay que introducir las órdenes desde el teclado para movernos por las distintas localizaciones del juego y avanzar en la aventura.

Las 13 órdenes disponibles son las siguientes,

N, S, E, O, ARRIBA, ABAJO - Para moverse por el territorio de la aventura.
COGE, TOMA, SUELTA, USA - Manipular objetos.
INV - Inventario de objetos (lista de objetos que se transportan).
EXAMINA - Examinar un objeto que tenemos o que está en nuestra misma ubicación.
MIRA - Descripción de la ubicación.
SALIR - Abandonar el juego.

Durante el juego se puede obtener este listado de órdenes introduciendo el comando "AYUDA".

Notas
La resolución del juego es totalmente lógica y no requiere de acciones absurdas o inesperadas.

El juego no es trivial pero es totalmente resoluble.

última versión
© cacharreo
Avatar de Usuario
jordigahan
Demonio segundo orden
Demonio segundo orden
Mensajes: 1760
Registrado: 06 Sep 2013, 02:17
Has thanked: 3 times
Been thanked: 17 times
Contactar:

Re: Programillas en BASIC

Mensaje por jordigahan »

nah! este hilo no tiene gracia si no se programa para el +2 128K
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5879
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2834 times
Contactar:

Re: "Regreso al castillo de Belmar" para QL

Mensaje por cacharreo »

Todos los programas son para el QL aunque muchos podrían portarse al Spectrum sin problemas.

Acabo de actualizar las dos versiones porque el renumerado había hecho una gracieta, aún no sé por qué.

Hice la conversión porque siempre me llamó la atención este género que combina laberintos y puzzles dentro de una ficción interactiva. Por lo que sea me resulta fácil sumergirme en el mundo ficticio creado para el juego y conectar con la trama y personajes. Generar, tomar decisiones y ver como afectan a la narrativa y el desafío que plantean estas tramas tienen un algo de exploración que echo de menos en otras experiencias con video juegos.

Soluciones (NO SE RECOMIENDA CONSULTARLAS PORQUE ARRUINAN LA EXPERIENCIA DEL JUEGO)
► Mostrar Spoiler
© cacharreo
Avatar de Usuario
cacharreo !Sinclair 1
Moderador
Moderador
Mensajes: 5879
Registrado: 09 Ago 2019, 10:17
Ubicación: /home/cacharreo/
Has thanked: 1210 times
Been thanked: 2834 times
Contactar:

Re: "Regreso al castillo de Belmar" para QL

Mensaje por cacharreo »

Nueva versión 1.03beta

La única novedad de esta versión es que no requiere la ROM Minerva porque crea dos funciones (realmente procedimientos) similares a READ para leer matrices numéricas (unidimensionales o bidimensionales) y alfanuméricas desde datos en sentencias DATA. En definitiva, dos nuevas funciones que hacen algo similar a las ROM Minerva 1.96 y posteriores con lo que el programa ahora funciona con ROM antiguas como la JS.

Código: Seleccionar todo

100 REMark Return to Belmar Castle / Regreso al castillo de Belmar 1.03beta
110 :
120 REMark (adaptado desde la version para C64 de @dancresp)
130 :
140 GO TO 3000
150 :
160 REMark ##########################################
170 REMark tablas
180 REMark ##########################################
190 :
200 REMark entidades (localizaciones)
210 :
220 DATA 0, 12, 2, 3, 17, 99, 4, 8, 99, 15, 19, 13, 11
230 :
240 REMark mapa por localizaciones/accion
250 :
260 DATA -1, 12, 1, -1, -1, -1
270 DATA -1, 3, 2, 0, -1, -1
280 DATA -1, -1, 18, 1, -1, -1
290 DATA 1, -1, -1, -1, -1, -1
300 DATA -1, 6, -1, 3, -1, -1
310 DATA -1, -1, 6, -1, -1, -1
320 DATA 4, 8, 7, 5, -1, -1
330 DATA 16, -1, -1, 6, -1, -1
340 DATA 6, -1, 9, -1, -1, -1
350 DATA -1, -1, -1, 8, 7, 11
360 DATA -1, -1, 11, 17, -1, -1
370 DATA -1, -1, -1, 10, 9, -1
380 DATA 0, 13, -1, -1, -1, -1
390 DATA 12, -1, -1, -1, -1, -1
400 DATA -1, -1, 15, -1, 13, -1
410 DATA -1, -1, -1, 14, -1, -1
420 DATA -1, 7, -1, -1, -1, -1
430 DATA -1, -1, 10, -1, -1, -1
440 DATA -1, -1, -1, 2, -1, -1
450 DATA -1, -1, -1, -1, 14, -1
460 :
470 REMark ##########################################
480 REMark english
490 REMark ##########################################
500 :
510 REMark localizaciones
520 :
530 DATA "a church in a prairie", "a thick forest"
540 DATA "a dark cave", "the castle door"
550 DATA "the castle courtyard", "the castle parlor"
560 DATA "the castle hall", "a castle room"
570 DATA "the throne room", "the stairs to dungeons"
580 DATA "the dungeons of castle", "the guard's cabin"
590 DATA "the church cemetery", "a cemetery pantheon"
600 DATA "a sinister catacombs", "the ossuary chamber"
610 DATA "a garden with a fountain", "a dungeon cell"
620 DATA "a deep abyss", "the castle sewers"
630 :
640 REMark entidades (nombres)
650 :
660 DATA "lantern", "oil", "rope", "sign"
670 DATA "sword", "chainmail", "werewolf", "wizard"
680 DATA "key", "cross", "coin", "jewels", "guardian"
690 :
700 REMark entidades (descripciones)
710 :
720 DATA "an oil lantern", "oil for a lantern"
730 DATA "a rope with knots", "a sacred amulet"
740 DATA "a steel sword", "a protective chainmail"
750 DATA "the dangerous werewolf", "the evil wizard"
760 DATA "a big iron key", "a sacred wooden cross"
770 DATA "a gold coin", "the jewels of a corpse"
780 DATA "a guardian of the dungeon"
790 :
800 REMark acciones
810 :
820 DATA "n", "s", "e", "w", "up", "down"
830 DATA "help", "get", "take", "drop", "inv", "use", "examine", "look", "quit"
840 :
850 REMark cadenas de texto usadas por el programa
860 :
870 DATA "you see"
880 DATA "move to"
890 DATA "it's dark."
900 DATA "i can't go."
910 DATA "you fall into the abyss."
920 DATA "the guardian attacks you."
930 DATA "werewolf attacks you."
940 DATA "the attack fails."
950 DATA "fireball!"
960 DATA "it hits!"
970 DATA "you died!"
980 DATA "try again"
990 DATA "ny"
1000 DATA "eh?"
1010 DATA "i can't."
1020 DATA "ok."
1030 DATA "the fountain empties."
1040 DATA "a chainmail appears."
1050 DATA "you light the lantern"
1060 DATA "you fill the lantern."
1070 DATA "the door opens..."
1080 DATA "the cross fades in your hands..."
1090 DATA "...and a key appears."
1100 DATA "slash!"
1110 DATA "with one final precise strike, your sword pierced the heart of the evil wizard, putting an end to his reign of terror and restoring peace to the kingdom once more."
1120 DATA "congratulations Will E.!!"
1130 DATA "you cut the wind!"
1140 DATA "guardian takes the jewels."
1150 DATA "he escapes from the dungeon."
1160 DATA "bye!"
1170 :
1180 REMark presentacion
1190 :
1200 DATA "RETURN TO BELMAR CASTLE", "to"
1210 :
1220 REMark ##########################################
1230 REMark espanol
1240 REMark ##########################################
1250 :
1260 REMark localizaciones
1270 :
1280 DATA "una iglesia en una pradera", "un espeso bosque"
1290 DATA "una tenebrosa cueva", "el porton del castillo"
1300 DATA "el patio del castillo", "el salon principal del castillo"
1310 DATA "la antesala del castillo", "una sala del castillo"
1320 DATA "la sala del trono", "las escaleras a las mazmorras"
1330 DATA "las mazmorras del castillo", "la garita del centinela"
1340 DATA "el solitario cementerio", "un panteon del cementerio"
1350 DATA "unas siniestras catacumbas", "la camara del osario"
1360 DATA "un jardin con una fuente", "una celda de las mazmorras"
1370 DATA "el profundo pozo del abismo", "las cloacas del castillo"
1380 :
1390 REMark entidades (nombres)
1400 :
1410 DATA "linterna", "aceite", "cuerda", "amuleto"
1420 DATA "espada", "cota", "hombre-lobo", "mago"
1430 DATA "llave", "cruz", "moneda", "joyas", "centinela"
1440 :
1450 REMark entidades (descripciones)
1460 :
1470 DATA "una lampara de aceite", "aceite para la lampara"
1480 DATA "una cuerda con gruesos nudos", "un amuleto sagrado"
1490 DATA "una espada de acero", "una cota de malla"
1500 DATA "el terrorifico hombre lobo", "el malvado mago"
1510 DATA "una gran llave de hierro", "una cruz consagrada de madera"
1520 DATA "una moneda de oro", "la joyeria de un cadaver"
1530 DATA "el centinela de las mazmorras"
1540 :
1550 REMark acciones
1560 :
1570 DATA "n", "s", "e", "o", "arriba", "abajo"
1580 DATA "ayuda", "toma", "coge", "suelta", "inv", "usa", "examina", "mira", "salir"
1590 :
1600 REMark cadenas de texto usadas por el programa
1610 :
1620 DATA "ves"
1630 DATA "salidas"
1640 DATA "esta oscuro."
1650 DATA "no puedo avanzar."
1660 DATA "has caido en el pozo del abismo."
1670 DATA "el centinela te ataca."
1680 DATA "un hombre lobo te ataca con fiereza."
1690 DATA "el ataque falla."
1700 DATA "una bola de fuego!"
1710 DATA "te ha dado!"
1720 DATA "estas muerto!"
1730 DATA "quieres intentarlo otra vez"
1740 DATA "ns"
1750 DATA "quee?"
1760 DATA "no puedo hacer eso."
1770 DATA "vale."
1780 DATA "la fuente se vacia por si sola."
1790 DATA "aparece una cota de malla."
1800 DATA "has encendido la linterna."
1810 DATA "has rellenado la linterna con aceite."
1820 DATA "la puerta se abre..."
1830 DATA "la cruz se desvanece en tus manos y..."
1840 DATA "...en su lugar aparece una llave."
1850 DATA "swish!"
1860 DATA "con un ultimo golpe certero, tu espada atraviesa el corazon del malvado mago poniendo asi fin a su reinado de terror y devolviendo la paz al reino."
1870 DATA "enhorabuena Will E.!"
1880 DATA "has fallado!"
1890 DATA "el centinela toma las joyas y"
1900 DATA "escapa de las mazmorras."
1910 DATA "hasta la proxima!"
1920 :
1930 REMark presentacion
1940 :
1950 DATA "REGRESO AL CASTILLO DE BELMAR", "para"
1960 :
1970 REMark ##########################################
1980 REMark funciones y procedimientos
1990 REMark ##########################################
2000 :
2010 DEFine FuNction lower$(s$)
2020   REMark devuelve la cadena en letra minuscula
2030   LOCal c, i
2040   FOR i = 1 TO LEN(s$): c = CODE(s$(i)): IF c > 64 AND c < 91 THEN s$(i) = CHR$(c + 32)
2050   RETurn s$
2060 END DEFine lower$
2070 :
2080 DEFine FuNction trim$(s$)
2090   REMark devuelve una cadena sin espacios iniciales ni finales
2100   LOCal ixs, ixe, l
2110   l = LEN(s$)
2120   FOR ixs = 1 TO l: IF s$(ixs) <> " " THEN EXIT ixs
2130   FOR ixe = l TO ixs STEP -1: IF s$(ixe) <> " " THEN EXIT ixe
2140   RETurn s$(ixs TO ixe)
2150 END DEFine trim$
2160 :
2170 DEFine FuNction selectOption(options$)
2180   REMark espera una tecla dentro de la lista de n opciones y devuelve el numero de opcion seleccionada
2190   LOCal i, l, k$
2200   l = LEN(options$)
2210   k$ = lower$(INKEY$(0)): IF CODE(k$) = 27 THEN RETurn 0
2220   FOR i = 1 TO l: IF k$ = options$(i) THEN RETurn i
2230   GO TO 2210
2240 END DEFine selectOption
2250 :
2260 DEFine FuNction index(needle$, haystack$, min)
2270   REMark devuelve el indice de una cadena en una lista (-1 si no la encuentra)
2280   LOCal i, h$, n$
2290   IF min > 0 AND LEN(needle$) >= min THEN n$ = needle$(1 TO min): ELSE n$ = needle$
2300   FOR i = 0 TO DIMN(haystack$)
2310     h$ = haystack$(i)
2320     IF min > 0 AND LEN(h$) >= min THEN h$ = haystack$(i, 1 TO min)
2330     IF n$ = h$ THEN RETurn i
2340   NEXT i
2350   RETurn -1
2360 END DEFine getIndex
2370 :
2380 DEFine PROCedure help
2390   REMark ayuda
2400   LOCal x
2410   FOR x = 0 TO 12:
2420     IF x THEN PRINT ", "!
2430     PRINT action$(x)!
2440   NEXT x
2450   PRINT
2460 END DEFine help
2470 :
2480 DEFine PROCedure readArrayN( array )
2490   REMark lee una matriz completa de valores numericos desde sentencias DATA
2500   LOCal d, i, j
2510   d = 1+(DIMN(array, 2)<>0)
2520   IF d=1 THEN 
2530     REMark matrices unidimensionales
2540     FOR i = 0 TO DIMN(array, 1): READ array(i)
2550   ELSE 
2560     REMark matrices bidimensionales
2570     FOR i = 0 TO DIMN(array, 1): FOR j = 0 TO DIMN(array, 2): READ array(i, j): NEXT j: NEXT i
2580   END IF 
2590 END DEFine readArrayN
2600 :
2610 DEFine PROCedure readArrayS( array$ )
2620   REMark lee una matriz completa de valores alfanumericos desde sentencias DATA
2630   LOCal i, s$
2640   FOR i = 0 TO DIMN(array$, 1): READ array$(i)
2650 END DEFine readArrayS
2660 :
2670 DEFine PROCedure parseInput
2680   REMark normaliza la entrada por teclado
2690   REMark   entrada: a$ (formato: accion entidad)
2700   REMark   salida: a$ accion, e$ entidad
2710   LOCal e
2720   a$ = lower$(trim$(a$)): e$ = "": e = " " INSTR a$
2730   IF e THEN e$ = trim$(a$(e+1 TO LEN(a$))) : a$ = trim$(a$(1 TO e-1))
2740 END DEFine parseInput
2750 :
2760 DEFine PROCedure terminate
2770   REMark finalizacion del programa
2780   kk$ = INKEY$(0): REMark limpia las teclas pendientes en la cola del teclado
2790 END DEFine terminate
2800 :
2810 DEFine PROCedure intro
2820   REMark presentacion
2830   INK 7: CLS: PRINT title$
2840   PRINT FILL$("-", LEN(title$))
2850   INK 0: PRINT "   "&dedication$&" paul allen 'dunric' panks,"
2860   PRINT "   bieno, commodore mania & dancresp": PRINT: INK 7
2870 END DEFine intro
2880 :
2890 DEFine PROCedure showLocationDetails
2900   REMark muestra la descripcion y salidas de una localizacion
2910   LOCal margin$: margin$ = FILL$(" ", LEN(t$(0))) & "- " : PRINT t$(0)&": "!: PRINT location$(r);"."
2920   FOR x = 0 TO 12: IF entity_room(x) = r THEN PRINT margin$;entity_name$(x);"."
2930   :
2940   REMark salidas
2950   :
2960   PRINT t$(1)&": < ";
2970   FOR x = 0 TO 5: IF map(r, x) >= 0 THEN PRINT action$(x);" ";
2980   PRINT ">":
2990 END DEFine showLocationDetails
3000 :
3010 REMark ##########################################
3020 REMark programa
3030 REMark ##########################################
3040 :
3050 REMark idioma y tablas por defecto
3060 :
3070 DIM location$(19, 31), entity_name$(12, 28), entity_desc$(12, 31), entity_room(12), action$(14, 9), t$(29, 166), map(19, 5)
3080 language = 0: RESTORE 1200: READ title$, dedication$
3090 :
3100 REMark comienzo y presentacion
3110 :
3120 RESTORE : readArrayN entity_room: readArrayN map
3130 intro
3140 :
3150 REMark seleccion de idioma
3160 IF NOT language
3170   PRINT "english (1) or spanish (2)?"
3180   language = selectOption("12")
3190   IF language = 2 THEN RESTORE 1220: ELSE language = 1: RESTORE 470
3200   readArrayS location$: readArrayS entity_name$: readArrayS entity_desc$: readArrayS action$: readArrayS t$: READ title$, dedication$
3210   GO TO 3130
3220 END IF 
3230 :
3240 REMark inicializacion de parametros
3250 :
3260 r = 1: p = r: b = .4: c = b: a = 0
3270 :
3280 REMark llegada a una nueva localizacion
3290 :
3300 IF a = 2 OR r < 2 OR r = 3 OR r = 12 THEN GO TO 3330
3310 REMark esta oscuro. no puedes avanzar
3320 r = p: PRINT t$(2): PRINT t$(3): PRINT
3330 :
3340 REMark descripcion de la localizacion
3350 :
3360 showLocationDetails
3370 p = r: IF r <> 18 THEN GO TO 3400
3380 REMark caida en el pozo del abismo
3390 PRINT: PRINT t$(4): GO TO 3570
3400 IF r <> 10 OR entity_room(12) = 99 THEN GO TO 3430
3410 REMark centinela ataca
3420 PRINT: PRINT t$(5): GO TO 3570
3430 IF entity_room(6) <> r OR entity_room(4) = -1 THEN GO TO 3530
3440 c = b: IF entity_room(5) = -1 THEN c = .2
3450 GO TO 3480
3460 REMark esta oscuro
3470 PRINT t$(2)
3480 REMark ataque de hombre lobo
3490 PRINT: PRINT t$(6)
3500 IF RND(1) < c THEN GO TO 3570
3510 REMark ataque fallido
3520 PRINT t$(7)
3530 IF r <> 8 THEN GO TO 3700
3540 REMark bola de fuego
3550 PRINT: PRINT t$(8): PRINT t$(9)
3560 IF entity_room(5) = -1 THEN GO TO 3700
3570 :
3580 REMark muerte
3590 :
3600 PRINT t$(10): PRINT
3610 :
3620 REMark fin del juego
3630 :
3640 PRINT t$(11)&" ("&t$(12,2)&"/"&t$(12,1)&")?"
3650 :
3660 REMark espera respuesta s/n
3670 :
3680 IF selectOption(t$(12)) = 2 THEN GO TO 3090
3690 terminate: STOP
3700 :
3710 REMark entrada de comandos
3720 :
3730 a$ = "": e$ = "": PRINT
3740 PRINT ">"!: INPUT a$: parseInput: IF a$ = "" THEN GO TO 3830
3750 :
3760 REMark busca el indice de la accion y de la entidad
3770 :
3780 v = index(a$, action$, 3): n = index(e$, entity_name$, 3)
3790 IF v = 6 THEN help: GO TO 3700: REMark ayuda
3800 PRINT: IF entity_room(6) <> 99 THEN entity_room(6) = INT(RND(1)*6)+2: REMark hombre-lobo
3810 IF v < 0 THEN GO TO 3830: ELSE IF v < 6 THEN GO TO 3870
3820 ON v-6 GO TO 4010, 4010, 4080, 4170, 4260, 4740, 3280, 4710
3830 :
3840 REMark error en accion o entidad
3850 :
3860 PRINT t$(13): GO TO 3700
3870 :
3880 REMark movimiento
3890 :
3900 IF n <> -1 THEN GO TO 3830
3910 IF map(r, v) = -1 THEN GO TO 3970
3920 r = map(r, v): IF r <> 0 OR entity_room(3) = -1 THEN GO TO 3280
3930 :
3940 REMark muerte por hombre lobo
3950 :
3960 c = 1: GO TO 3460
3970 :
3980 REMark accion no valida
3990 :
4000 PRINT t$(14): GO TO 3700
4010 :
4020 REMark take
4030 :
4040 IF n = -1 OR n = 6 OR n = 7 OR n = 12 THEN GO TO 3830
4050 IF entity_room(n) <> r THEN GO TO 3830
4060 entity_room(n) = -1: IF n = 4 THEN entity_room(6) = 99
4070 PRINT t$(15): GO TO 3700: REMark ok
4080 :
4090 REMark drop
4100 :
4110 IF entity_room(n) <> -1 THEN GO TO 3830
4120 IF n > 1 AND r > 1 THEN GO TO 4140
4130 c = 1: GO TO 3480
4140 entity_room(n) = r: IF n <> 10 OR r <> 16 THEN GO TO 4070
4150 PRINT t$(16): PRINT t$(17): PRINT
4160 entity_room(5) = 16: entity_room(10) = 99: GO TO 3280
4170 :
4180 REMark inventario
4190 :
4200 cmm = 0: FOR x = 0 TO 11
4210   IF entity_room(x) = -1 THEN 
4220     IF cmm THEN PRINT ", "!: ELSE cmm = 1
4230     PRINT entity_name$(x)!
4240   END IF 
4250 NEXT x: PRINT: GO TO 3700
4260 :
4270 REMark use
4280 :
4290 IF n = -1 THEN GO TO 3830
4300 IF entity_room(n) <> -1 THEN GO TO 3830
4310 ON n+1 GO TO 4320, 4370, 4420, 3970, 4600, 3830, 3970, 3970, 4490, 4540, 3970, 4650
4320 :
4330 REMark use lantern
4340 :
4350 IF (a = 0) THEN GO TO 3970
4360 a = 2: PRINT t$(18): PRINT: GO TO 4070: REMark linterna encendida
4370 :
4380 REMark use oil
4390 :
4400 IF entity_room(0) <> -1 OR a <> 0 THEN GO TO 3970
4410 a = 1: entity_room(1) = 99: PRINT t$(19): PRINT: GO TO 4070: REMark linterna cargada
4420 :
4430 REMark use rope
4440 :
4450 IF r = 7 THEN r = 9: GO TO 3330: REMark (castle room->stairs)
4460 IF r = 13 THEN r = 14: GO TO 3330: REMark (pantheon->catacombs)
4470 IF r = 14 THEN r = 19: GO TO 3330: REMark (catacombs->sewers)
4480 GO TO 3970
4490 :
4500 REMark use key
4510 :
4520 IF r <> 3 OR entity_room(8) <> -1 THEN GO TO 3970
4530 map(3, 2) = 4: entity_room(8) = 99: PRINT t$(20): PRINT: GO TO 3330: REMark puerta abierta
4540 :
4550 REMark use cross
4560 :
4570 IF r <> 0 THEN GO TO 3970
4580 PRINT t$(21): PRINT t$(22): PRINT
4590 entity_room(9) = 99: entity_room(8) = 0: GO TO 3330
4600 :
4610 REMark use sword
4620 :
4630 PRINT t$(23): IF r = 8 THEN PRINT t$(24): PRINT t$(25): PRINT: GO TO 3610: REMark felicitacion
4640 PRINT t$(26): PRINT: GO TO 3830: REMark golpe fallido
4650 :
4660 REMark use jewels
4670 :
4680 IF r <> 11 THEN GO TO 3970
4690 PRINT t$(27): PRINT t$(28): PRINT
4700 entity_room(11) = 99: entity_room(12) = 99: GO TO 3330
4710 :
4720 REMark quit
4730 PRINT t$(29): PRINT: terminate: STOP
4740 :
4750 REMark examine
4760 :
4770 IF n = -1 THEN GO TO 3830
4780 IF entity_room(n) = -1 THEN GO TO 4800
4790 IF entity_room(n) <> r THEN GO TO 3830
4800 PRINT entity_desc$(n);"."
4810 GO TO 3700
4820 :
© cacharreo
Responder

Volver a “Sinclair QL”