【发布时间】:2017-07-23 00:10:39
【问题描述】:
在我的简单进入程序中,我有一个开始按钮并检查事件,如果单击开始,我希望开始文本更改颜色,然后我希望将其更改为 false 以便游戏开始。这永远不会发生,并且 pygame 一直卡在屏幕上而没有停止。我希望 while 循环开始,然后它会转到另一个 while 循环。如何检查是否点击了开始,更改文本颜色,然后在以下代码中结束while循环?
import pygame, sys
from pygame.locals import *
pygame.init()
FPS = 60 # frames per second setting
clock = pygame.time.Clock()
screen = pygame.display.set_mode((700, 800))
window_width = 540
window_height = 800
#Title screen fonts
fontObj2 = pygame.font.Font('freesansbold.ttf', 60)
start = fontObj2.render("Start", True,(255,255,255))
into=True
while into==True:
screen.blit(start, (window_width / 2, 600))
for event in pygame.event.get(): #Closes game
if event.type == QUIT:
pygame.quit()
sys.exit()
elif start.get_rect().collidepoint(pygame.mouse.get_pos()):
x, y = event.pos
if start.get_rect().collidepoint(x, y):
start = fontObj2.render("Start", True, (192,192,192))
into=False
elif event.type == pygame.MOUSEBUTTONDOWN:
x, y = event.pos
if start.get_rect().collidepoint(x, y):
start = fontObj2.render("Start", True, (192,192,192))
into = False
pygame.display.flip()
pygame.display.update()
clock.tick(FPS)
【问题讨论】:
标签: pygame python-3.5