Español Valencià
Instrucciones
🎴

Instrucciones

FASE 4 - COMPROBAR CARTAS ⏰ 15' approx

👉
Esta página contiene las instrucciones específicas de la Cuarta Fase para desarrollar el juego de Memory Card.

Cuando ya tenemos guardadas las cartas, podemos empezar a hacer las parejas. Las parejas se forman cuando dos cartas están giradas, es decir que CartasLevantadas es igual a 2, pues añadimos esta nueva condición. Esta vez el bloque de Control lo colocaremos fuera del anterior, ya que al haber ya dos cartas levantadas, no nos interesa comprobar los otros dos estados que son para guardar las cartas.

image

Como el cambiar disfraz lo tenemos también fuera y solo se pueden girar dos cartas, moveremos este bloque. Solo girará cuando CartasLevantadas sea igual 0 y cuando Cartaslevantadas sea igual a 1. Quedando de la siguiente manera:

image

Arreglado esto, ya nos podemos poner con la lógica para comprobar las cartas. Para empezar, crearemos un nuevo evento que se encargará de gestionar las cartas en caso de que estas sean o no sean iguales.

Nos vamos a los bloque de Eventos y añadimos el bloque “al recibir mensaje1” y crearemos un nuevo mensaje con el nombre “ComprobarCartas”.

image
image
image

Este evento, se le debe llamar cuando CartasLevantadas sea igual a 2. Añadimos el bloque “enviar mensaje1 y esperar”, donde cambiaremos el mensaje1 por ComprobarCartas. Esperamos, porque queremos que se termine el mensaje antes de hacer cualquier otra cosa, para que las cartas tengan tiempo para poder girar o desaparecer.

image

Ahora dentro de ComprobarCartas, vamos a comprobar si las dos cartas levantadas son iguales o no. Añadimos un bloque de Control si ____ entonces, si no ____” donde comprobaremos si los identificaodres de las cartas son iguales.

image

Para comprobar si son iguales añadimos un bloque de Operadores “_ = 50”, dentro de la condición, donde directamente arrastraremos las variables Carta1 y Carta2. Este operador, se encargará de comprobar la igualdad entre Carta1 y Carta2.

image

Si la condición se cumple entonces las cartas deberían de “desaparecer”, como no queremos que se elimine el objeto añadiremos un bloque de Apariencia “esconder”, esto hará que la carta no se elimine, sino que no se vea por pantalla.

image

Si no se cumple la condición, las cartas deberían “girarse”. Para esto, vamos a los bloques de Apariencia a “cambiar disfraz a CardBack”, que es la carta del revés.

image

En Scratch todos los objetos pueden recibir el mismo mensaje, por lo tanto si dos cartas son iguales y estas se esconden, todas las cartas se esconderán. Para evitar que esto ocurra, añadimos una condición a toda la llamada para que solo afecte a las cartas ya giradas.

image

Podemos comprobar si una carta está girada por el número de disfraz que lleva. Si vamos a la ventana de Disfraces podemos ver que la carta girada es el número 2. Sabiendo esto, en la ventana de Código, añadimos que si el  “número de disfraz = 2” entonces realizará la comprobación de cartas, sino no hará nada.

image
image

Por último, quedaría añadir algunas cosas. Cuando se comprueban las cartas y estas se giran o desaparecen, no deberían de haber cartas levantadas. Para que esto se cumpla añadimos dentro del bloque “si CartasLevantadas = 2 entonces” un bloque de Variables, donde le daremos a CartasLevantadas el valor 0. Este nuevo bloque es “dar a CartasLevantadas el valor 0 ”.

image

Otra cosa a añadir sería un tiempo de espera antes de que se llame a ComprobarCartas. Este tiempo es necesario para cuando se seleccionen dos cartas, se vea la imagen de la Carta2 antes de que esta desaparezca.

Para hacer esto, añadimos un bloque de Control “esperar 1 segundo”. Cambiaremos el valor 1 por 0.2, para que no esté tanto tiempo en la pantalla.

image

La última cosa a añadir, sería el bloque de Apariencia “mostrar”, este bloque se encargará de que cuando comience una nueva partida, es decir cuando se pulse la Bandera verde, las cartas que se habían escondido vuelvan a aparecer por pantalla.

image