PROGRAMACION EN BASIC

Con este curso de programación en Basic comenzamos un ambicioso proyecto dividido en varios capítulos para programar aventuras en un lenguaje universal para todos los ordenadores. Aunque el método de programación es el que 3P soft ha elaborado para sus aventuras para PC, quitando algunas modificaciones, podrá ser utilizado en cualquier ordenador. El metodo de programación ha sido ideado por Alberto Ruiz y el curso está escrito por Carlos Martínez, ambos de 3PSOFT.

Puesta en escena.

Naturalmente lo primero que hay que tener es una idea para hacer la aventura; la que he preparado es muy simple, pero permitirá seguir paso a paso el desarrollo de la aventura. Nuestra aventura se llamará:

EL DUENDE DE LINARES

Argumento: Currito, el duende de Linares, está atrapado en una casa en la que había entrado a comer mermelada. Los dueños vendrán en poco tiempo, debe escapar como sea, pero la puerta está cerrada y la ventana demasiado alta...

Solución: Para no enrrollarnos demasiado el argumento será muy fácil, tenemos que ir a la cocina, abrir la nevera, coger un tomate, llevárselo al gato, hacernos amigo suyo (así probaremos como hacer un PSI que nos siga), ir al dormitorio, subirnos a lomos del gato, cortar la cuerda de la ventana y salir fuera.

El mapa: A continuación está el mapa de la aventura; es necesario asignar un número de linea a cada pantalla a partir de 6000 (por convenio). Asi la primera pantalla sería 6000, la segunda 6100 etc.

En una aventura tenemos dos tipos de condiciones: las de alta prioridad (que pueden suceder se esté donde se esté) y las de baja prioridad (que sólo ocurren en una localidad específica. P.ej. una condición de alta prioridad sería COGE CUCHILLO, y una de baja ABRE NEVERA.

También tenemos que darle dos nombres claves a cada objeto. Como en esta aventura sólo tenemos 1 (EL CUCHILLO) le pondremos A y Z.

Una vez terminados los preparativos, empezamos a programar. Lo primero que se pone es la presentación:

10 REM *** EL DUENDE DE LINARES ***
20 CLS:PRINT "EL DUENDE DE LINARES":PRINT "POR 3PSOFT" 30 PRINT:PRINT "PULSA UNA TECLA..."
40 IF INKEY$="" THEN GOTO 40
50 CLS

A continuación pasamos a enviar el programa a la primera pantalla:

60 GOTO 6000

En la linea 6000 ponemos los datos de la pantalla:

6000 CLS:PANTALLA=1
6010 Z=1:PRINT "ESTAS EN EL PASILLO DE LA CASA; TE HAS QUEDADO ENCERRADO. DESDE AQUI VES DOS PUERTAS, UNA AL ESTE Y OTRA AL OESTE. EN LA PUERTA ESTE VES UN CARTEL QUE PONE WC, Y LA OESTE DA AL CUARTO DE JUEGOS. AL NORTE CONTINUA EL ESTRECHO PASILLO.":GOSUB 5000

El indicador de pantalla=1 nos servirá en el futuro para poder salvar situaciones. El valor dado a Z sirve para saber los objetos visibles en este lugar. Si Z fuese igual a 100 entonces en la subrutina de objetos nos indicaria: AQUI HAY UN CUCHILLO:

5000 REM *** OBJETOS PRESENTES ***
5010 IF Z=100 THEN PRINT "AQUI HAY UN CUCHILLO" 5020 IF G=1 THEN PRINT "AQUI ESTA EL GATO MISI" 5030 RETURN

La letra G es la que utilizo para designar al gato. Cuando G=1 el gato está presente. Pero volvamos a la primera pantalla:

6020 GOSUB 4000

Por fín llegamos a las condiciones de alta prioridad. En la subrutina a la que nos envían entramos en el editor y en las condiciones de alta prioridad que veremos en el próximo capítulo.

Carlos Martínez