正如标题中所说,我正在处理一个pygame项目,我想做一个延迟,但是提供的所有函数都是pygame.time.delay()
或pygame.time.wait()
和sleep()
,所有这些函数在调用时会阻塞整个程序。你知道吗
更清楚的是,我希望一个角色站在熔岩上时,每秒钟都受到伤害,同时有权逃离熔岩。但当函数失效时,程序就被阻塞了,在他死之前我什么都做不了。你知道吗
def delay(y):
starttime = time.time()
while True:
time.sleep (y - ((time.time() - starttime) % y))
def hurt(x):
global Life
pygame.mixer.Sound.play (Aie)
Life -= x
if tilemap[PlayerPos[1]][PlayerPos[0]] == 4 and Life != 0:
while tilemap[PlayerPos[1]][PlayerPos[0]] == 4 and Life != 0:
delay(1)
hurt(1)
death()
(4代表熔岩)
例如,您可以设置包含当前时间的条件,而不是使用延迟
相关问题 更多 >
编程相关推荐