Os traigo un juego sencillo que solemos proponer en nuestros talleres de nivel 2. Es perfecto para jóvenes que ya tienen cierta soltura programando con Scratch. Para que tengáis una referencia, esta semana lo han programado chavales de 11 y 12 años.
El juego consiste en una suerte de pilla-todo-lo-que-caiga que me recuerda mucho a los mini juegos de la consola Wii. Nuestra mascota Scratch viene esta vez equipada con un cesto y simplemente moviendo los cursores izquierda y derecha debemos recoger toda la comida que podamos en los escasos 10 segundos con los que contamos. Eventualmente caerán también otros objetos, nada nutritivos, que nos restarán puntos o tiempo o ambas cosas. Finalmente, habrá que esquivar a toda costa las bombas, puesto que la partida acabará en el mismo instante que recojamos una. Para aliviar un poco tanto stress, una buena noticia: recoger comida además de dar puntos, aumenta un poquito el tiempo disponible.
Con estos mimbres, aceptamos el desafío tratando como siempre de descomponer el problema en partes que podamos ir hilvanando poco a poco:
- Como condiciones de partida, el marcador de puntos deberá estar a 0 y el cronómetro a 10 segundos.
- Después de equipar a Scratch con una cesta (copiar y pegar de la biblioteca), nos parecía básico que pudiera moverse libremente por la pantalla a izquierda y derecha con los cursores. Hasta aquí ningún problema, pero afinando un poquito más, consideraremos como condición doble de parada que el tiempo se acabe o que hayamos recogido una bomba.
- Podríamos haber utilizado diferentes personajes para los objetos que caerán, pero esta vez quisimos probar con un solo objeto con muchos disfraces.
- El juego producirá clones del objeto que cae, siempre que nos quede tiempo en el crono y esquivemos hábilmente las bombas (mismo comportamiento que el visto con Scratch).
- Al aparecer cada clon, se situará aleatoriamente en la parte alta de la pantalla. Adoptará un disfraz al azar y se dejará caer mientras NO se cumplan una serie de condiciones: que haya tiempo en el crono, que caiga en el suelo, al fondo de la cesta o una bomba haya sido recogida, con lo que el juego termina. Para tal efecto utilizaremos una variable que cambiará a 1 si la bomba es recolectada.
- Cuando los clones alcanzan alguna de estas situaciones descritas, pasan a la parte de evaluación. Si el objeto no ha sido recogido y llega al suelo, simplemente desaparece. Si por contra hemos cazado una bomba, el juego termina, dejando de producirse clones y borrándose los que estuvieran en pantalla. En cualquier otro caso, se controla el número de disfraz y se aumentan/disminuyen tiempo/puntos según hayamos establecido para comida saludable, no saludable u otros objetos.
Podéis probar el resultado a continuación:
Ideas para complicarlo, mejorarlo y funcionalidades extra:
- La más obvia, añadir más objetos (disfraces) con los que disponer de más opciones de aumentar/disminuir tiempo/puntos.
- Crear pantallas de inicio y fin de juego
- Mostrar estadísticas finales con cada tipo de objeto recogido y el tiempo total del que hemos disfrutado.
- Pequeña animación al recoger una bomba, dejando por ejemplo a Scratch un poco chamuscado y renegrido.
- Añadir efectos de sonido dependiendo del objeto recogido para añadir un toque gracioso (cencerro, bomba, cangrejo).
Esperamos que os haya resultado entretenido y divertido. Saludos cordiales y hasta la próxima.