Frage: Wie erkennt man eine Kollision zwischen einer Liste von Aufzählungszeichen und einer Liste von Sprites mithilfe der bereitgestellten Klassen?
Lösung:
PyGame bietet mehrere Methoden zum Erkennen von Kollisionen, einschließlich:
Sprite-Kollision Methoden
Um Kollisionen zwischen den angegebenen Sprite- und Bullet-Klassen zu erkennen, können Sie pygame.Rect.colliderect verwenden Methode:
# Initialize sprite and bullet my_sprite = Sprite(sx, sy, name) my_bullet = Bullet(by, by) # Main loop while True: # [...] # Check for collision between sprite and bullet if my_sprite.rect.colliderect(my_bullet.rect): print("Hit")
Tipps:
class Sprite: def __init__(self, x, y, name): self.image = pygame.image.load(name) self.rect = self.image.get_rect(topleft=(x, y)) # ... class Bullet: def __init__(self, x, y): self.bullet = pygame.image.load("user_bullet.BMP") self.rect = self.bullet.get_rect(topleft=(x + 23, y)) # ...
Das obige ist der detaillierte Inhalt vonWie erkennt man Kollisionen zwischen Listen von Aufzählungszeichen und Sprites in Pygame?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!