的贪吃蛇游戏。
本次设计的系统环境及工具如下:
运行环境:windows xp
编程语言:Java
使用工具:JBuilder 2005
分析与设计
2.1 游戏处理流程
本次游戏设计的处理流程如图1所示。
2.2需求分析
2.2.1 用户的特点
游戏开发成功后,最终用户为各个年龄段的人群,用户范围相当广泛。本游戏友好的用户界面,简单易学的按钮操作以及简单通俗的游戏规则,使广大的用户不需要专门进行培训,就可以立即学会如何使用。
2.2.2 功能需求
2.2.2.1 游戏主界面模块需求
游戏界面主框架主要包括游戏图形区域界面、游戏开始按钮、游戏暂停按钮、关闭按钮。
2.2.2.2 游戏图形区域界面的需求
游戏画布区主要应该包括游戏画布中贪吃蛇随机出现的位置,贪吃蛇重新出现的位置,事物随机出现的位置。
2.2.3 属性需求
在可使用性方面,要求各个功能实现简单,操作方便,系统处理正确;整个系统恢复性能好,连接速度快,以确保系统可使用性好。
另外,还要求系统的可扩展性、可维护性、可移植性良好。
2.3 功能模块设计
软件开发过程中的功能模块设计,主要解决实现该游戏需求的程序模块设计问题。包括如何把该游戏划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及模块结构的设计等。
2.3.1 游戏功能
本系统主要完成以下几方面的功能:
1. 游戏控制功能--包括游戏的开始、暂停、退出
2. 界面布局
3. 其他辅助功能
2.3.2 总设计模块的划分
根据游戏需求中游戏所要实现的功能,整个游戏分为二个模块进行具体的设计,如图2所示。
2.3.3 游戏主界面模块
游戏界面主框架主要包括游戏图形区域界面、游戏的开始按钮、暂停按钮、游戏的退出按钮。
游戏界面主框架的主要结构图如图3所示。
2.3.4 游戏控制模块
游戏控制模块主要通过主界面上的按钮来控制游戏的开始、游戏的暂停、游戏的退出这三个功能以及控制游戏分数变化。在这个模块中,需要给各个按钮或文本框加入代码,来对上述的功能加以进一步的实现。
游戏控制模块的主要框架如图4所示。
* 游戏开始控制:单击"游戏开始"按钮,游戏画布即有移动的贪吃蛇出现,游戏正式开始。
* 游戏暂停控制:单击"暂停游戏"按钮,游戏暂停;再单击,游戏继续。
* 游戏退出控制:单击"退出游戏"按钮,退出该游戏。
2.3.5 类模块设计
2.3.5.1类模块之间关系
通过对功能要求的分析,将贪吃蛇游戏功能划分为6个类模块,他们的关系如图5所示。
2.3.6 各类模块设计概要
* SnakeApp类
该类包含main方法,为应用程序的主类。该类用来创建游戏的用户界面,整个程序从该类的main方法开始执行。
* SnakeFrame类
用来设计游戏的用户界面。
* SnakePanel类
设置游戏运行状态,设置蛇头颜色,背景颜色,随机块颜色,移动以及分数更新,实现上下左右移动的方法接口。
* SnakeModel类
设置初始化蛇的形状和运行方向,设置随机块的位置,判断游戏是否出界,以及出界后的处理,设置方向的更新。
* ArrayIndex类
用来得到坐标,设置坐标以及判断运行方向相同或相反。
* ArrayIndexReadOnly类
用来得到坐标,以及判断运行方向相同或相反。
* Listener类
用来控制游戏的速度
2.3.7 游戏图形界面的图形显示更新功能
游戏的图形区域界面主要是一个图形显示更新区域,主要包括随机食物的显示更新、进行中和游戏结束时的分数更新和游戏图形区域界面的清除。
游戏图形区域又很多小方格组成,主要是一个表格,根据相应格子的设置标志来显示相应的图形图片,这样就实现了贪吃蛇的实时显示。
2.3.8 贪吃蛇蛇身的设计
在贪吃蛇游戏中,具体的蛇身图形的设计是比较重要的一个方面。因为贪吃蛇游戏中主要的游