【发布时间】:2015-10-03 20:39:09
【问题描述】:
我正在制作一个平台游戏,主要是基于重新创建第一个超级马里奥兄弟。
现在我需要知道玩家(物体)何时停止与墙壁(物体)碰撞。 我知道它什么时候发生碰撞,例如当 player.rect.bottom == wall.rect.top 然后 Floor state = 1。如果玩家不再碰撞,我如何使 Floor state = 0(这会使他跌倒)。
我已经尝试过使用:
if player.rect.bottomleft == wall.rect.topright or player.rect.bottomright == wall.rect.topleft:
Floor = 1
如果玩家在角落里,这会让玩家跌倒。但是如果玩家有加速度,它不会通过这个点,Floor 仍然是 Floor = 1,玩家不会跌倒,他会漂浮或飞行。谢谢
是否知道它何时停止碰撞,这将允许我更改 Floor 的值?
【问题讨论】:
标签: python pygame collision-detection physics collision