嘿,我正在制作这款游戏,我需要延迟一秒或更长时间吗? 有任何想法吗?
在这里我需要在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
答案 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中,time.sleep(1)
不能很好地工作,因此您可以执行pygame.time.delay(1)
,这很好。
链接:https://www.pygame.org/docs/ref/time.html#pygame.time.delay。