Radio pong

Radio pong

El conocido juego de ping pong para el Calliope mini como la versión para dos jugadores. Necesitarás dos Calliope mini que se comunican entre sí por radio.

Fácil

30 Min

a partir de los 8 años

Historia

He probado algunos juegos que se pueden jugar con dos Calliope mini con la ayuda del módulo inalámbrico en pares de dos. Este proyecto no es muy fácil de configurar, pero si quieres puedes copiar el código sin entenderlo completamente y simplemente reproducirlo.

Instrucciones

Lleve el código a ambos Calliope mini y suministrar energía a ambos. El juego comienza tan pronto como un jugador presiona el botón B. A partir de este momento puede mover la barra a la izquierda con el botón A y a la derecha con el botón B.
El jugador que comenzó el juego con el botón B recibirá un balón (un punto). Si el balón desaparece en el extremo superior de la pantalla, aparecerá en la parte superior de la Calliope miniatura del adversario. La bola no debe tocar el extremo inferior de la pantalla y se debe impedir que lo haga con su propia barra.
Si la pelota toca el extremo inferior de la pantalla, el jugador en cuyo lado estaba la pelota pierde. El otro jugador gana. Para comenzar una nueva ronda, el botón de reinicio debe ser presionado en ambos Calliope mini.

SOBRE EL CÓDIGO

Para programar el Calliope mini Utilicé el MakeCodeeditor.
direction_x determina si la bola se mueve hacia la izquierda (-1) o hacia la derecha (1).
direction_y determina si la bola se mueve hacia arriba (-1) o hacia abajo (1).
x & y son las coordenadas de la posición actual de la bola.
bar_x es la coordenada x del borde izquierdo de la propia barra.
El estado del juego se establece en 0 al principio, por lo que la opción Calliope mini espera a que empiece el juego.

EL BUCLE CONTINUO

La pausa determina el ritmo, es decir, la velocidad a la que se mueve la bola. Pausa más pequeña = tiempo más alto = juego más rápido.

En las dos líneas siguientes, la pelota se mueve cambiando las coordenadas x e y de acuerdo con la dirección del movimiento.

Si la bola toca el borde izquierdo o derecho de la pantalla, la dirección horizontal se invierte. En este caso, la bola ya ha salido de la pantalla internamente, por lo que la posición horizontal debe ajustarse después del cambio de dirección antes de que se muestre la nueva posición de la bola en la pantalla.

Si la bola llega a la parte inferior de la pantalla, pueden ocurrir dos eventos. Si la barra está directamente debajo de la bola, la dirección vertical se invierte. Si la barra no está debajo de la pelota, el jugador pierde y se envía un mensaje a la otra Calliope miniatura.

Si la bola alcanza el extremo superior de la pantalla, la bola cambia de una posición a otra. Calliope mini a la otra. Para esto, algo tiene que ser convertido porque si la bola desaparece en la esquina superior izquierda de la mini1, por ejemplo, tiene que aparecer en la esquina superior derecha de la segunda miniatura. También hay que invertir la dirección_x (en este caso, la dirección_y es siempre 1 (hacia abajo)).
Para traer la bola, se envía un par nombre-valor-valor, donde el nombre es la coordenada x de la bola (sólo como cadena) y el valor es la dirección horizontal de la bola.

Después de que todos los movimientos de la bola han sido tratados, la nueva posición de la bola y la barra pueden ser mostradas en la pantalla.
Para ello, primero desactivamos cada píxel en los dos bucles verdes y luego activamos un píxel para la bola y dos píxeles para la barra de nuevo.
Si el status no es 1, la Calliope mini no calculará en grande, pero mostrará una sonrisa mostrando si usted ganó o perdió.

FUERA DEL BUCLE PERMANENTE

Si se pulsa el botón A, la posición de la barra cambia en 1 a la izquierda.

Si se pulsa el botón B, la posición de la barra cambia en 1 a la derecha.
Si el Calliope mini está esperando a que empiece el juego, lo inicia y envía un mensaje a la segunda Calliope miniatura.

Tres tipos diferentes de mensajes pueden llegar a Calliope mini.
Si el valor = 137 el otro jugador ha perdido y el Calliope mini que recibe este mensaje ha ganado.
Si el valor = 11 entonces el juego se inició desde la otra Calliope miniatura.
En cualquier otro caso, la nueva posición de la bola se comunica al cambiar entre la Calliope miniatura. Para traer la bola, se envía un par de nombre-valor, donde el nombre es la coordenada X de la bola (sólo como cadena) y el valor es la dirección horizontal de la bola.

Una demostración visual de este proyecto se puede ver en YouTube popup: yes.

Este texto, así como las imágenes, se publicaron bajo el nombre de CC BY-SA 3.0 DE license. It was originally publicado en German
por Marian Mehlingy traducido al inglés por el Calliope equipo.

Usted puede encontrar el archivo terminado a continuación.

El programa se puede abrir directamente con el editor MakeCode.

hex