我目前正在做一个游戏在Pygame,我有一个基本的游戏,因为我遵循了一个教程,但我知道我想改进它,使它在一段时间后(例如,每30秒左右),游戏暂停,用户被问到一个问题,他们必须输入正确的答案,以继续玩游戏。我一直在网上寻找和试验一点,但挣扎了相当多!以下是相关代码:
class question():
pressKeySurf, pressKeyRect = makeTextObjs('9+1.', BASICFONT, WHITE)
pressKeySurf, pressKeyRect = makeTextObjs('Press A for 10.', BASICFONT, WHITE)
pressKeySurf, pressKeyRect = makeTextObjs('Press B for 15.', BASICFONT, WHITE)
for event in pygame.event.get():
if (event.key==K_a):
showTextScreen('Correct answer') # pause until a key press
lastFallTime = time.time()
lastMoveDownTime = time.time()
lastMoveSidewaysTime = time.time()
else:
showTextScreen("Wrong")
pygame.time.set_timer(question,1000)
我不知道这是否是在正确的方向,因为我不能让它工作,因为我认为我理解错误,我不应该在计时器中使用类,但是不确定?在
你希望这是一个函数,而不是一个类。将
class
替换为def
更大的问题是你对
set_timer
的使用不正确。它是:其中}都是整数。
eventid
和{set_timer
按指定的时间间隔将事件放入事件队列中,它不调用任何函数。您必须将代码放入主循环以检查eventid
,然后执行适当的代码。在来自this SO answer:的示例代码:
^{pr2}$相关问题 更多 >
编程相关推荐