diff --git a/src/config/color.py b/src/config/color.py new file mode 100644 index 0000000..2257750 --- /dev/null +++ b/src/config/color.py @@ -0,0 +1,6 @@ +class Color: + black = (0, 0, 0) + white = (255, 255, 255) + a = (255, 0, 0) + b = (0, 255, 0) + c = (0, 0, 255) \ No newline at end of file diff --git a/src/config/game_config.py b/src/config/game_config.py new file mode 100644 index 0000000..05f7cf4 --- /dev/null +++ b/src/config/game_config.py @@ -0,0 +1,5 @@ +class GameConfig: + game_name = "Test Game" + window_x = 1920/2 + window_y = 1080/2 + bg_color = (0, 0, 0) \ No newline at end of file diff --git a/src/scenes/base_scene.py b/src/scenes/base_scene.py new file mode 100644 index 0000000..8ac5734 --- /dev/null +++ b/src/scenes/base_scene.py @@ -0,0 +1,5 @@ +import pygame + +class BaseScene: + def __init__(self, screen: pygame.Surface): + self.screen = screen diff --git a/src/scenes/main_menu_scene.py b/src/scenes/main_menu_scene.py new file mode 100644 index 0000000..df928a7 --- /dev/null +++ b/src/scenes/main_menu_scene.py @@ -0,0 +1,9 @@ +import pygame +from src.config.color import Color +from src.scenes.base_scene import BaseScene + + +class MainMenuScene(BaseScene): + + def update(self): + pygame.draw.rect(self.screen, Color.white, [10,20,30,40]) \ No newline at end of file diff --git a/start.py b/start.py index 3f61c8f..273ee7e 100644 --- a/start.py +++ b/start.py @@ -1,9 +1,8 @@ import pygame -from src.config.color import Color from src.config.game_config import GameConfig +from src.scenes.main_menu_scene import MainMenuScene -rect = [10,20,30,40] class Game: def __init__(self): @@ -29,15 +28,14 @@ class Game: if event.type == pygame.QUIT: self.running = False + # 清屏 self.screen.fill(GameConfig.bg_color) - self.update() + # 场景每帧更新逻辑运行 + MainMenuScene(self.screen) # 更新显示 pygame.display.update() - def update(self): - pygame.draw.rect(self.screen, Color.white, rect) - if __name__ == "__main__": Game() \ No newline at end of file