我是相当新的PyGame和我正在创建一个空间射击游戏。这个游戏的一部分是加力,当一个特定的powerup被玩家拿起时,我希望玩家不能在3秒内射击。射击是通过鼠标点击完成的。
我可以拿起powerup,我知道玩家上一次捡到的是什么,但是我正在为这个事件而奋斗。我的想法是:
我知道Python函数,比如wait,是没有帮助的。
有什么想法/建议吗?谢谢
发布于 2016-02-05 22:28:51
当您调用clock.tick()时,它会返回上次调用之后的时间。因此,节省时间:dt = clock.tick(),然后使用该变量来计算秒数。
示例:
dt = clock.tick() # only call once per iteration
if attack_blocked:
attack_block_count += dt
if attack_block_count >= 3000: # dt is in ms
attack_blocked = False示例2:
while True:
dt = clock.tick(60)
for event....
if block_attack_power_up:
attack_blocked = True
attack_block_count = 0
if not attack_blocked:
# do your attack
if attack_blocked:
attack_block_count += dt
if attack_block_count >= 3000:
attack_blocked = Falsehttps://stackoverflow.com/questions/35234392
复制相似问题