From 8df17d8202cc0f185b26a3257549978ca224b674 Mon Sep 17 00:00:00 2001 From: schererleander Date: Fri, 26 Dec 2025 22:53:26 +0100 Subject: fix(bullets): clean up bullets outside of screen --- Laser.py | 6 +++++- Szenen.py | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Laser.py b/Laser.py index ab7b9a4..9d12428 100644 --- a/Laser.py +++ b/Laser.py @@ -16,4 +16,8 @@ class Laser(pygame.sprite.Sprite): def bewegen(self, dt: float): self.__pos_y += self.__geschwindigkeit * dt - self.rect.y = int(round(self.__pos_y)) \ No newline at end of file + self.rect.y = int(round(self.__pos_y)) + + def einschraenken(self, screenHoehe: int): + if self.rect.bottom < 0 or self.rect.top > screenHoehe: + self.kill() diff --git a/Szenen.py b/Szenen.py index 99e937a..fc0db57 100644 --- a/Szenen.py +++ b/Szenen.py @@ -231,8 +231,10 @@ class Game(Szene): for laser in self.__alienLaserSpriteGruppe: laser.bewegen(dt) + laser.einschraenken(self.__screen.get_height()) for laser in self.__spielerLaserSpriteGruppe: laser.bewegen(dt) + laser.einschraenken(self.__screen.get_height()) self.__kollision() self.__alienUebrig = len(self.__alienSpriteGruppe) -- cgit v1.3.1