软件工程第二次作业
这个作业属于哪个课程 | 首页 - 软件工程2024 - 福州大学 - 班级博客 - 博客园 (cnblogs.com) |
---|---|
这个作业要求在哪里 | 2024秋软件工程个人作业(第二次) - 作业 - 软件工程2024 - 班级博客 - 博客园 (cnblogs.com) |
这个作业的目标 | 使用Python编写一个“羊了个羊”风格的消除类小游戏 |
学号 | 102202133 |
项目代码上传至:https://github.com/102202133zqj/102202133ZQJ
一.工程任务分析
1.界面设计
主菜单界面:由背景图,游戏名称以及开始游戏按钮组成
游戏界面:主要由一个6×6的图片槽构成,前5行随机生成并刷新新的图片,最后一行用来放置鼠标选中的图片组
结束界面:由背景图以及”GAMEOVER”字样组成
2.游戏逻辑
进入游戏程序后点击开始游戏进入游戏界面
前5行的每个图片槽将会从预定的图片集中随机生成图片,点击后将会重新更新该槽位的图片
点击前5行的图片后将其放入最后一行的对列中,如果点击的图片与前面两个存储的图片相同,就不会存储该图片并删除前两个相同的图片
当最后一行队列中存储了6张图片时游戏结束
当每个图片槽被点击3次或者倒计时结束后游戏结束,进入结束界面
3.难度设置:
每次游戏中每个图片槽都会随机生成并刷新图片,增加游戏的趣味性和挑战性
4.游戏特色
在“羊了个羊”消除类游戏的基础上增加其他网络游戏的风格特色,增加趣味性
5.技术实现
Pygame库:用于创建游戏窗口、加载和显示图片、处理用户输入和绘制图形界面
Python编程语言: 用于编写游戏逻辑、处理数据和控制游戏流程
多线程:使用threading 模块来处理倒计时,允许游戏界面在倒计时进行时仍然响应用户操作
事件处理:通过 pygame.event.get()方法来处理游戏中的各种事件如鼠标点击和退出事件
二.工程展示
1.主界面
2.游戏界面
3.结束界面
三.游戏测试
测试目的:测试“蛙了个蛙”的基本功能、游戏过程、用户界面、登入退出是否符合设计要求
测试样例:
能否正常运行程序并通过“开始”按钮进入游戏
游戏过程中是否能正常退出游戏
游戏中图片槽的图片是否随机出现和刷新
倒计时是否正常运行且倒计时结束是否结束游戏
3个相同图片是否能正常消除
当最后一行的图片队列累计6个图片后是否能正常结束游戏
多次进行游戏是否会出错
测试结果:
按钮运行正常,游戏登入退出正常
游戏自身运行正确
多次启动运行游戏仍然表现正常
测试设计较好地满足了游戏需求,测试用例满足程序测试需求
四.AIGC工具使用心得
子任务 | 借助何种AIGC技术,实现了什么功能 |
---|---|
游戏设计 | kimi、GPT-4o |
图像生成 | craiyon |
代码编写 | kimi、GPT-4o |
五.PSP表格
任务描述 | 预计耗时(h) | 实际耗时(h) | 完成度 |
---|---|---|---|
游戏过程设计与用户交互 | 1 | 1 | 完成 |
游戏界面设计 | 9 | 8 | 完成 |
图片的设计与导入 | 1 | 1 | 完成 |
测试与调试 | 2 | 2 | 完成 |
总计 | 13 | 12 | 完成 |
六.评价
在这次的实践过程中,我充分体会了使用python语言和AI开发游戏程序的全过程,经过早期构思,代码编写,测试修补等过程我学习了相关知识和技能,提升了我的综合能力
但这次的游戏程序还有许多可以进一步优化和提升的地方,希望下一次实现的结果会更加的完善