diff --git a/src/player.py b/src/player.py index f4e5a6e..3ba56b0 100644 --- a/src/player.py +++ b/src/player.py @@ -40,14 +40,19 @@ class Player: self.rect.y += self.velocity_y self.on_ground = False # zurücksetzen - # Plattform-Kollision prüfen for obs in obstacles: if self.rect.colliderect(obs.get_rect()): - # nur wenn Spieler von oben kommt - if self.velocity_y > 0 and self.rect.bottom <= obs.get_rect().top + 20: + # Prüfen: Spieler kommt von oben und fällt drauf + if self.velocity_y > 0 and self.rect.bottom <= obs.get_rect().top + 10: self.rect.bottom = obs.get_rect().top self.velocity_y = 0 self.on_ground = True + else: + # Seitliche Kollision + if self.rect.right > obs.get_rect().left and self.rect.left < obs.get_rect().left: + self.rect.right = obs.get_rect().left + elif self.rect.left < obs.get_rect().right and self.rect.right > obs.get_rect().right: + self.rect.left = obs.get_rect().right # Boden-Kollision if self.rect.bottom >= ground_y: