




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计思路1.2.3.1.Java编写贪吃蛇游戏思路需求分析:游戏以经典贪吃蛇默认规则设计需要蛇能够按照给定的方向 每隔一段时间自动移动;方向键“ T ”、 “ J ”、“一”、“一”能够控制蛇移动的方向,蛇每吃到一个食 物后身体长度增加一格,原有食物消失,再随机生成一个 不再石头上的新食物;石头即为地图,蛇吃到石头后游戏 结束。为了使游戏更加具备娱乐性和挑战性,增设关卡,随着关卡 级别的升高,蛇移动速度加快,蛇吃到食物的难度加大, 吃到一定数量的食物即可过关进入下一个关卡;为蛇吃到 食物后添加声音效果,增设背景音乐,能够控制背景音乐 的开关;为了区别与经典模式的不同,游戏增加新的规则模式,
2、新的 模式规则中,初始化的蛇长度一定,蛇吃到食物后,食物 随机产生一个新的食物,原来的食物经过蛇的消化后变为 石头固定在原处不能移动。设计思路:首先考虑所需要的总体框架贪吃蛇游戏主题应为蛇,需要创立蛇这个类命名为Snake,还要有食物类命名为 Food,石头类命名为 Stone,显示面 板类命名为DisplayPanel,逻辑处理类命名为 Logic以及主函数类命名为MainOfGreedySnake。2 .搭建类与类之间的关系蛇吃食物,食物在被蛇吃到后随机产生新的食物,食物不能在石头上生成,关系复杂,我们能够将这些关系在逻辑 处理类Logic中搭建,这样即降低了上面三个类之间的耦合 性,又方
3、便以后对辅助功能的添加。蛇,食物,石头需要在显示面板中显示出来,而三者又在逻辑处理这个类Logic中做逻辑关系运算,我们可创立自己的显示面板类 DisplayPanel,用逻辑处理类 Logic创立对象 作为参数传递给显示面板,使得蛇,食物,石头以及显示 面板直接的关系更加简单。3 .添加简单的测试功能首先需要创立主函数,主函数中创立逻辑处理类Logic的实例对象,创立自定义的显示面板对象DisplayPanel,将逻辑处理类Logic的实例对象作为参数传递给显示面板 DisplayPanel的实例对象中,显示面板需要寄托在 Frame框 架上,这就需要在主函数中创立一个JFrame对象,然后
4、将自定义的显示面板添加到JFrame对象上。接着是在每个类中添加一个测试用的功能函数,简单的打印一条输出语句,在蛇类Snake中,创立一个功能函数打印“蛇类被加载”,食物类,石头类,逻辑处理类,显示 面板类中添加同样的功能,在逻辑处理类中定义蛇,食物,石头对象,创立构造函数参数传入蛇,食物,石头类型的对象;自定义的显示面板继承JPanel类,定义逻辑处理类的对象,创立构造函数传入逻辑处理类的对象。经过调用类中的功能函数来测试,确保她们之间已经建立联系。4 .类中填充功能及参数首先分析蛇:没移触市的蛇Z1墙加 -个星巴 图 2-4.1我们把显示面板划分为格子,每个单位的蛇身占一个格子,食物,石头
5、同样,经过抽取定义一个格子类命名为 Square;蛇的身体由多个格子组成,需要一个链表集合存储,定义一个 LinkedList类型的集合命名为 snakeBody,存储类型为格子类型Square的对象;蛇有一个长度,定义一个int型的变量Length存储长度,定义一个 int型的 direction变量控制蛇移动的方向;定义一个 boolean类型 的变量iseatfood ,来标识蛇是否吃到食物;定义一个boolean类型的变量iseatstone来标识蛇是否吃到石头;蛇的功能有移动功能,创立功能函数move (),关于蛇移动,我们能够让存储蛇身体的集合snakeBody添加一个蛇头,去掉一个尾巴来实现,蛇头添加的位置又应该由蛇移动的方向控制,因此在添加蛇头之前应该判断蛇头的方向,如果蛇向上移动,direction应为1,我们让改变之前的snakeBody调用addFirst ()功能添加蛇头,里面的参数应为改变之前的蛇头的纵坐标减一个格子,向下,向左,向右原理相同。蛇已更改具有改变方向的功能,以便于后面控制蛇移 动的时候改变方向,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国银行2025滨州市秋招笔试英语题专练及答案
- 交通银行2025山南市秋招笔试专业知识题专练及答案
- 工商银行2025西安市秋招笔试EPI能力测试题专练及答案
- 建设银行2025驻马店市秋招半结构化面试题库及参考答案
- 2025行业数字化转型成功案例研究
- 工商银行2025吉林市结构化面试15问及话术
- 邮储银行2025海西蒙古族藏族自治州秋招结构化面试经典题及参考答案
- 有色金属中间产品供需服务合同2篇
- 建设银行2025神农架林区秋招笔试综合模拟题库及答案
- 邮储银行2025毕节市金融科技岗笔试题及答案
- 血友病课件完整版
- 神经系统的分级调节课件 【知识精讲+备课精研+高效课堂】 高二上学期生物人教版选择性必修1
- 三年级上册数学试卷-第一单元 混合运算 北师大版 (含答案)
- 临床职业素养
- 种子学-种子的化学成分课件
- 教学课件-英语学术论文写作(第二版)
- 手术室无菌技术 课件
- ISO 31000-2018 风险管理标准-中文版
- 六年级数学上册教案6:分数乘法:分数乘小数-人教版
- 小学综合实践六年级上册第1单元《考察探究》教材分析及全部教案
- 教育评价学全套ppt课件完整版教学教程
评论
0/150
提交评论