From 5ca95505f2d0cb44416e256c568c6615d917e5c0 Mon Sep 17 00:00:00 2001 From: chicrobot Date: Mon, 27 Jul 2026 01:55:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=BB=E9=99=A4=E9=A1=B6=E9=83=A8=E6=A0=87?= =?UTF-8?q?=E9=A2=98=E6=A0=8F=EF=BC=8C=E6=B7=BB=E5=8A=A0=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E5=9C=BA=E6=99=AF=E9=80=80=E5=87=BA=E6=B8=B8=E6=88=8F=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/scenes/main_menu_scene.py | 6 +++--- start.py | 9 ++++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/scenes/main_menu_scene.py b/src/scenes/main_menu_scene.py index 7b2a281..bddbd0f 100644 --- a/src/scenes/main_menu_scene.py +++ b/src/scenes/main_menu_scene.py @@ -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: diff --git a/start.py b/start.py index ec68a56..4be0dd9 100644 --- a/start.py +++ b/start.py @@ -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: