Я пытаюсь создать систему прыжков и гравитации в моей игре, чтобы игрок мог работать с гравитацией и мог прыгать на платформу и оставаться на ней до тех пор, пока игрок не уйдет с платформы, в этом случае он упадет
Я пытался создать гравитацию на пигме и прыжке.Но он не работает должным образом, как обычно действует гравитация в игре, и когда я пытаюсь приземлиться на платформу, я сразу же прохожу прямо через платформу
class Player:
def __init__(self, x, y, pic_one):
self.xpos = x
self.ypos = y
self.speed_y = 0
self.speed_x = 0
self.picture = pic_one
def update(self):
self.xpos += self.speed_x
self.ypos += self.speed_y
def draw(self):
screen.blit(self.picture, (self.xpos, self.ypos))
player_one = Player(30, 600, player_one_first_pic)
while True:
[...]
if event.type == pygame.JOYBUTTONDOWN:
if joystick.get_button(0):
player_one.speed_y = -8
if player_one.rect.bottom == wood_platform.rect.top:
player_one.speed_y = 0
if player_one.rect.bottom == gravel.rect.top:
player_one.speed_y = 0
player_one.update()
player_one.draw()
Фактический результат - спрайт прыгаетно он не падает должным образом на землю и имеет границу для прыжков, а также тот факт, что прыжки в воздухе могут быть выполнены, что меня не устраивает в моей игре: (Вот диаграмма, если вам нужно немного большепонимания :)