这似乎是一个非常简单的代码,这就是为什么我更困惑,它不会工作。我正在创建一个游戏,画一张图片的不同线条,在每个形状之后,询问用户它可能是什么。我的问题是,一旦包含了input()-部分,它甚至不会绘制第一个圆,但是如果没有输入,它工作得非常好。你知道吗
import pygame, sys
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((1000, 600))
pygame.display.set_caption('PyDoodle')
clock= pygame.time.Clock()
clock.tick(30)
#importing background pictures:
backPimg = pygame.image.load('Wood.jpg')
backPimg = pygame.image.load('Paper.jpg')
backWx = 0
backWy = 0
backPx = 250
backPy = 0
screen.blit(backWimg, (backWx, backWy))
screen.blit(backPimg, (backPx, backPy))
#colors
black = (0, 0, 0)
#solutions
snowman = ('snowman'.capitalize(), 'snow man'.upper(), 'snowman', 'snow man')
#MAIN GAME
while True:
for event in pygame.event.get()
if event.type == QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
#DRAWING #1: SNOWMAN
#circle 1 - the part that's getting on my nerves
pygame.draw.circle(screen, black, (500,400), 70, 2)
guess1 = raw_input('Your guess:\n')
如果你能看一看就好了,也许你有一些建议。你知道吗
问题是,
pygame
在raw_input
等待输入时没有接收任何事件。(此时您不在事件循环中。)因此您永远不会执行pygame.display.update()
。你知道吗在
pygame.draw.circle(screen, black, (500,400), 70, 2)
之后添加pygame.display.update()
。但是,如果需要重新绘制窗口,则在输入仍然完成之前,不会执行该窗口。你知道吗或许应该改用
pygame
提供的输入机制。你知道吗相关问题 更多 >
编程相关推荐