Skip to main content

MONTAJE 9 HELICOPTERO

¿Qué es un acelerómetro?

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

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

A SOLUCIÓN CON ECHIDNASCRATCH

SoluciónA1 Sprite PARROT moviéndose según acelerómetro

A1.1 Añadir un disfraz al PARROT de explosión. 

    Quitamos el sprite del gato y añadimos el sprite SUN Entramos en edición del sprite Lo tuneamos un poco para que parezca una explosión (simplemente pintar de rojo el centro) Lo exportamos Guardamos con explosion.svg

    2024-12-06 08_45_02-EchidnaML.png

    Ahora añadimos el Sprite PARROT y al sprite PARROT le ponemos el disfraz de explosión:

      Añadimos el sprite PARROT Borramos el anterior SUN ya no lo necesitamos Entramos en Edición del sprite Menú del disfraz (costume) Upload costume elegimos el fichero creado anteriormente "explosion.svg" Abrimos Ya tenemos un disfraz añadido al Parrot. Clica en el primer disfraz pues cuando vuelvas a la ventana de código verás el de explosión

      2024-12-06 08_55_12-EchidnaML.png

      Otra manera más fácil sería simplemente añadir un disfraz de los sprite por defecto y en paz

      2024-12-06 09_02_39-EchidnaML.png

      A1.2 Movimiento del sprite PARROT 

      Vamos a hacer que el pájaro se mueva según el acelerómetro: (Ver al final DETALLES MAPEO)

      B SOLUCIÓN CON mBlock

      B1 Sprite helicóptero moviéndose según acelerómetro

      B11 Añadir un disfraz al helicóptero de explosión. 

      Vamos a añadir un objetos: helicóptero de la biblioteca

      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

      echidna-helicoptero1.jpg

      2.- Exporta el fichero imagen svg

      echidna-helicoptero5.jpg

      3.- Añade al helicóptero el disfraz 

      echidna-helicoptero6.jpg

      4.- Eligiendo el fichero svg exportado en el paso 3

      echidna-helicoptero7.jpg

      B12 Movimiento helicóptero

      Vamos a hacer que helicóptero que se mueva según el acelerómetro: (Ver al final DETALLES MAPEO)

      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:

      image-1648738671457.png

      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:

      image-1648738725542.png

      Testeando un poco hemos subido m a 1.9 pues no llegaba arriba del todo

      echidna-helicoptero12.jpg

      En el arduino le asignamos las coordinadas a las variables globales A2 y A3

      echidna-helicoptero11.jpg

      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...

      echidna-helicoptero2.jpg

      Vamos a mblock e IMPORTAMOS el fichero que hemos exportado
      echidna-helicoptero3.jpg

      Nos importa con sus disfraces Y SU CÓDIGO

      Nos queda pues esta colección de objetos

      echidna-helicoptero9.jpg

      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) :

      echidna-helicoptero13.jpg

      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

      via GIPHY

      Detalles MAPEO

      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:

      image-1648738671457.png

      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:

      image-1648738725542.png

      Testeando un poco hemos subido m a 1.9 pues no llegaba arriba del todo