软件工程第二次作业
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/2026-01SoftwareEngineeringandSoftwareEngineeringPractice/homework |
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/2026-01SoftwareEngineeringandSoftwareEngineeringPractice/homework/16718 |
| 这个作业的目标 | 使用 Python 和 AIGC 完成“一箭又一箭”小游戏 |
| 学号 | 102402115 |
| GitHub 仓库 | https://github.com/Moliar4/arrow-game |
项目展示:
展示开始界面:

游戏过程:

项目介绍
游戏规则
棋盘上分布着若干带方向的箭头(上、下、左、右四种)。玩家点击某个箭头后,程序检查它前进方向上是否有其他箭头阻挡:
- 前方无阻挡:箭头沿方向飞出棋盘并消失
- 前方有阻挡:箭头射出后撞到阻挡物,变红抖动,然后回到原位,失误次数 +1
- 失误达到 3 次:本关失败,可重新开始
- 清空本关所有箭头:通关,进入下一关
界面设计
游戏包含四个界面:
- 主页面:标题 + 设置面板(音乐开关、音量调节)+ 开始游戏按钮
![image]()
- 关卡选择:6 个关卡按钮,显示解锁状态和已获得的星级
![关卡选择]()
- 游戏页面:顶部显示关卡号、剩余箭头数、失误次数、用时;中间是 7×7 棋盘;底部有返回和重新开始按钮
![游戏页面]()
- 结果弹窗:通关时显示用时、得分、星级和"下一关/重玩/返回"按钮;失败时显示"重新开始/返回"按钮
![完成页面]()
![失败页面]()
主要功能
- 四种方向的箭头,点击判定路径
- 飞出动画(沿方向移动 + 淡出 + 缩放)
- 碰撞动画(射到阻挡物前 → 变红抖动 → 返回原位)
- 6 个可通关关卡,逐关解锁
- 计时、得分、三星评价
- 进度保存(progress.json)
- 音乐开关和音量调节
- 退出确认弹窗
特色
- 每个箭头颜色不同(8 色循环分配)
- 格子悬停时高亮
- 碰撞反馈精确到"真正碰到阻挡物才变红"
**PSP 表格: **
| 任务 | 预估耗时(小时) | 实际耗时(小时) | 差异(小时) |
| ------------- | -------- | -------- | ------ |
| 需求分析与游戏设计 | 2 | 1 | 1 |
| Python 与图形库学习 | 0.5 | 0.5 | 0 |
| 游戏界面实现 | 0.5 | 0.5 | 0 |
| 路径与碰撞逻辑实现 | 0.5 | 0.2 | 0.3 |
| 关卡设计 | 2 | 2 | 0 |
| AIGC 辅助开发 | 3 | 4 | 1 |
| 测试与修改 | 3 | 2 | 1 |
| README 与博客撰写 | 1 | 1.5 | 0.5 |
| 合计 | 12.5 | 11.7 | 0.8 |
AIGC使用:
| 子任务 | 借助何种 AIGC 技术 | AI 实现或提供了什么 | 效果如何 | 人工修改 |
| ---- | ------------ | ----------- | --------- | --------- |
| 路径检测 | deepseek | 生成四个方向的检测代码 | 各个方向的箭头都无法飞出 | 修改条件后正常 |
| 关卡设计 | deepseek | 生成关卡数组 | 存在无法通关的布局 | 试玩验证并手动调整 |
| 碰撞动画 | deepseek | 补全箭头晃动代码 | 基本可用 | 调整动画速度 |
心得体会: 总结 AI 带来的帮助、出现的问题以及自己的收获。
测试
| 编号 | 测试内容 | 预期结果 | 实际结果 |
| ---- | --------------- | -------------- | |
| T01 | 点击前方无阻挡的箭头 | 箭头飞出棋盘并消失 | 箭头飞出方向与实际指向方向相反,修改后正常 |
| T02 | 点击前方有阻挡的箭头 | 箭头不消失,失误次数减 1 | 正常 |
| T03 | 点击位于边缘且朝向棋盘外的箭头 | 箭头正常消失,不发生越界错误 | 正常 |
| T04 | 消除本关全部箭头 | 显示通关并进入下一关 | 正常 |
| T05 | 失误次数耗尽 | 显示失败并允许重新开始 | 正常 |
| T06 | 游戏进行中重新开始 | 箭头布局和失误次数恢复 | 正常 |
| T07 | 关卡是否有解 | 关卡可以完成 | 关卡无法完成 |
扩展功能
】更多关卡或关卡选择;
得分、计时或星级评价;
提示功能;




浙公网安备 33010602011771号