4. Programación del selector de fondos por variables

¡Hola Scratchers! Bienvenidos a la lección 4 del curso de «Selector de Fondos». En esta lección, terminaremos de diseñar nuestra casa y programaremos los cambios de fondo utilizando las variables. Este método nos será muy útil para crear juegos de «scape room» en los que hay muchas pantallas y suceden muchos cambios de fondo.

El vídeo del curso solo está visible para los suscriptores.
Puedes suscribirte aquí o entrar si ya eres miembro.

En la lección anterior, diseñamos el plano de la casa con sus respectivas habitaciones, también separamos algunas partes en fondos únicos, entre ellos la puerta de entrada y la sala principal, y colocamos flechas en la pantalla para pasar de una habitación a otra.

Separar las habitaciones restantes y crear notificaciones

Antes de empezar con la programación, separaremos los demás cubículos en pantallas independientes tal y como hicimos en la lección anterior.

Seguidamente, iremos al fondo donde tenemos la puerta principal de la casa y crearemos una notificación para abrir el mapa al presionar la tecla [M]. Para ello, escribiremos «M=MAPA» en la parte inferior del fondo. En el caso de querer entrar dentro de la casa (en nuestro caso es el «fondo 2»), crearemos la notificación «E=ENTRADA».

Para programar la tecla [M] y regresar al mapa cuando lo necesitemos, utilizaremos el bloque [al presionar la tecla «m»] y le añadiremos [cambiar fondo a «mapa»] donde tenemos el plano general de la casa. Al iniciar el juego, el primer fondo que nos aparecerá será el de la puerta principal, así que [al presionar la bandera verde] nos aparecerá el fondo de la puerta (fondo 1 o el nombre que le hayamos puesto) así que pondremos [camiar fondo a «fondo 1»]. Haremos lo mismo con la tecla [E].

Crear y utilizar la variable «fondo»

A continuación, crearemos otra variable que llamaremos «fondo» y después del bloque [cambiar fondo a «fondo 1»] añadiremos el bloque de las variables [dar a «fondo» el valor «1»]. Y añadiremos el mismo bloque debajo de [cambiar fondo a «mapa»] pero esta vez lo cambiaremos un poco: [dar a «fondo» el valor «mapa»]. De este modo, tendremos los fondos y las variables relacionadas entre si.

Seguidamente, vamos a crear un programa para que se ponga un fondo u otro en función de la variable que tengamos. Para hacerlo, utilizaremos el parámetro «fondo» y le diremos que:

[por siempre]

[si [«fondo»=1] entonces]

[cambiar fondo a «fondo 1»]

Y así con todos los demás fondos. En caso del fondo donde tenemos el mapa principal, decidimos que el mapa sería la variable «mapa» por lo que:

[si [«fondo»=mapa] entonces]

[cambiar fondo a «mapa»]

Mostrar y esconder las flechas de la pantalla

Ahora que ya tenemos cada fondo vinculado a un valor de la variable, lo que haremos será mostrar o esconderemos las flechas en función del escenario que tengamos.

Para hacerlo, iremos a la «flecha arriba» y haremos que [al presionar bandera verde] se esconda en un inicio. Luego, dentro de un [por siempre], utilizaremos el bloque [ si __entonces __si no] para indicar que, si el fondo coincide con el «fondo 2»: [si [fondo=2] entonces], la «flecha arriba» se muestre y, en caso contrario, se esconda.

Finalmente, como por ahora en el «fondo 2» la «flecha derecha» también tiene que ser visible porque está tocando a otra puerta, copiaremos el mismo programa a la «flecha derecha».

Hacer las flechas clicables para pasar de una habitación a otra

Para pasar de una habitación a otra, tenemos que hacer que las flechas sean clicables. Así que, si pasamos el puntero del ratón por encima de la flecha y le hacemos clic, el escenario cambiará a la habitación que toque.

Para ello, volveremos a la «flecha arriba» y pondremos dentro del [si [fondo=2] entonces] ] otro bloque de condición, y uniremos los sensores [¿tocando «puntero del ratón» ?] y [¿ratón presionado?] con el agregador «_y_». Finalmente, cuando se cumpla esta condición, pondremos el bloque de la variable [dar a «fondo» el valor «3»] porque, en nuestro caso, la habitación de arriba es el «fondo 3».

En caso que estemos en el «fondo 3» y queramos volver al «fondo 2», duplicaremos una de las flechas y cambiaremos el disfraz por la «flecha abajo». Una vez tengamos esto, podremos aprovechar la programación, por lo que solamente cambiaremos lo siguiente:

[si [fondo=3] entonces] ]

[dar a «fondo» el valor «2»]

De este modo, cuando cliquemos a la «flecha abajo», regresaremos al «fondo 2».

Finalmente, duplicaremos el programa y lo trasladaremos a la «flecha derecha» (el programa anterior lo borraremos porque este está más actualizado) y cambiaremos el valor del «fondo» a «4» porque nos va a mandar a la pantalla 4:

[dar a «fondo» el valor «4»]

En la próxima lección…

En la siguiente lección, ultimaremos nuestro selector de fondos con variables.

¡Nos vemos muy pronto!

Volver a: Curso de Selector de Fondos en Scratch > 1. Selector de fondos