贪吃蛇设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
贪吃蛇
设计说明书
开发小组成员:
目录
1.需求陈述 (3)
2.软件结构 (3)
2.1用例图 (3)
2.2类图 (4)
2.3状态图---------------------------------------------------------------4 3.程序描述 (4)
3.1功能 (5)
3.2性能 (5)
3.3输入项目 (5)
3.4输出项目 (6)
3.5算法 (6)
3.6程序逻辑 (6)
4.测试要点-----------------------------------------7
5.对象设计-------------------------------------------------------------------7
1.需求陈述
1.用户需要开发一款命名为贪吃蛇的休闲小游戏
2.开始游戏时,存在一条向右运动的小蛇和蛇需要吃掉的豆
3.用户通过键盘的“上下左右”键控制小蛇分别向“上下左右”运动来吃
掉豆,同时增加自身的长度
4.小蛇吃掉游戏规定数量的豆后,游戏结束
5.游戏分为初级、中级、高级
6.小蛇不能碰到边界
7.小蛇自身不能碰撞
8.游戏可以暂停和重新开始
9.游戏完成后计算所得分数
10.游戏在任何时候都可以退出
2.软件结构
1.用例图
2.类图
3.状态图
3.程序描述
3.1功能
小蛇可以通过方向键进行方向的变化。屏幕上随机的出现豆,贪吃蛇在运动的过程中蛇头可以吃掉出现的的豆。吃掉豆后,蛇的身体会增长一
节。当蛇的身体碰到四周的墙壁或者是自己的身体时,游戏会结束。并且,在屏幕的上方有一个分数牌显示,游戏开始时分数为0,每当蛇吃掉一个豆,分数会增加10分。而在游戏的过程中,玩家可以按菜单上的退出键或点击界面的关闭按钮退出游戏。
3.2性能
本款游戏在界面设计上清晰明了、美观大方;在操作上简单、易懂。有效率高,不易出错的优点。
本游戏着重于娱乐大众,并且有锻炼反应速度的特点。
3.3输入项目
1)用户在界面菜单的操作有点击“开始”、“暂停”、“结束”、“重新
开始”、“初级”、“中级”、“高级”。
2)键盘输入有“上下左右”键。
3.4输出项目
输出有:分数,小蛇长度增加,豆
3.5算法
1.小蛇根据键盘输入触发相应事件:
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
int k;
k = e.KeyValue;
if (k == 37) //左
floor.S.TurnDirection(3);
else if (k == 40) //下
floor.S.TurnDirection(2);
else if (k == 38) //上
floor.S.TurnDirection(0);
else if (k == 39) //右
floor.S.TurnDirection(1);
else if (k == 103 || k == 71)//按下G(g)
timer1.Enabled = false; //小蛇停止运动
else if (k == 72 || k == 104) //按下H(h)
timer1.Enabled = true; //小蛇继续运动
}
2. 键盘输入作为值传递给相应函数,来控制小蛇运动方向:
public void TurnDirection(int pDirection) //蛇的转向方法,参数为蛇要改变方向 {
switch (direction)
{
case 0: //原来向上
if (pDirection == 3) //如果改变方向为左
direction = 3;
else if (pDirection == 1) //如果改变方向为右
direction = 1;
break;
case 1:
if (pDirection == 2)
direction = 2;
else if (pDirection == 0) direction = 0;
break;
case 2:
if (pDirection == 3)
direction = 3;
else if (pDirection == 1) direction = 1;
break;
case 3:
if (pDirection == 2)
direction = 2;
else if (pDirection == 0) direction = 0;
break;
}
}
3.6程序逻辑
4.测试要点
1)看游戏是否能正常运行
2)游戏开始后,按除过“上下左右”键的其他键,会出现什么情况3)小蛇超出界面时,是否会结束游戏
4)按“上下左右”键是否会按设想运行
5)对最小化,最大化、变小和关闭按钮进行逐个测试
5.对象设计
1、类:蛇
对象:每一个长度不断更新的蛇