Videojuegos 5: Defensor del Espacio
¡Hola, comandantes estelares 🚀
Hemos llegado a la prueba final. En las semanas anteriores le dimos vida a una mascota, recorrimos laberintos y manipulamos la gravedad. Hoy vamos a unir absolutamente todo lo que hemos aprendido para crear el rey de los juegos retro: Defensor del Espacio (estilo Galaga o Space Invaders).
En este gran proyecto final vas a programar naves espaciales, láseres que nacen de tu jugador, oleadas de enemigos que aparecen al azar y sistemas de colisiones con explosiones espectaculares. ¡Prepárate para salvar la galaxia!
Entra a arcade.makecode.com, crea tu Nuevo Proyecto final llamado Defensor del Espacio y sigue el plan de batalla:
La Nave Nodriza y el Cosmos:
Categorías: Escena y Sprites.
Nuestra aventura comienza configurando la nave en el bloque verde al iniciar.
- Ve a Escena (sección Efectos) y arrastra el bloque
iniciar efecto de pantalla [confeti]. Cambia «confeti» por estrellas (star field). ¡Al instante tendrás un fondo espacial animado! - Ve a Sprites y saca
fijar miSprite a sprite [ ]de tipo Player. Dibuja tu nave de combate apuntando hacia arriba. - Ve a Controlador y saca mover
miSpritecon botones. - Regla vital: En el espacio no hay paredes, así que tu nave podría irse volando fuera de la pantalla. Ve a Sprites (Efectos) y arrastra
fijar miSprite [permanecer en pantalla] a [Activo]. ¡Problema resuelto!
¡Fuego a discreción!:
Categoría: Sprites (Proyectiles).
Una nave de combate necesita sus láseres. Vamos a programar el disparo.
- Ve a Controlador y saca el contenedor rojo
al presionar botón [A]. - Ve a Sprites (sección Proyectiles) y arrastra el bloque
fijar proyectil a proyectil [ ]desdemiSprite con vx [50] vy [50]. - Dibuja un rayo láser de color verde o rojo.
- El secreto de la dirección: Cambia vx a 0 (para que no se desvíe a los lados) y vy a -100. Como vimos con el dinosaurio, el eje Y negativo hace que las cosas vayan hacia arriba.
- Agrega un bloque de Música:
reproducir sonido [pew pew]cada vez que disparas.
La invasión alienígena:
Categorías: Juego, Matemáticas y Sprites.
Usaremos la «generación procedural» para crear enemigos que aparezcan en posiciones aleatorias.
- Ve a Juego y saca el reloj en
actualización del juego cada [500] ms. Cámbialo a 1000 ms (1 segundo). - Adentro, saca un bloque de Sprites:
fijar [enemigo] a sprite [ ] de tipo [Enemy]. Dibuja un ovni o un monstruo espacial. - Para que caigan hacia ti, saca
fijar velocidad de enemigo vx a 0 vy a [50]. - Posición sorpresa: Saca
fijar posición de enemigo x: [ ] y: [0]. En el espacio de la X, ve a la categoría morada Matemáticas y encaja el bloqueescoger al azar de [0] a [10]. Cambia los números para que diga de 10 a 150. ¡Ahora los ovnis aparecerán en cualquier parte del cielo!.
Impactos y explosiones:
Categoría: Sprites (Colisiones).
Tenemos láseres y enemigos, pero aún no interactúan. Necesitamos dos reglas de choque.
- Láser vs Ovni: Ve a Sprites (Colisiones) y saca
cuando sprite [Projectile] se superpone con otroSprite [Enemy]. Adentro pon:destruir sprite(El láser desaparece).destruir otroSprite con efecto [fuego] por 500 ms(El ovni explota).- Info:
cambiar puntuación por 1.
- Ovni vs Tú: Saca otro bloque de superposición:
cuando sprite [Player] se superpone con otroSprite [Enemy]. Adentro pon:destruir otroSprite con efecto [ceniza](El ovni se destruye al chocar contigo).- Info:
cambiar vida por -1. - Escena:
hacer vibrar la cámara por 500 ms(¡Para sentir el daño!).
El Reto Final (Graduación de Fase 1)
¡Tu juego ya es un clásico instantáneo de las salas de Arcade! Si has llegado hasta aquí, tienes el potencial de un verdadero desarrollador de software. Antes de pasar a la Fase 2 (GDevelop), demuestra tu dominio intentando agregar esto sin ayuda:
- Configuración Inicial: Usa la categoría Info dentro del bloque verde
al iniciarpara darle al jugador 3 vidas al comenzar el juego. MakeCode Arcade dibujará 3 corazoncitos automáticamente en la pantalla. - Arma Secundaria: Configura el botón B. Haz que al presionarlo se dispare un láser especial más grande, pero programa un «Tiempo de enfriamiento»: usa el bloque de Juego
pausar [2000] mspara que el arma secundaria tarde 2 segundos en recargar antes de poder volver a usarse. - Peligro Creciente (Nivel Experto Absoluto): ¿Puedes hacer que la velocidad a la que caen los enemigos (
vy) no sea siempre 50, sino que aumente un poco por cada punto que ganas en el juego? (Pista: Intenta usar el bloque de suma de matemáticas y la variable redonda «puntuación» que guarda tus puntos).
¡Felicidades, estudiantes! Con este proyecto, tienen un portafolio completo en 2D y están listos para dar el salto al pensamiento lógico avanzado.