Cómo definir la clase ladrillo para Arkanoid con Pygame

Autor: | Última modificación: 15 de julio de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post: , ,

Los ejercicios prácticos, tal como definir la clase ladrillo para Arkanoid con Pygame, mientras estás aprendiendo a programar son fundamentales para perfeccionar tus habilidades y aumentar tus conocimientos en el mundo del IT.

Si te interesa aprender más acerca del desarrollo de videojuegos con Python y todas las herramientas que este lenguaje de programación te ofrece, te recomendamos seguir leyendo este post acerca de cómo definir la clase ladrillo para Arkanoid con Pygame.

Clases en Python

Como sabemos, Python es un lenguaje de programación que está orientado a objetos, por lo que es muy importante que tenga una opción para construir una clase que posesione un objeto. De esta manera, al crear una clase puedes determinar la cantidad de instancias que requieras para el funcionamiento del programa.

Las clases en Python deben tener un constructor, dado por la función __init__, y diferentes métodos que posibilitan el actuar, movimiento y relevancia de los objetos creados por la clase. Los métodos ingresados en la clase muchas veces también interactúan con otras clases definidas para un programa de código.

¿Cómo definir la clase ladrillo para Arkanoid con Pygame?

Representación gráfica de los ladrillos

Ahora que sabes para qué y cómo funcionan las clases en Python, podemos continuar con el ejercicio para definir la clase ladrillo para Arkanoid con Pygame. Como podemos ver en la siguiente imagen, en Arkanoid los ladrillos son los elementos que parecen bloques o rectángulos de colores en la parte superior de la pantalla del videojuego. Estos se mantiene o desaparecen de acuerdo a las colisiones que tienen con la pelota, que es lanzada por el bloque del borde inferior.

La clase ladrillo o bloque, por tanto, debe tener un constructor donde se inicialice la imagen de los bloques, donde se posicione cada uno de ellos y, por otro lado, donde actúan los puntos según los métodos que definen las colisiones entre ambos elementos.

Cómo definir la clase ladrillo para Arkanoid con Pygame

Pasar un sprite como argumento de la clase

Ahora bien, la definición de la clase ladrillo se debe establecer ingresando un objeto de tipo sprite. Los sprite o spriteGroups son objetos o rectángulos que almacenan imágenes que después serán transladadas de un lugar a otro o, por el contrario, reciben movimiento de otros objetos de tipo sprite.

Definir el constructor como herencia

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

El segundo paso para definir la clase es la definición del constructor como una herencia en Python. La herencia en Python es una herramienta de lenguaje para crear subclases a partir de una clase determinada. Para llamar a esa clase original, hay que utilizar la función de super( ) antes del establecimiento del constructor de la clase.

En este caso, estaremos llamando desde el constructor de ladrillo a la clase original del juego de Arkanoid, es decir, la clase juego.

Cargar la imagen al videojuego

El tercer paso es inicializar todos los objetos que deben corresponder a la clase ladrillo. No obstante, en un primer momento deberás cargar la imagen o imágenes que corresponden a la visualización de los ladrillos. Para ello debes utilizar la función del módulo pygame.image para cargar imágenes: pg.image.load. Despúes, utilizarás el módulo de os.path.join para poder rastrear la ruta de la imagen de los ladrillos.

Inicializar la posición del rect

Para dibujar la imagen en una posición determinada, debes emplear la función self.image.get_rect e ingresarle las coordenadas necesarias para el lado x (horizontal) y para el lado y (vertical). Esta función se encarga de obtener un rectángulos en coordenadas determinadas.

Inicializar el método para obtener puntos

Por último, para inicializar el método que interactúa con otro elementos y obtener los puntos que aparecerán en el marcador, solo deberás definir esta variable como un objeto más de la clase ladrillo.

De esta manera, ya habrás finalizado el proceso para definir la clase ladrillo para Arkanoid con Pygame.

Representación de los pasos para definir la clase ladrillo para Arkanoid con Pygame

A continuación, te mostramos una representación en términos del código en Python de los pasos para definir la clase ladrillo para Arkanoid con Pygame, siguiendo los parámetros para construir una clase que represente un objeto de un programa para videojuegos.

#definición de la clase Ladrillo

class Ladrillo (Sprite):

#constructor de la clase Ladrillo

def __init__ (self, x, y, puntos):

super( ) .__init__( ) #herencia de otra clase

#inicialización de otros objetos

self.image = pg.image.load(

os.path.join (‘resources’, ‘images’, ‘[nombre de la imagen de los ladrillos.png]’)

self.rect = self.image.get_rect ( x = x, y = y)

self.puntos = puntos

De esta manera, ya has aprendido cómo definir la clase ladrillo para Arkanoid con Pygame.

Sigue programando con Python

Si bien ya sabes cómo definir la clase ladrillo para Arkanoid con Pygame, aún queda mucho por aprender. La práctica hace al maestro, por lo que tu mejor oportunidad para seguir formándote para convertirte en un experto es apuntarte a nuestro Aprende a Programar desde Cero Full Stack Jr. Bootcamp. ¡Anímate a perfeccionar tus habilidades y seguir programando!

[email protected]epcoding.io

¿Sabías que hay más de 40.000 vacantes para desarrolladores web sin cubrir en España? 

En KeepCoding llevamos desde 2012 guiando personas como tú a áreas de alta empleabilidad y alto potencial de crecimiento en IT con formación de máxima calidad.

 

Porque creemos que un buen trabajo es fuente de libertad, independencia, crecimiento y eso ¡cambia historias de vida!


¡Da el primer paso!