停止延迟 pygame/python

Stopping a delay in pygame/python

我正在使用 pygame 创建一些东西,我需要延迟大约 10 秒,当按下按钮时该延迟会中断。当我尝试这样做时,它在延迟时暂停并且无法检测到按钮按下。我想知道这是否可能,或者是否有其他选择。我试过:

pygame.time.delay(10000)
if hit1: #hit1 is a bool representing keydown
    Blue1() #my function to draw a shape

我 2 年前(当时我 12 岁)碰巧遇到过同样的问题,所以我想我明白你的意思了。 首先从 time

导入 sleep
from time import sleep

那你可以试试这个

#code before 10 sec count
interrupt = false
millisecondPassed = 0
while true:
    sleep(0.01)
    millisecondPassed += 1
    for event in pygame.event.get():
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_b:
                interrupt = true
    if millisecondPassed >= 10000 or interrupt == true:
        break
#code after interruption

供参考: 10 秒 = 10000 毫秒