338af5795147f777cdb8a2accdc4db8c475dadb2
项目技术方案
- 游戏引擎:pygame
- 游戏设计:自行实现多场景
项目结构
project start.py # 入口,包含初始化和主循环 data\ # 资源 src\ # 代码 config\ # 基础配置 game_config.py # 游戏配置 scenes.py # 场景类字典,用于多场景切换 scenes\ # 游戏场景 base_scene.py # 场景基类,被其他场景继承,含画布、计时器、下一场景、事件接收、每帧更新、切换场景、退出等参数方法 main_menu_scene.py # 主菜单场景,实现了按键组合、按键顺序、鼠标事件、文本显示、雨天特效等功能 game_scene.py # 游戏场景,实现了方向移动、碰撞判断等功能 empty_scene.py # 空场景,测试或复制用
运行
安装依赖
pip install -r requirements.txt
运行
python start.py
执行逻辑
- start.py中执行Game() # 开始游戏
- 类执行初始化__init__() # 读取game_config.py中的配置,初始化窗口画布等,初始化首个场景MainMenuScene并记录到self.scene
- 初始化函数调用run()开始主循环 # 循环中获取事件并发送给场景的handle_event()方法用于接收玩家输入
- 主循环中调用self.scene.update()方法 # 每帧更新场景中实现的游戏逻辑
- 场景切换通过改变self.scene实现 # 主循环中读取场景类的next_scene参数,为None不切换,否则切换为src\config\scenes.py中类实例化对象
- 退出游戏通过设置running为False实现 # 主循环中读取场景类的next_scene参数,为"exit"时退出
Languages
Python
100%