如何添加1秒延迟?

时间:2019-07-29 09:39:31

标签: time pygame delay wait

嘿,我正在制作这款游戏​​,我需要延迟一秒或更长时间吗? 有任何想法吗?

在这里我需要在tx3 = 1000和cheesyx = 1000之间延迟。

            if x < 300 and y < 300 and not duringfight:
                win.blit(cheesyt3, (tx3, ty3))
            if x < 250 and y < 250 and not duringfight:
                tx3 = 1000
                cheesyx = 1000
            if cheesyx == 1000:
                deathx -= 5
                if deathx == 600:
                    deathx += 5
                    deathmove = False
                    wmx = 1000
                    win.blit(deathtext, (dtext, 400))
                    if x > 400:
                        dtext = 1000
                        win.blit(deathhanpup, (deathx, deathy))
                        deathy = 1000

2 个答案:

答案 0 :(得分:0)

由于time.sleep在pygame中不能很好地工作,因此您可以使用时间模块将当前时间与上次执行进行比较,并仅在超过一秒钟后才在(事件)循环中执行代码。

import time

last_execution = time.time()
if time.time() - last_execution > 1:
    last_execution = time.time
    execute_code_you_want()

答案 1 :(得分:0)

Pygame时间

在pygame中,time.sleep(1)不能很好地工作,因此您可以执行pygame.time.delay(1),这很好。

链接:https://www.pygame.org/docs/ref/time.html#pygame.time.delay