Juego de disparos
Introducción
Los juegos de disparos figuran entre los más extendidos. Simulan combates, que pueden ser más o menos violentos y realistas. Nada que ver con el juego que le proponemos aquí, inspirado en los primeros juegos de combate espacial.
Objetivo: este juego consiste en disparar a naves enemigas. Si la nave del jugador es alcanzada, pierde vidas, y si alcanza naves enemigas, gana puntos. El juego termina si el jugador no tiene más vidas o si el tiempo límite ha expirado.
Competencias desarrolladas:
-
Insertar una cuenta regresiva antes de que empiece un juego.
-
Crear un juego de tiempo limitado utilizando un cronómetro.
-
Desplazarse horizontalmente por los «objetivos» del escenario.
-
Gestionar vidas y gestionar puntuaciones.
-
Crear una atmósfera sonora en un juego.
En el capítulo La extensión micro:bit se desarrolla otro juego de disparos. Aborda otras técnicas que pueden ser complementarias.
Diseño gráfico
Este proyecto puede descargarse del sitio web de Ediciones ENI con el nombre Space war.sb3.
1. Los fondos
Este proyecto requiere la creación de tres fondos: Jugar - Ganaste - Game Over. Los tres fondos utilizan la imagen Stars de la biblioteca. Se ha añadido información a los fondos Ganaste y Game Over.
En la ventana de fondos, seleccione Elige un fondo (1). Y elija Stars (2) de la biblioteca que se ha abierto.
Haga clic en la pestaña Fondos (3) y haga clic con el botón derecho en la miniatura Stars. Seleccione duplicar (4). Se ha creado una segunda miniatura.
Haga lo mismo para crear un tercer fondo idéntico.
Nombre el primer fondo Juego. Se utiliza como fondo durante la fase de juego y también durante la cuenta regresiva inicial.
Nombre el segundo fondo Ganaste. Se muestra cuando el tiempo de juego, medido con un cronómetro, ha terminado.
Nombre el tercer fondo Game Over. Si al jugador no le quedan vidas, ha perdido la partida y se muestra este fondo.
En los fondos Ganaste y Game Over, se introduce información diferente utilizando la herramienta Texto.
Por defecto, el fondo Stars está en formato Bitmap. Haga clic en Convertir a vector para añadir texto a la imagen y moverla fácilmente.
Con la herramienta Texto y la fuente Pixel, escriba WINNER en el fondo Ganaste y GAME OVER en el fondo Game Over.
2. Los objetos
Este juego...
El programa de los fondos
Este juego requiere la creación y el uso de dos variables.
-
La variable Puntuacion jugador: para almacenar el número de naves alcanzadas por el jugador.
-
La variable Vidas del jugador: para gestionar el número de vidas de las que dispone el jugador.
-
Cuando es alcanzado por un disparo enemigo, el jugador pierde una vida.
El programa de los fondos consta de cuatro pilas de bloques. Se utilizan para:
-
Inicializar las variables utilizadas en el juego.
-
Reproducir un bucle de sonido continuo.
-
Determinar si el jugador ha perdido.
-
Manejar el cronómetro y determinar si se ha acabado el tiempo.
al hacer clic en la bandera verde
cambiar fondo a Juego // este fondo se utiliza para la introducción (durante la cuenta regresiva) y durante la fase de juego.
dar a Puntuación jugador el valor 0 // se reinicia el contador de puntos.
dar a Vidas del jugador el valor 3 // el jugador tiene tres vidas. Esto significa que no debe ser alcanzado más de tres veces por fuego enemigo.
esconder variable Puntuacion jugador // solo es visible al final de la partida si el jugador no ha perdido.
al hacer clic en la bandera verde // esta doble instrucción permite ejecutar dos programas simultáneamente.
por siempre // abrir un bucle de repetición para reproducir continuamente un bucle de sonido.
tocar sonido Video Game 2 hasta que termine
Cerrar el bucle...
Los programas de los objetos
1. Programa de Cuenta regresiva
Cuando se inicia el juego, aparece en la pantalla una cuenta regresiva en forma de objeto. El juego no se inicia hasta que su programa ha terminado de ejecutarse.
al hacer clic en la bandera verde
cambiar disfraz a disfraz 1 // este disfraz corresponde al número 3.
mostrar
repetir 2 // abrir un bucle de repetición. Otros dos disfraces se sucederán en el escenario.
esperar 1 segundos
siguiente disfraz // este programa funciona si el orden de los disfraces es correcto.
Cerrar el bucle de repetición.
esperar 1 segundos
esconder
enviar Jugar // este mensaje se utiliza para lanzar la ejecución de programas para los distintos objetos del juego.
enviar cronómetro // este mensaje pone en marcha el cronómetro. El tiempo de juego es limitado.

2. Programa de Jugador
El programa del objeto Jugador se compone de cuatro pilas de bloques.
Primera pila de bloques
Esta es la pila utilizada para establecer las características del objeto.
al hacer clic en la bandera verde
apuntar en dirección 180 // como la nave se ha dibujado verticalmente, hay que colocarla horizontalmente, de cara a las naves enemigas.
ir a x: -180 y: 0
fijar tamaño al 80 % // este valor se da como guía, todo depende de sus objetos.
cambiar disfraz a disfraz 1 // este es el disfraz que muestra la nave cuando no dispara.
esconder // Como el juego aún no ha comenzado, ningún elemento del juego es visible.
Segunda pila de bloques
Esta pila de bloques contiene los distintos algoritmos utilizados para mover la nave del jugador hacia arriba o hacia abajo, para disparar y para determinar si el jugador ha sido alcanzado por fuego enemigo. Su ejecución está sujeta a cuatro condiciones.
al recibir Jugar // este mensaje inicia el juego y sincroniza la ejecución de todos los scripts.
mostrar // la nave del jugador es visible en el escenario.
por siempre // abre un bucle de repetición que contiene cuatro condiciones.
Esta nave solo se desplaza hacia arriba y hacia abajo. Únicamente se modifica la coordenada y (valor positivo para ascenso, negativo para descenso).
Primera condición: dirigir la nave hacia arriba....
Conclusión
Este juego tiene una estructura minimalista, pero la banda sonora lo hace aún más atractivo. Al igual que en las películas, las pistas musicales influyen en el estado psicológico del jugador. Crean un ambiente.
Este juego puede mejorarse de varias maneras:
-
Se pueden crear niveles adicionales con más enemigos a los que eliminar.
-
Se pueden aplicar velocidades variables al movimiento de las naves enemigas.
-
Las naves enemigas pueden cambiar de aspecto a medida que reciben impactos. En este caso, una variable gestiona el número de impactos y a cada valor se le asocia un disfraz diferente.
-
Se puede añadir un jefe final, un enemigo más poderoso, al final de un nivel o de una partida. Puede adoptar la forma de una nave más grande, como la Estrella de la Muerte, si quiere mantener una temática inspirada en Star Wars.
-
El jugador puede disponer de varios tipos de proyectiles en cantidad limitada.
Las posibilidades son infinitas.