Objetivos
Material requerido
Arduino Uno o compatible y con el firmware para S4A cargado. |
|
Una Protoboard mas cables. | |
Un Joystick. | |
Una resistencia de 330 Ohmios. | |
Una Protoboard. |
CREANDO LOS OBJETOS, LOS DISFRACES Y LOS SONIDOS
Vamos a utilizar el montaje de la sesión 19 para hacer un videojuego en el que usaremos el joystick para apuntar y disparar los demonios que aparezcan en el escenario. Contaremos cuántos demonios vamos cazando y los mostraremos al terminar la partida. Y es que aunque os parezca mentira, hace no mucho tiempo, había muchos videojuegos que no eran mucho más que esto.
Vamos a empezar creando los objetos que vamos a necesitar e incorporando sus disfraces y sonidos.
Lo primero que vamos a hacer es dibujar un disfraz para el objeto principal que contendrá la programación para el movimiento del joystick. Como será nuestra mira, le haremos un disfraz acorde.
También importaremos un sonido para que suene cada vez que disparemos. Yo he importado uno llamado “Laser1” de los que vienen por defecto.
Crearemos un nuevo objeto Demonio, y le haremos dos disfraces. Uno para el demonio (yo lo he importado de los que vienen por defecto en S4A) y dibujaremos o importaremos un disfraz que simula una explosión para cuando les disparemos.
Le pondremos también un sonido que usaremos cada vez que aparezca uno.
Ahora crearemos dos fondos para el escenario. Uno será el escenario que usaremos normalmente. Yo he elegido un desierto.
El otro fondo será el mismo pero escribiremos en él “Demonios Cazados”, para utilizarlo para poner el resultado con el número de demonios que hayamos cazado cuando termine el juego.
PROGRAMACIÓN DE LA MIRA
Vamos a empezar programando el objeto “Mira”. Incorporamos la parte de la programación del movimiento del joystick, a la que quitaremos la parte final en la que sellábamos el disfraz del objeto. Además vamos a utilizar el bloque de “Apariencia” “enviar al frente” en las condiciones iniciales.
Este bloque lo que hace es que este objeto siempre se vea por encima de los demás si están en la misma posición. Lo utilizaremos para que la mira siempre se vea cuando estemos apuntando a los demonios a los que daremos caza.
Creamos una función nueva en la que haremos que si la mira está tocando un demonio y pulsamos el joystick, envíe una señal a los demás objetos. Utilizaremos un bloque de tipo “Sensores” “¿tocando …?” , en el que seleccionaremos el objeto “Demonio”.
También necesitamos una función para contar el tiempo que va pasando y poder poner un límite de tiempo al juego. Ya conocemos la estructura y los bloques de otras sesiones.
Para terminar incluiremos dos nuevos bloques de “Apariencia”:
PROGRAMACIÓN DEL OBJETO DEMONIO Y DEL ESCENARIO
En este objeto lo que queremos programar es que vayan apareciendo demonios en una posición y tamaño aleatorios a medida que les vayamos disparando. Empezaremos haciendo que al comenzar a ejecutarse el programa aparezca un demonio en el escenario.
Hemos usado un nuevo bloque de “Apariencia” “fijar tamaño a …”, que sirve para que el disfraz del objeto que se muestre en el escenario sea un porcentaje mayor o menor que el disfraz original. Le damos un valor aleatorio entre el 30% y el 100%, para que vaya variando.
También le damos una posición aleatoria en el escenario (que no sea demasiado cerca de los bordes), le ponemos el disfraz “Demonio” y le incorporamos el sonido.
En otra función hacemos que si llega un la señal “disparo”, que significa que hemos dado a un demonio, cambie al disfraz de “Explosión” durante medio segundo y aparezca un nuevo demonio en otra posición y con otro tamaño.
En la última función hacemos que si llega la señal “Final” de que se ha acabado el tiempo, el demonio se posicione en el centro del escenario y muestre el número de demonios que hemos cazado. Trataremos de que no se monte con el texto que hemos puesto en el fondo “Resultado” del escenario.
Para acabar vamos a programar el escenario por primera vez. Simplemente haremos que al ejecutar el programa tenga el fondo “Desierto”, y al terminarse el tiempo el fondo “Resultado”.
Podéis descargaros el programa completo desde aquí: Cazademonios.
Os recomiendo trastear un poco con este programa y tratar de hacerle algunos cambios, como por ejemplo, hacer que se muevan los demonios, que aparezcan varios a la vez o que si no les disparamos en un tiempo concreto sean ellos los que acaben con nosotros. Así iremos mejorando nuestra capacidad de crear nuevos algoritmos y plasmarlos en nuestros programas.
RESUMEN DE LA SESIÓN
En esta sesión hemos aprendido varias cosas importantes: