Ваша проблема в том, что вы работаете с платформами совершенно отдельно. Поэтому, если вы стоите на одном, вы не касаетесь другого, так что это заставляет вас упасть. Чтобы это остановить, вы должны изменить методы t1o player collision_detect
и do
следующим образом:
def collision_detect(self, platform):
if self.x > platform.x and self.x < platform.x2:
if self.y + 40 == platform.y:
return True
else:
return False
def do(self):
self.keys()
self.move()
self.draw()
c1 = self.collision_detect(platform(0, 500, 800, 10))
c2 = self.collision_detect(platform(0, 480, 400, 10))
if c1 or c2:
self.yVel = 0
Constants.CANJUMP = True
else:
self.yVel = 5
Constants.CANJUMP = False