Primavera Creativa – Scratch and MakeyMakey Game

Como continuación en las actividades de nuestra Primavera Creativa vamos a desarrollar un programa con Scratch que podremos conectar a nuestra placa MakeyMakey y con el que podremos realizar un juego divertido de una forma rápida y sencilla.

En caso de no disponer de un Makey Makey, podemos realizar la programación de nuestro juego de la misma manera controlando las acciones de teclado.

Scratch Game

Introducción:
Este juego muestra tres objetos que cambian de disfraz, como una máquina tragaperras hasta hacer coincidir los 3 iguales. Debes intentar detenerlos cuando coincidan en la misma imagen. Antes de desarrollar el juego vamos a recopilar los recursos a utilizar en él que serán 3 imágenes que serán los disfraces que vamos a utilizar para nuestro juego.

También podemos sacar las imágenes de la biblioteca de Scratch, pero queremos personalizar nuestro juego lo suficiente y no poner límites a nuestra actividad.

Buscar Imágenes por Internet

Las imágenes de Internet se pueden descargar e importar en nuestro juego, pero vamos a ver un caso concreto en el que no todas las imágenes son válidas para nuestro proposito.

Tenemos que buscar imágenes con un fondo transparente para que el fondo blanco de la imagen no se sobreponga sobre el fondo de nuesstro juego. Esto ocurre habitualmente cuando las imágenes descargadas son .jpg, ya que este formato no soporta transparencias, en cambio el formato .png sí que nos permite ambos modos, con o sin transparencia en la imagen tal y como aparece en la figura de abajo.

Para buscar estos tipos de imagen con transparencias, hay que definir en el buscador de imágenes el siguiente filtro con modo transparente.

Una vez que tengamos 3 imágenes con fondo transparente los podremos importar como objetos en nuestro juego de Scratch.

Empezamos a programar.

 

 

Crea un objeto que cambia de disfraces

Vamos a importar las distintas imágenes del juego

  1. Comienza un proyecto de Scratch nuevo. Borra el objeto gato pinchando en él con el botón derecho y pinchando en ‘borrar‘.
  2. Importa un nuevo objeto.
  3. Elige una de las imágenes que hemos descargado.
  4. Pincha en la pestaña ‘Disfraces‘ e importa dos imágenes más, para tener un total de tres.

Ahora queremos que el objeto cambie de disfraz creando el siguiente programa.

 

Un concepto muy importante para que el funcionamiento del juego se desarrolle correctamente es crear una variable con un valor, en este caso 0; y en el momento que cliquemos flecha izquierda, cambiarlo a 1 para que el programa en bucle deje de cambiar de disfraz.

Para esto es muy importante tener en cuenta el concepto de variable global y variable local. En este sentido, estamos creando solo la programación de un objeto y luego lo duplicaremos para crear ligeras modificaciones. Es por ello, que cada objeto tendrá su variable “Stopped” que definirá la variable de cambio.


  1. Crea una nueva variable pinchando en ‘Variables‘ y luego en ‘Crear una variable‘. Dale el nombre ‘stopped‘, márcalo ‘sólo para este objeto‘ y despeja su casilla para que no aparezca en el escenario.
  2. Fija el valor de la variable ‘stopped‘ a 0 cuando alguien pincha en la imagen, usando un bloque ‘al presionar Flecha Izquierda’.
  3. Tenemos que asegurarnos de que la imagen deje de cambiar cuando la variable ‘stopped‘ tenga el valor 1. Usando la paleta de bloques de control, podemos reemplazar el bloque ‘por siempre‘ con un ‘por siempre si stopped=0‘.
  4. Finalmente, añade un ‘fijar stopped a 0‘ debajo de ‘al presionar BANDERA’.

 

Duplica otros objetos

  1. Duplica el objeto ‘Objeto1’ pinchando en él con el botón derecho y cambia la tecla de control a Flecha Arriba.
  2. Duplícalo de nuevo para acabar con tres objetos en el escenario y cambia la tecla de control a Flecha Derecha.
  3. Muévelos para que queden alineados. Disminuye su tamaño si hace falta.

 

Cuando el juego empieza por primera vez todos los objetos muestran el mismo disfraz y cambian a la vez. ¿Sabrías hacer que cada objeto elija un disfraz al azar cuando pinchas en la bandera verde?

Detecta si todos los objetos se han detenido en la misma imagen

El objetivo del juego es detener los objetos en la misma imagen. Convendría que el escenario detectase cuando todos los objetos se han detenido en el mismo disfraz para decirte si has ganado.

El escenario puede responder a este mensaje y verificar si la variable ‘stopped‘ de cada objeto tiene el valor 1. Si todas las variables tienen el valor 1, sabemos que la partida ha concluido y podemos verificar si hemos ganado.

Una vez verificado el resultado, puedes anunciarlo enviando mensajes ‘ganador‘ o ‘perdedor‘.

Después de terminar todo el programa, podemos añadir o modificar otras acciones como ajustar el tiempo en el bloque de espera haciendo que el juego sea demasiado más fácil o más difícil.

Makey Makey

Ahora podemos unir un Makey Makey a nuestro juego de Scratch. Para ello, solo hace falta conectar correctamente los cables para que interactuen con las flechas derecha, arriba y izquierda que hemos integrado en el juego.


Para utilizar “Makey Makey”, debemos seguir los siguientes pasos:

1.- Conectar la placa al pc mediante el cable USB.

2.- Conectar la toma de tierra, bien con los cables cocodrilo o jumper.

3.- Conectar a uno de los códigos de la placa, por ejemplo, al que representa la barra espacio, otro de los cables.

4.- Conectar el otro extremo a un conductor de electricidad, por ejemplo nosotros mismos.

5.- Conectar el otro extremo, de este segundo cable, a un conductor de la electricidad, por ejemplo una fruta o de nuevo nosotros mismos, de manera que el circuito de electricidad quede cerrado.

Una vez hemos cerrado el circuito, el ordenador recibirá esa señal, gracias a la conexión USB, de manera que lo interpretará como si de una pulsación de esa tecla se tratase. En la siguiente figura podemos ver claramente su funcionamiento.

Como se puede ver, se trata de un dispositivo sencillo de utilizar, pero que permite dar rienda suelta a nuestra imaginación, conectando el mundo virtual con el mundo real.

Ahora os toca jugar. 😉

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

diecinueve − 17 =

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.