MONTAJE 9 HELICOPTERO
El acelerómetro tiene el mismo efecto que el Joystick, nos da valores en el eje X o eje Y, en el caso del Joystick lo daba la inclinación de la palanca, en este caso lo da la inclinación del mismo Echidna.
Está conectado a los pines analógicos:
- A2 nos da la inclinación en el eje X
- A3 nos da la inclinación en el eje Y
Los valores van desde 250 hasta 500
MONTAJE 9 HELICOPTERO
Reto
Vamos a realizar un sencillo videojuego: Mover un helicóptero, el movimiento de un sprite con el acelerómetro y esquivando edificios que se mueven de derecha a izquierda dando la sensación de que el helicóptero vuela.
El reto te lo complicamos con dos premisas:
- Reutiliza el "sprite" edificio copiándotelo desde Scratch
- El helicóptero explota si choca con un edificio
Solución sprite helicóptero moviéndose según acelerómetro
Vamos a añadir un objetos: helicoptero de la biblioteca
Le vamos a añadir un disfraz explosión
1.- Añade un objeto sun, y borra el dibujo interior, y así parece una explosión
2.- Exporta el fichero imagen svg
3.- Añade al helicóptero el disfraz
4.- Eligiendo el fichero svg exportado en el paso 3
Vamos a hacer que helicoptero que se mueva según el acelerómetro:
Posición X: La pantalla de mBlock tiene desde -240 hasta 240 y hemos visto que los márgenes de A2 del acelerómetro va desde 250 hasta 500 luego hacemos el cambio de escala con la HOJA DE CÁLCULO que comentamos anteriormente:
luego ya tenemos la fórmula para la posición X
E igualmente para la posición Y pero en este caso los márgenes de la pantalla van desde -180 a 180 luego:
Testeando un poco hemos subido m a 1.9 pues no llegaba arriba del todo
En el arduino le asignamos las coordinadas a las variables globales A2 y A3
Solución edificio, cómo se reutiliza un sprite
Reutilizamos un poco: Nos copiamos un Sprite, entramos en este proyecto FLY de scratch https://scratch.mit.edu/projects/113582791/ entramos en su código y exportamos los edificios, nubes, etc...
Vamos a mblock e IMPORTAMOS el fichero que hemos exportado
Nos importa con sus disfraces Y SU CÓDIGO
Nos queda pues esta colección de objetos
Solución a la muerte del helicóptero
Vamos a poner que si toca un edificio, “explota” (o sea, cambia el disfraz a explosión), además envía el mensaje “komunikat1” que vemos que el script del edificio lo necesita para esconderse una vez terminado el juego (debe de ser ruso el mensaje es del autor del objeto edificio) :
El programa lo tienes aquí https://planet.mblock.cc/project/3230430
El resultado se puede ver en este vídeo:
Mejoras
Ya sé que colocando el helicóptero siempre arriba, siempre ganas!!
RETO: HAZ QUE SOLO SI TOCA BUILTING1 MUERE, PERO SI TOCA A BULDING2 QUE GANE UN PUNTO de esta manera ya no se gana poniendo el helicóptero arriba del todo
3.4.2 MONTAJE 10 MATA-ALIENS hackeando código
Esta vez no vamos a ser originales, vamos a ser un poco vagos y nos vamos a copiar el programa de otra persona. La web de Scratch tiene un repositorio de millones de proyectos, podemos seleccionar uno, y adaptarlo a nuestra simpática Echidna.
RETO Vamos a ver un ejemplo con este proyecto https://scratch.mit.edu/projects/29744/. El reto que te lanzamos es que funcione la nave espacial con nuestro acelerómetro de la Echidna.
Solución CON MBLOCK
En esta presentación se muestra cómo se importa un proyecto a mBlock: (las capturas están con mBlock3, para mBlock5 simplemente no es abrir, sino Importar desde el ordenador
Curiosamente con mBlock3 sale algún fallo pero con mBloc5 no hay, lo importa perfectamente
Hackear el código para que funcione con el acelerómetro
Una vez importando nos fijamos en el código que hay que modificar, está claro que lo que hay que tocar es el Sprite “Ship” que es el que queremos mover con el acelerómetro y modificar el “posicionX que se realiza con el ratón y cambiarlo por el acelerómetro:
Perooo como siempre: la posición del ratón es la misma que las coordenadas de la pantalla de mBloc y la x va desde -240 hasta 240 y nuestro acelerómetro de A2 va desde 250 hasta 500 luego hacemos el cambio de escala con la HOJA DE CÁLCULO anteriormente:
Y cambiamos el código:En el arduino asignamos A2 (y también D2 luego lo comentamos)
Un poco más, disparar con D2
También vamos a cambiar el disparador “espacio” :
por pin digital 2 para disparar con el botón D2 del Echidna:
El programa lo tienes aquí https://planet.mblock.cc/project/projectshare/3232624
El resultado en este vídeo:
SOLUCIÓN CON SNAP4ARDUINO
Importar un proyecto de Scratch a Snap4Arduino
Para importar un proyecto desde Scratch es un poco más complicado, ver esta presentación:
Cambios en el código en Snap4Arduino
Los cambios en el código son los mismos que los anteriores.
Recuerda que en esta presentación se enseña cómo configurar Snap4Arduino para que se comunique con nuestro Arduino y la Echidna.
El programa lo puedes abrir en Snap4Arduino en esta URL
El Sprite que tienes que conectar con Arduino es la nave esa con cuernos.
El resultado lo puedes ver en este vídeo