网站大量收购独家精品文档,联系QQ:2885784924

《贪吃蛇游戏概要设计说明书.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《贪吃蛇游戏概要设计说明书

概要设计说明书 1. 引言 1.1 编写目的 在分析《贪吃蛇游戏的需求分析说明》的基础上,我们对该系统做了概要设计,主要是基于以下目的编写此说明书: 1.对系统概要设计的的阶段任务成果形成文档,以便阶段验收、评审,最终的阶段验收。 2.对需求阶段的文档再次确认过程,对前一阶段的需求不充分的地方或者有错误的地方进行修改。 3.明确整个系统的功能框架和数据结构,为下一阶段的详细设计、编码、测试提供参考依据。 4.明确编码规范和命名规范,统一程序界面。 预期读者:详细设计人员、概要设计评审小组、研究院领导。 1.2 背景 系统名称:贪吃蛇游戏 任务提出者:手机策划人员 开发者:技术人员 用户:NOKIA手机用户 运行该软件机器:NOKIA手机 定义 节: 一条蛇可以看成由许多正方形的“小格子”拼凑成,称作节。节是蛇身上最小的单位。 链表: 用来保存每一段的状态,链表的元素单位是节。且链表的第一个元素表示蛇的头部。 坐标系: 以左上角那点为(0,0),向右则x递增,向下则y递增。 参考资料 张海藩:《软件工程导论》第五版 清华大学出版社 肖刚等:《实用软件文档写作》 2 总体设计 2.1 需求规定 2.1.1输入、输出 输入:操作选择、级别 输出:时间、分数 2.1.2 功能要求 本设计所开发的是基于Java的一个贪吃蛇游戏软件,主要实现游戏的开始、暂停、退出等功能,分为:游戏主界面模块、游戏控制模块两个模块。 2.1.3 性能要求 本游戏在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。 游戏主界面应该力求美观,赏心悦目。游戏控制模块应做到易懂、易操作,而且准确率高,不易出错。 2.2 运行环境 本次设计的系统环境及工具: 运行环境:WindowsXP 编程语言:Java 使用工具:Eclipse 基本设计概念和处理流程 2.3.1基本设计概念如下: 程序关键在于表示蛇的图形及蛇的移动。用一个小矩形快表示蛇的一节身体,身体每长一节,增加一个矩形块。移动时必须从蛇头开始,所以蛇不能向相反的方向移动,如果不按任意键,蛇自行在当前方向上前移,但按下有效方向键后,蛇头朝着该方向移动,一步移动一节身体,所以按下有效方向键后,先确定蛇头的位置,而后蛇的身体随蛇头移动,图形的实现是从蛇头新位置开始画出蛇,。。 2.4 结构 Ground类: private int TYPE; public int[][] rocks=new int[Global.WIDTH][Global.HEIGHT]; public void setGround(int type){} public boolean isSnakeEatRock(Snake snake){} public Point getPoint(){} public void drawMe(Graphics g){} 功能:根据不同的布局类型画出不同的石头布局 Snake类: public static int x,y; private int oldDirection,newDirection; private Point oldTail; public LinkedListPoint body=new LinkedListPoint(); public void die(){} public void move(){} public void changeDirection(int direction){} public void drawMe(Graphics g){}//把属于蛇的格子画出来 private class SnakeDriver implements Runnable{}//蛇不停走动 功能:根据有效方向键改变坐标值,实现蛇的定时移动 Food类: public void drawMe(Graphics g){} 功能:根据生成的随机数画出食物 Controller类: 功能:处理按键时间,处理逻辑。根据不同的情况向Snake,Food,Ground发出不同的命令 GamePanel类: 功能:画出Snake,Food,Ground,并实现重新显示 2.5 功能需求与程序的关系 游戏界面主框架主要包括游戏图形主界面、开始界面。 游戏图形主界面主要包括:食物的随机位置、石头的布局、蛇的移动位置 开始界面包括:开始、继续、暂停、历史最高分、游戏说明、退出等按钮。 与程序的关系: 开始界面StartPanel画出开始、继续、暂停、历史最高分、游戏说明、退出等按钮。 游戏图形主界面GamePanel画出Snake,Ground,Food。用户在StartPanel选择按钮或者按下快捷键,Controlle

文档评论(0)

yingrong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档