1.8 - Invitado: Un primer ejemplo-Xnergic TCM
https://www.youtube.com/watch?v=LheLDLyBFWE&list=PL5tA44GpyFntFHtHd6Zxb2xQZpxwOfeu3&index=9
un tutorial completo y paso a paso para crear un videojuego de Arkanoid / Breakout en Scratch, basado en la explicación de Iván, un niño de 8 años que desarrolló su propio proyecto. Aprenderás a programar la bola, la pala, los bloques, los niveles, las vidas y los mensajes entre objetos.
🧱 Tutorial: Crea tu propio Arkanoid en Scratch
🎯 Objetivo del tutorial
Construir un juego de arcade clásico donde controlas una pala para rebotar una bola y romper bloques, con 5 niveles, puntuación, vidas y cambio de escenarios.
🖌️ Paso 1: Preparar los personajes (sprites) y disfraces
Necesitarás dibujar o importar los siguientes elementos:
Una bola (puedes dibujarla redonda).
Una pala (rectángulo alargado horizontal).
Bloques (cuadrados o rectángulos) – necesitarás al menos 20 bloques distribuidos en varios colores (cada color representará una fila o un nivel).
Fondos de escenario para cada nivel (puedes dibujar o importar imágenes).
💡 Consejo de Iván: Dibuja las figuras tú mismo, así las personalizas a tu gusto.
🟠 Paso 2: Programar la bola
La bola será el elemento principal. Su código debe:
Posicionarse al inicio:
Al presionar la bandera, enviar la bola a la posición
x: 0, y: 0(centro de la pantalla).
Moverse continuamente:
Usar un bucle
por siemprepara mover la bola en una dirección.Puedes usar
apuntar en direcciónymover 5 pasos, o usar variables de velocidad (vx,vy) para un control más fino.
Rebotar en los bordes:
Si toca el borde izquierdo o derecho, rebotar horizontalmente (
cambiar direccióno invertirvx).Si toca el borde superior, rebotar verticalmente.
Si toca el borde inferior (zona roja), perder una vida (ver Paso 6).
Detectar colisión con la pala:
Si la bola toca la pala, rebotar hacia arriba. Puedes calcular el ángulo según la posición de impacto para dar efecto.
🏓 Paso 3: Programar la pala
La pala es muy sencilla:
Control con teclas:
Al presionar flecha derecha → cambiar
xen 50 pasos (o una cantidad fija).Al presionar flecha izquierda → cambiar
xen -50 pasos.
No olvides limitar el movimiento para que no se salga de la pantalla (por ejemplo, que no sobrepase los bordes izquierdo y derecho).
🟥🟦🟩 Paso 4: Programar los bloques
Cada bloque debe comportarse así:
Mostrarse al inicio (o según el nivel activo).
Detectar colisión con la bola:
Si el bloque está tocando la bola, entonces:
Sumar 1 punto a la variable
puntuación.Esconder el bloque (desaparecer).
(Opcional) Reproducir un sonido de "pop".
Cada color de bloque puede tener el mismo código, pero puedes diferenciarlos visualmente. En el código, usa el bloque
si tocando bolay dentro de él las acciones.
Iván agrupa bloques del mismo color para que compartan el mismo código y sea más fácil de mantener.
❤️ Paso 5: Sistema de vidas (línea roja)
Dibuja una línea roja en la parte inferior de la pantalla (puede ser un sprite o un color en el escenario).
Si la bola toca esa línea roja, significa que ha caído.
Entonces:
Restar 1 vida (variable
vidas).Volver a colocar la bola en el centro con la dirección inicial.
Si las vidas llegan a 0, terminar el juego (mostrar "Game Over").
🧠 Iván comenta: Es importante que la línea sea de un color diferente al de los bloques para evitar confusiones.
📊 Paso 6: Variables globales
Crea estas variables para todo el proyecto:
puntuación– puntos acumulados al romper bloques.vidas(Iván la llamarojo error) – número de intentos restantes (ej. 8 vidas en total).nivel– número del nivel actual (1 a 5).
📨 Paso 7: Sistema de niveles con mensajes
Para organizar los niveles, usaremos mensajes (eventos) que se envían entre objetos.
Al inicio (
al presionar bandera), se envía el mensaje "nivel1".Cada objeto (bloques, fondo, etc.) al recibir ese mensaje, actuará en consecuencia:
Los bloques del nivel 1 se muestran; los del nivel 2 se esconden.
El fondo cambia a la imagen correspondiente.
Se actualizan las variables (por ejemplo,
puntuaciónse ajusta según el total de bloques de ese nivel).
Estructura típica de un nivel (desde el código de la bola o del escenario):
al presionar bandera
enviar mensaje [nivel1]
fijar [puntuación] a 0
fijar [vidas] a 8
fijar [nivel] a 1
por siempre
si <(nivel) = 1> entonces
// Acciones propias del nivel 1 (movimiento, detecciones)
si <(nivel) = 2> entonces
// ...
// etc.Cuando se completa un nivel (todos los bloques destruidos), se envía el mensaje "cambiar nivel":
al recibir [cambiar nivel]
sumar 1 a [nivel]
si <(nivel) = 2> entonces
enviar mensaje [nivel2]
cambiar fondo a [fondo2]
// Ajustar puntuación si es necesario
si <(nivel) = 3> ...🧩 Paso 8: Código de los bloques (receptor de mensajes)
Cada bloque tendrá un código como este:
al recibir [nivel1]
mostrar
// (Si es del nivel 1)
al recibir [nivel2]
esconder // si no pertenece a este nivel
// (o mostrar si pertenece)Iván usa
enviar mensajeyrecibirpara que los bloques sepan cuándo mostrarse y cuándo ocultarse.
🎮 Paso 9: Flujo completo del juego (resumen)
Inicio:
Se muestra el nivel 1 (bloques de color, fondo1).
Bola en centro, pala en posición inicial.
Puntuación a 0, vidas a 8.
Jugabilidad:
La bola se mueve y rebota.
La pala se controla con flechas.
Al romper bloques, suma puntos.
Si la bola cae, resta vida y se recoloca.
Cambio de nivel:
Cuando se rompen todos los bloques del nivel, se envía un mensaje para pasar al siguiente.
Se actualizan los bloques (unos se muestran, otros se esconden).
Se cambia el fondo.
Se mantienen la puntuación y las vidas.
Fin del juego:
Si se completan los 5 niveles → ¡Victoria!
Si las vidas llegan a 0 → Game Over.
🧠 Consejos de Iván (y extras)
Aleatoriedad: Para que la bola no vaya siempre a la misma zona, puedes darle una dirección aleatoria al inicio o al rebotar con la pala.
Mensajes: Úsalos para coordinar todos los objetos (bola, pala, bloques, fondo). Así cada sprite solo responde a su mensaje sin tener que estar comprobando variables todo el tiempo.
Prueba y ajusta: Juega varias veces para equilibrar la velocidad de la bola y la cantidad de vidas.
🎬 ¡Ya tienes tu Arkanoid!
Con este tutorial, basado en el proyecto real de un niño de 8 años, puedes crear tu propio juego de romper bloques. ¡Anímate a personalizar fondos, añadir sonidos y crear más niveles
Comentarios
Publicar un comentario