在 Python 游戏中模拟重力 - 添加重力函数
最编程
2024-05-31 09:26:45
...
请记住,您的Player已经具有确定运动的属性。 使用此属性将播放器拉向屏幕底部。
在Pygame中,较高的数字更靠近屏幕的底部边缘。
在现实世界中,重力会影响所有物体。 但在游戏中,重力是有选择的——如果你将重力添加到整个游戏世界中,则所有物体都会掉落到地面。 相反,你也可以仅将重力添加到玩家和敌人上.
首先,在您的Player选项中添加重力功能:
def gravity(self):
self.movey += 3.2 # how fast player falls
这是一个基本的功能。 首先,无论玩家是否要运动,都将其设置为垂直运动。 换句话说,你已将玩家编程为始终处于下降状态—— 这基本上是重力的基础。
为了使重力函数起作用,我们必须在主循环中调用它。 这样,Python每个时间点都会向玩家施加一次下降运动。
这段代码,将第一行添加到循环中:
player.gravity() # check gravity
player.update()
启动游戏,看看会发生什么。 看起来很突然,因为它发生得很快:您的玩家从游戏屏幕掉向了天空。
这说明你的重力模拟生效了,不过好像效果好过了头。
后续调试中,你可以更改玩家下降的速率。
上一篇: 并发(13) | 异常处理
下一篇: python 并发和并发管道