image - dirtysprite - sprites for pygame
¿Pueden las imágenes de Pygame ir más allá de sus Rectos? (1)
Estoy haciendo un juego en Pygame, y lo tengo de modo que si el personaje colisiona con un rect, empujará al personaje hacia atrás una capa de píxeles, creando un límite infranqueable muy pequeño entre él y el objeto. Me preguntaba si cuando comencé a agregarle arte podría cubrirlo para que pareciera una colisión sólida, o ¿hay alguna forma en que una colisión sólida pueda funcionar sin que sean esa capa de píxeles? ¡Gracias por adelantado!
Claro, solo crea un Rect
que sea un poco más grande que el Rect
of the Surface
usando inflate
:
Devuelve un nuevo rectángulo con el tamaño cambiado por el desplazamiento dado. El rectángulo permanece centrado alrededor de su centro actual. Los valores negativos reducirán el rectángulo.
s = your_surface # the Surface containing your image .
r = s.get_rect() # the rect of the Surface.
c_r = r.inflate(2, 2) # the rect used for collision detection.