-
Notifications
You must be signed in to change notification settings - Fork 0
Tutorial Breakout_es
Home | Beginner Preset | English | Español
Este tutorial te guiará a través de la creación de un juego clásico de Breakout. ¡Es un primer proyecto perfecto para aprender PyGameMaker!
- Crear y usar sprites
- Configurar objetos de juego con eventos y acciones
- Controles de teclado para el movimiento del jugador
- Detección de colisiones y rebotes
- Destruir objetos en colisión
- Construir una sala de juego
Primero, necesitamos crear los elementos visuales para nuestro juego.
- En el panel Assets, clic derecho en Sprites -> Create Sprite
- Nómbralo
spr_paddle - Dibuja un rectángulo horizontal (aproximadamente 64x16 píxeles)
- Importante: Haz clic en Center para establecer el origen en el centro
- Crea otro sprite llamado
spr_ball - Dibuja un círculo pequeño (aproximadamente 16x16 píxeles)
- Haz clic en Center para establecer el origen
- Crea un sprite llamado
spr_brick - Dibuja un rectángulo (aproximadamente 48x24 píxeles)
- Haz clic en Center para establecer el origen
- Crea un sprite llamado
spr_wall - Dibuja un cuadrado (aproximadamente 32x32 píxeles) - este será el límite
- Haz clic en Center para establecer el origen
- Clic derecho en Backgrounds -> Create Background
- Nómbralo
bg_game - Dibuja o carga una imagen de fondo
![]()
Ahora programemos el paddle que el jugador controla.
- Clic derecho en Objects -> Create Object
- Nómbralo
obj_paddle - Establece el Sprite como
spr_paddle - Marca la casilla Solid
- Haz clic en Add Event -> Keyboard -> selecciona Right Arrow
- Agrega la acción Set Horizontal Speed
- Establece value en
5(o cualquier velocidad que prefieras)
- Haz clic en Add Event -> Keyboard -> selecciona Left Arrow
- Agrega la acción Set Horizontal Speed
- Establece value en
-5
¡El paddle sigue moviéndose incluso después de soltar la tecla! Arreglemos eso.
-
Haz clic en Add Event -> Keyboard Release -> selecciona Right Arrow
-
Agrega la acción Set Horizontal Speed
-
Establece value en
0 -
Haz clic en Add Event -> Keyboard Release -> selecciona Left Arrow
-
Agrega la acción Set Horizontal Speed
-
Establece value en
0
Ahora el paddle se detiene cuando sueltas las teclas de flecha.

- Crea un nuevo objeto llamado
obj_ball - Establece el Sprite como
spr_ball - Marca la casilla Solid
- Haz clic en Add Event -> Create
- Agrega la acción Start Moving (Direction) (o Set Horizontal/Vertical Speed)
- Establece una dirección diagonal con velocidad
5- Por ejemplo: hspeed =
4, vspeed =-4
- Por ejemplo: hspeed =
Esto hace que la pelota comience a moverse cuando el juego inicia.
- Haz clic en Add Event -> Collision -> selecciona
obj_paddle - Agrega la acción Reverse Vertical (para rebotar)
- Haz clic en Add Event -> Collision -> selecciona
obj_wall - Agrega la acción Reverse Horizontal o Reverse Vertical según sea necesario
- O usa ambas para manejar rebotes en esquinas

- Crea un nuevo objeto llamado
obj_brick - Establece el Sprite como
spr_brick - Marca la casilla Solid
- Haz clic en Add Event -> Collision -> selecciona
obj_ball - Agrega la acción Destroy Instance con objetivo self
¡Esto destruye el ladrillo cuando la pelota lo golpea!
Reverse Vertical siempre se aplica a la instancia en cuyo evento se encuentra — no tiene una opción "aplicar a other" — así que esta acción debe ir en la pelota, no en el ladrillo:
- Regresa a
obj_bally agrega: -
Add Event -> Collision -> selecciona
obj_brick - Agrega la acción Reverse Vertical

- Crea un nuevo objeto llamado
obj_wall - Establece el Sprite como
spr_wall - Marca la casilla Solid
Eso es todo - la pared solo necesita ser sólida para que la pelota rebote.

- Clic derecho en Rooms -> Create Room
- Nómbrala
room_game
- En la configuración de la sala, encuentra Background
- Selecciona tu fondo
bg_game - Marca Stretch si quieres que llene la sala
Ahora coloca tus objetos en la sala:
-
Coloca el Paddle: Pon
obj_paddleen el centro inferior de la sala -
Coloca las Paredes: Pon instancias de
obj_wallalrededor de los bordes:- A lo largo de la parte superior
- A lo largo del lado izquierdo
- A lo largo del lado derecho
- Deja la parte inferior abierta (¡aquí es donde la pelota puede escapar!)
-
Coloca la Pelota: Pon
obj_ballen algún lugar del centro -
Coloca los Ladrillos: Organiza instancias de
obj_bricken filas en la parte superior de la sala

- Haz clic en el botón Play (flecha verde)
- Usa las teclas de flecha Izquierda y Derecha para mover el paddle
- ¡Intenta rebotar la pelota para destruir todos los ladrillos!
- Presiona Escape para salir
¡Tu juego básico de Breakout está completo! Aquí hay algunas mejoras para probar:
- Agrega un evento No More Lives para mostrar "Game Over"
- Pierde una vida cuando la pelota sale por abajo
- Usa la acción Add Score al destruir ladrillos
- Muestra la puntuación con Draw Score
- Crea más salas con diferentes disposiciones de ladrillos
- Usa Next Room cuando todos los ladrillos sean destruidos
- Agrega sonidos para rebotes y destrucción de ladrillos
- Usa la acción Play Sound
| Objeto | Sprite | Solid | Eventos |
|---|---|---|---|
obj_paddle |
spr_paddle |
Sí | Keyboard (Left/Right), Keyboard Release |
obj_ball |
spr_ball |
Sí | Create, Collision (paddle, wall, brick) |
obj_brick |
spr_brick |
Sí | Collision (ball) - Destroy self |
obj_wall |
spr_wall |
Sí | Ninguno necesario |
- Beginner Preset - Eventos y acciones usadas en este tutorial
- Event Reference - Todos los eventos disponibles
- Full Action Reference - Todas las acciones disponibles