需求分析
用 C 语言编写一个简单的黄金矿工游戏。开始时随机生成一定数量的大金矿,小金块,或者钻石,需要完成一个在倒计时条件下,通过鼠标点击或者空格键盘抓取物体来得到分数,进而通关。
功能需求
基本功能:启动游戏后绘制游戏窗口,然后弹出输入框要求用户输入用户名。点击开始按钮进入游戏状态,此时游戏未开始运行。点击 start 使游戏运行,点击 stop 使游戏暂停,再次点击stop 游戏运行。
拓展功能:关卡的设置以及无限关卡数 / 玩家姓名、目前得分、最高分展示 / 随机生成矿物的种类和位置 / 可以鼠标在游戏区点击来发射钩爪 / 插入了音乐 / 点击 Exit 游戏退回开始界面,再次点击开始则继续上次关卡数 / 通关后可选择进入下一关或者返回游戏开始界面,通关失败会显示继续或者返回游戏开始界面游戏中也可以返回游戏开始界面 / 准确的倒计时功能,暂停时倒计时便会暂停。
数据需求
输入数据:开始阶段用户输入的用户名 / 用户的键盘按键信息,期间用户是否输入方向键 / 用户的鼠标信息,用户的右键在哪里点击
输出结果:用户是否通关
游戏的图像界面中间数据: 用户当前得分、倒计时、关卡数、钩爪的角度、钩爪收回的速度、钩爪的状态、钩爪的位置、是否抓取到物体、物体的存在状态
界面需求
登录界面:需要输入用户名,然后点击开始按钮。
游戏界面: 1. 主界面分为三个区域:游戏区、按钮区和信息显示区。 2. 按钮区应包括游戏主要按钮。如开始、暂停、退出等 3. 信息显示区显示玩家名、目标得分、历史最高得分、目前的得分、倒计时。整体颜色为黄色,按钮区背景颜色取RGB(255, 185, 15)。
通关成功界面:
通关失败界面
用户手册
用户手册是面向使用该应用程序的用户编写的,因此,应该将用户需要知道的所有内容用简练、清晰的语言描述清楚。下面是用户文档应该包含的主要内容:
- 应用程序功能的详细说明:可以操纵钩爪伸长来抓取物块并获得分数,带有倒计时功能,带有无数的关卡生成
- 应用程序运行环境的要求:Windows
- 应用程序的安装与启动方法:双击文件中 exe 程序执行
- 程序的界面、交互方式和操作方法:打开程序输入用户名,点击开始,进入游戏主界面,点击 start 开始游戏,点击 stop暂停,再次点击开启,点击 exit 退出。若通关成功,exit 退出,右侧按钮继续下一关;若通关失败,again 再次挑战,exit 退出。
- 输入数据类型、格式和内容限制:鼠标信息:MOUSEMSG m / m.uMsg == WM_LBUTTONDOW / 键盘信息:char input = _getch() / 用户信息:char s;
- 在应用程序运行中,用户需要使用的交互命令名称、功能和格式的详细说明:单击空格:钩爪伸长 / 游戏区单击鼠标右键:钩爪伸 / 按钮中单击鼠标右键:执行对应按钮功能
程序结构
模块调用图:
主程序流程图:
测试用例