软件工程第二次个人作业
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/SE2024/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2024/homework/13253 |
这个作业的目标 | 完成一个类羊了个羊的消除游戏 |
学号 | 102201327 |
项目名称 : 萌了个萌
1.项目展示
GitHub仓库链接:https://github.com/114John114/Ling_FirstGame
2.项目介绍
美术资源:
游戏内效果:
使用的技术和特殊设计:
1)使用Pygame库,初始化和窗口设置,加载和处理图像,处理文本显示,事件处理。
2)关卡设计和难度调整,根据关卡生成不同难度的游戏板。关卡越高,图案种类越多,增加游戏复杂度。
3)动态消息显示,用于通知玩家完成当前关卡或游戏结束
3.测试
第一关:
第二关:
第三关
4.AIGC表格
子任务 | 借助何种AIGC技术,实现了什么功能 | 效果如何? |
---|---|---|
美术资源设计 | 网页AI,生成图片 | 达到预期 |
设计游戏开始菜单 | 网页AI,设计主菜单开始游戏的逻辑 | 达到预期 |
游戏逻辑设计 | 网页AI,设计游戏逻辑 | 达到预期 |
关卡设计 | 网页AI, 设计关卡逻辑 | 达到预期 |
设计游戏结束判定 | copilot,设计游戏结束判定 | 达到预期 |
5.PSP表格
PSP | 预计耗时(小时) | 实际耗时(小时) |
---|---|---|
设计游戏界面 | 1 | 1 |
编写游戏逻辑代码 | 3 | 4 |
测试和调试 | 2 | 4 |
用户界面设计 | 1 | 1 |
6.个人评价
1. 项目规划和设计
优点:
明确目标:清楚地定义了游戏的基本功能,如图案匹配、关卡系统和用户界面设计。
结构化代码:代码结构清晰,有函数和模块化设计,使得功能的组织和管理比较容易。
改进建议:
详细设计文档:在开始编程之前,编写详细的设计文档和功能需求说明,可以帮助更好地规划和实施项目。
项目管理:如果项目复杂度较高,考虑使用版本控制工具(如 Git)来跟踪代码更改和管理项目进度。
2. 实现功能
优点:
基本功能实现:实现了图案匹配、关卡生成、开始菜单、消息显示等核心功能。
合理使用 Pygame:正确地使用了 Pygame 库中的常用功能,如图像加载、事件处理、绘制文本等。
改进建议:
代码优化:在某些功能实现上,可以进一步优化代码,减少重复代码或提高效率。例如,图案生成和管理可以封装到类中,使代码更具可重用性。
错误处理:增加错误处理机制,确保文件路径错误或加载失败时,程序不会崩溃,而是能给出适当的提示。
3. 用户界面
优点:
简单明了的界面:开始菜单和游戏中的消息显示都很直观,用户可以容易地理解如何开始游戏和查看结果。
支持汉字的字体:使用了支持汉字的字体,使得消息文本显示正确。
改进建议:
用户体验提升:可以增加更多的用户界面元素,如按钮动画、音效、背景音乐等,使游戏体验更加丰富。
动态布局:考虑在不同分辨率下动态调整布局和字体大小,以适应不同设备和窗口大小。
4. 游戏逻辑
优点:
关卡和难度设计:通过增加图案种类和关卡来提高游戏难度,增强了游戏的挑战性和趣味性。
匹配逻辑:实现了基本的图案匹配逻辑,并在完成关卡后正确更新游戏状态。
改进建议:
游戏逻辑优化:可以增加更多的游戏规则和复杂度,如时间限制、得分系统等。
用户反馈:增加更多的用户反馈机制,比如点击时的音效、匹配成功或失败的提示等,提升游戏的互动性。