【发布时间】:2021-01-03 14:22:49
【问题描述】:
我正在尝试在“游戏”中添加一些难度。基本上我想在每次玩家得分乘以 100 时调用方法来提高精灵的速度(它应该发生在 100、200 等)。
我正在使用 pygame 和 livewires 包。
我的处理方式是使用以下范围:
if self.score.value in range(0, 10000+1, 100):
pizza.update_speed()
更新方法只是提高速度:
def update_speed(self):
Pizza.speed += 0.25
所以...它有效,但我确信它并不优雅,并且有更好的方法。
我应该如何对其进行编码,以便我可以“无限”地以正确的方式检查分数?
【问题讨论】:
-
使
speed成为property的Pizza类。 -
我可以包含整个代码,但速度是 Pizza 类的一个属性,我想要实现的是每次得分为 100、200 等时检查分数,并“无休止地”进行。
-
在这种情况下,在
speed属性的setter 方法中,使用%运算符来检测分数值何时是100 的整数倍(类似于@Rabbid76 的答案) .
标签: python python-3.x pygame livewires