gpt4 book ai didi

python - 让 Pong 中的球在 pygame 中正确反弹

转载 作者:行者123 更新时间:2023-11-28 19:21:18 25 4
gpt4 key购买 nike

我的代码有时似乎能正常工作,但大多数时候球似乎只是按照它的意愿行事。我为球类分配了一个角度,它改变了对屏幕顶部和底部以及玩家桨的影响,但有时球似乎忽略了逻辑和“if”语句。我确信我只是遗漏了一些简单的东西,但我们将不胜感激。

注意:“T_RECT”和“B_RECT”分别代表屏幕的顶部和底部。

 if (gameBall.rect.colliderect(T_RECT) or gameBall.rect.colliderect(B_RECT)) and bounce == 0:
gameBall.angle = 545 - gameBall.angle
bounce = 1
if (gameBall.rect.colliderect(redPlayer.rect) or gameBall.rect.colliderect(bluePlayer.rect)) and bounce == 0:
gameBall.angle = 365 - gameBall.angle
else: bounce = 0

最佳答案

在进行这些类型的球/弹跳碰撞时,我遇到了很多麻烦。

我找到的最简单的解决方案是:

-在X轴上移动球

-检查碰撞,如果发生碰撞,修复它并对其使用react(在大多数情况下是反向x方向)

-在 Y 轴上做同样的事情。

我过去常常为此大费周章。现在我单独更新/碰撞检查轴。效果很好。

关于python - 让 Pong 中的球在 pygame 中正确反弹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24336799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com