pygame.sprite.Group(*sprites): return Group
Un contenedor simple para objetos Sprite. Se puede heredar de esta clase para crear contenedores que tengan comportamiento mas específico. El constructor toma cualquier número de sprites para agregar en el grupo. El grupo soporta las siguientes operaciones estándar de python:
Operador python | Descripción |
---|---|
in | Consulta si un Sprite está incluido |
len | Cuenta el número de sprites contenidos |
bool | Consulta si alguno de los sprites están incluidos |
iter | Itera a través de todos los sprites |
Los sprites en el grupo no están ordenados, por lo tanto recorrer o dibujar los sprite se realizar sin un orden particular.
Retorna una lista de los sprites contenidos en el grupo.
Group.sprites(): return sprite_list
Retorna una lista con todos los sprites contenidos en el grupo. También puede obtener un iterador para el grupo, aunque no podrá iterar en el grupo mientras lo modifica.
Duplica el grupo.
Group.copy(): return Group
Genera un nuevo grupo con los mismos sprites que el original. Si ha creado una nueva clase heredando desde Group, el nuevo objeto será de la misma clase que el original. Esto funciona solamente si el constructor de la clase derivada toma los mismos argumentos que la clase Group.
Agrega sprites al grupo.
Group.add(*sprites): return None
Agrega cualquier número de sprites a este grupo. Esta función solo agregará sprites que aún no sean miembros del grupo.
Cada argumento sprite
también puede ser una iterador
conteniendo sprites.
Elimina un sprite del grupo.
Group.remove(*sprites): return None
Elimina cualquier número de sprites del grupo. Esta función solo elimina sprites que son miembros actuales del grupo.
Cada argumento sprite
puede ser un iterador conteniendo Sprites.
Consulta si un grupo contiene sprites.
Group.has(*sprites): return None
Retorna True
si el grupo contiene todos los sprites dados. Esto es similar
a utilizar el operador in en el grupo (if sprite in group: …
), que
consulta si un sprite individual pertenece al grupo.
Cada argumento sprite
puede ser un iterador conteniendo Sprites.
Llama al método update
en los sprites contenidos.
Group.update(*args): return None
Llama al método update())
en todos los sprites incluidos en el grupo. La
clase base Sprite
tiene un método update
que toma cualquier número
de argumentos y no hace nada. Los argumento que se pasan a Group.update()
se pasarán a cada Sprite.
No hay forma de obtener el valor de retorno de los métodos update
de
los sprites.
Dibuja las imágenes de sprites.
Group.draw(Surface): return None
Dibuja los sprites contenidos sobre el argumento Surface
. Para ello utiliza
el atributo Sprite.image
para la superficie fuente y Sprite.rect
para
la posición.
El grupo no almacena los sprites en orden, por lo tanto el orden al momento de dibujar es arbitrario.
Dibuja un fondo sobre los sprites.
Group.clear(Surface_dest, background): return None
Borra los sprites usados en la última llamada a Group.draw()
. La superficie
destino se limpia pintando con el fondo de pantalla sobre las posición
anterior del sprite.
El fondo de pantalla es generalmente una Superficie que tiene las
mismas dimensiones que la superficie destino. De todas formas, también puede
ser un nombre de función que tome dos argumentos, la superficie destino y un
area a limpia. La función background
se llamará varias veces para limpiar
la pantalla.
Este es un ejemplo de una función que limpiará los sprites con un color rojo.
def clear_callback(surf, rect): color = 255, 0, 0 surf.fill(color, rect)
Elimina todos los sprites.
Group.empty(): return None
Elimina todos los sprites de este grupo.