单向场景切换版本 #1

Merged
chicrobot merged 12 commits from feature-chicrobot into develop 2026-07-27 22:26:35 +08:00
2 changed files with 7 additions and 8 deletions
Showing only changes of commit 5ca95505f2 - Show all commits

No files matched your search

+3 -3
View File
@@ -18,7 +18,7 @@ class MainMenuScene(BaseScene):
self.font = pygame.font.Font(font_file,16)
# 文本
self.game_info_text = self.font.render('按任意键开始游戏', True, Color.white)
self.game_info_text = self.font.render('按任意键开始游戏,鼠标点击退出', True, Color.white)
def update(self):
# 按键按下则切换场景
@@ -40,8 +40,8 @@ class MainMenuScene(BaseScene):
def handle_event(self, event):
if event.type == pygame.KEYDOWN:
self.button_status = True
if event.type == pygame.MOUSEBUTTONDOWN:
self.button_status = True
elif event.type == pygame.MOUSEBUTTONDOWN:
return "exit" # 主循环接收返回,为exit时设置running为False,退出游戏
def __show(self, info, dest=(0, 0)):
if not self.debug_status:
+4 -5
View File
@@ -11,10 +11,7 @@ class Game:
# 设置窗口大小
size = (GameConfig.window_x, GameConfig.window_y)
self.screen = pygame.display.set_mode(size)
# 设置标题
pygame.display.set_caption(GameConfig.game_name)
self.screen = pygame.display.set_mode(size, pygame.NOFRAME)
# 当前场景
self.scene = MainMenuScene(self.screen)
@@ -29,7 +26,9 @@ class Game:
for event in pygame.event.get(): # 这里已经获取了事件,事件队列被清空,在场景的update中再次获取将没有事件
if event.type == pygame.QUIT:
self.running = False
self.scene.handle_event(event) # 当前场景接收事件
result = self.scene.handle_event(event) # 当前场景接收事件
if result == "exit":
self.running = False
# 检查是否切换场景
if self.scene.next_scene is not None: