La iteración de un objeto de Arkanoid con Pygame

| Última modificación: 10 de abril de 2024 | Tiempo de Lectura: 4 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Mientras vas adelantando un proceso para desarrollar un videojuego con Python, mayor cantidad de herramientas vas necesitando para representar los procesos y características de un videojuego. Así pues, hoy te presentamos el proceso de iteración de un objeto de Arkanoid con Pygame para que puedas reproducir el mismo proceso cuando necesitas crear un bucle que pase por varias imágenes y repita el mismo proceso.

Manejar la iteración de un objeto de Arkanoid con Pygame

Para controlar la iteración de un objeto de Arkanoid con Pygame, deberás cumplir dos pasos acerca de la creación de la clase raqueta para Arkanoid. En primer momento, deberás crear la clase objeto y después realizar el proceso de iteración, que está constituido por la creación de la lista de imágenes y, después, definir la función de iteración.

Creación de la clase del objeto

Antes de continuar con el proceso de iteración de un objeto de Arkanoid con Pygame, tendrás que establecer la clase del objeto o los objetos que vayas a iterar. Como en este artículo hemos propuesto trabajar con el programa de código para Arkanoid, lo que haremos será definir la clase raqueta con el mismo código que establecimos en post acerca de la definición de la clase raqueta.

#definición de la clase Raqueta

class Raqueta (Sprite):

super( ).__init__( )

🔴 ¿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

self.que_image_cargar: 2

self.image = pg.image.load(

os-path.join (‘resources’, ‘image’, ‘nombre de la imagen.jpg’)

self.rect = self.image.get_rect (

midbottom = (ANCHO / 2, ALTO – self.margen_inferior)) #situado el rect punto central

Esta definición de la clase es importante, pues se relaciona con los métodos que se integrarán después en el desarrollo del videojuego y del elemento raqueta de Arkanoid.

Iteracion de la raqueta para Arkanoid

Crear una lista con las imágenes a iterar

Para crear una lista con objetos a iterar, deberás cargar las imágenes y ponerlas en la lista. Todas las imágenes están en la misma carpeta, por lo que se llaman igual, salvo por un número del 0 al 2 que acompaña la etiqueta de la imagen.

Te presentamos dos formas para crear esta lista y añadir las imágenes cargadas. Por un lado, la creación de la lista [ ] y, por otro lado, la función for i in range con self.imagenes.append. Cualquiera de estas dos utiliza los métodos con la ruta os.path, esto es, os.path.join.

Definir la función de iteración de un objeto de Arkanoid con Pygame

Para cambiar la imagen cada cierto tiempo, después de pasar por una cantidad determinada de imágenes, tienes que trabajar con los atributos de iteración y las opciones para cargar las imágenes. Así pues, las variables o atributos serán la iteración y el límite de iteración, es decir, el momento en el que se reiniciará la repetición entre imágenes. Cuando le agregas el objeto propio del trabajo, es decir, self, estás modificando cada variable.

A su vez, también deberás agregar una variable que has establecido en un paso anterior, esta es, la variable de qué imagen cargar. De esta manera, estas variables podrán jugar con operadores aritméticos propios del lenguaje de programación. Esto lo puedes ver expuesto en la representación que te presentaremos en el siguiente apartado.

Representación de los pasos de iteración de un objeto

A continuación, te traemos la representación, en forma de código, de los pasos de iteración de un objeto de Arkanoid con Pygame con las herramientas de Python.

#la lista de imágenes dentro de la clase Raqueta

Primera opción para cargar las imágenes:

self.electric = [

pg.image.load (os.path.join

(‘resources’, ‘images’, ‘nombre de la imagen00.png’)),

pg.image.load (os.path.join

(‘resources’, ‘images’, ‘nombre de la imagen01.png’)),

pg.image.load (os.path.join

(‘resources’, ‘images’, ‘nombre de la imagen02.png’))]

Otra opción para cargar la imagen es la siguiente:

self.imagenes = []

for i in range (3)

self.imagenes.append(

pg.image.load (os.path.join

(‘resources’, ‘images’, f’electric0′{i}.png’))

Para intercambiar las imágenes, deberás utilizar el apartado del script:

#agregar como parámetro de configuración

iteración = 0

limite_de_iteracion = 2

self.iteracion = self.iteracion + 1

if self.iteracion == self.limite_iteracion:

self.que_imagen_cargar = self.que_imagen_cargar + 1

if self.que_imagen_cargar == len (self.imagenes):

self.que_imagen_cargar = 0

self.images = self.imagenes [self.que_imagen_cargar]

self.iteracion = 0

De esta manera, has definido un proceso de escritura de código para la iteración de un objeto de Arkanoid con Pygame para Python, en este caso, con imágenes que se se encuentran representadas en un videojuego para Arkanoid.

¿Cuál es el siguiente paso?

Ahora que sabes cómo manejar la iteración de un objeto de Arkanoid con Pygame, puedes reproducir esta tarea sobre la iteración con otros elementos de este y otros videojuegos desarrollados en Python.

Si quieres saber más acerca de cómo funciona el desarrollo de videojuegos en Python, además de conocer otras herramientas para otro tipo de programas funcionales, te recomendamos revisar el temario del Aprende a Programar desde Cero Full Stack Jr. Bootcamp. Esta es la oportunidad perfecta para convertirte en un programador en pocos meses. ¡Apúntate ya!

Ramón Maldonado

Full Stack Developer y Responsable de Formación base en KeepCoding.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Aprende a Programar desde Cero

Full Stack Jr. Bootcamp

Apúntate y consigue uno de los perfiles más demandados con Python en solo 4 meses.