Как сделать столкновение на всех 4 сторонах платформы в пигме? - PullRequest
1 голос
/ 15 мая 2019

Я пишу платформерную игру, использующую pygame для проекта, следуя указаниям этого урока и модифицируя предоставленные им файлы здесь . У меня настроено столкновение с верхом платформ, однако я выскакиваю сверху, когда пытаюсь перемещаться по ним сбоку или снизу, когда хочу просто не перемещаться по ним и не падать.

Я пытался использовать этот код, чтобы столкнуться со всех сторон, но в итоге я пролистал платформы.

      hits = pg.sprite.spritecollide(self.player, self.platforms, False)
       if hits:
           if self.player.acc.x > 0:  # Moving right; Hit the left side of the wall
               self.player.right = hits[0].rect.left
               self.player.vel.x = 0
           if self.player.acc.x < 0:  # Moving left; Hit the right side of the wall
               self.player.left = hits[0].rect.right
               self.player.vel.x = 0
           if self.player.acc.y > 0:  # Moving down; Hit the top side of the wall
               self.player.bottom = hits[0].rect.top
               self.player.vel.y = 0
           if self.player.acc.y < 0:  # Moving up; Hit the bottom side of the wall
               self.player.top = hits[0].rect.bottom
               self.player.vel.y = 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...