我一直在跟着一个弹跳球示例只是为了让我的排骨用pygame加热:每次我测试我的代码时我必须通过导致它冻结来杀死游戏窗口,尽管在我的代码中(直接拍摄)来自pygame网站)我声明如果按下Esc键或屏幕上的X按钮,游戏应退出。我收到错误
running == False
NameError: name 'running' is not defined
我的代码是
while 1:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running == False
if event.type ==pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
running == False
我可以定义“正在运行吗?”这样当我试图退出时游戏不会简单地冻结。
答案 0 :(得分:2)
首先,您应该在while循环上定义运行到True(running = True
)。其次,你应该在某个地方检查这个价值;最简单的方法是将while 1
更改为while running
三,==正在检查是否相等,=正在设置一个值。您想要将event.type检查为pygame.QUIT或KEYDOWN,因此那些==是正确的,但是您希望将运行设置为False,即running = False
。正在运行== False作为语句无效。