我正在与Pygame一起开发一款游戏,目前进展顺利...直到它决定不响应为止。这是我的代码:(很抱歉,如果格式化对Stackoverflow不起作用)

#MODULES USED (use from to make calling functions easier)
from random import *
from pygame import *
import pygame
from pygame.locals import *
pygame.init()
from time import *

#INITIALISE THE PYGAME WINDOW
pygame.event.pump()
screen = display.set_mode([500, 500])
blue = [230, 242, 255]
screen.fill(blue)
pygame.display.update()
default = pygame.image.load("default.jpg")
screen.blit(default, (0,0))
pygame.display.update()
click = pygame.mouse.get_pressed()
#BASIC HEXAPAWN

#ALL POSSIBLE COMPUTER'S MOVE BOARDS AS ARRAY HERE
#TThe moves from the board images are left to right
class Board:
  def __init__(self, board, moves):
      self.board = board
      self.moves = moves

boards1 = [pygame.image.load("a1.jpg"), pygame.image.load("a2.jpg"),       pygame.image.load("a3.jpg")] #move1 boards
#irrelevant stuff removed, just initialising the other boards.

#GAME MAIN LOOP
while True:
  #START GAME - 1st move
  print("You play as O, computer is X")
  currentboard = "O O O\n# # #\nX X X"
  print(currentboard)

  #PLAYER MOVE 1
  screen.blit(boards1[0], (0, 250))
  pygame.display.update()
  if boards1[0].get_rect().collidepoint(pygame.mouse.get_pos()) and click:
    screen.blit(boards1[0], (0,0))
    pmove = 0
#note: I haven't added the other board options yet.

  currentboard = boards1[pmove]

#[insert more unnecessary code here]
  for event in pygame.event.get():
    if event.type == pygame.QUIT:
      pygame.quit()
  break
pygame.quit()


基本上,每当我运行代码时,Pygame窗口看起来都不错,但是当我尝试单击图像时,它只是停止响应。此外,窗口始终停留在加载光标上,这就是为什么。

我已经尽了一切所能,但是,不行。

如果有人可以提供帮助,我将不胜感激。

谢谢 :)

Eleeza

编辑:我不知道其他人也可以编辑我的帖子
整理一些东西,当我运行代码时,没有错误,没有Traceback唯一的问题是无响应的事情。

也很抱歉我真的很不好解释:/

最佳答案

发生了一些事情,但是主要的事情是您在程序启动时仅将一次click变量设置一次。

在主循环内移动click = pygame.mouse.get_pressed()
如果您这样做并且它仍然挂起,则应显示其余代码。

另外,还没有完整的代码,所以我不能100%确定,但是我不认为break应该在那里。

关于python - Pygame,当我尝试单击它时,窗口变得无响应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52691720/

10-12 19:38