- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课 程 实 训 报 告
课程名称 计算机系统综合实训
课题名称 基于Android的贪吃蛇游戏开发
湖南工程学院
课 程 实 训 任 务 书
课程名称 计算机系统综合实训
课 题 基于Android的贪吃蛇游戏开发目录
1、程序构思 2
2、程序设计 3
2.1 游戏功能 3
2.2 总设计模块的划分 4
2.3 游戏主界面模块 4
2.4 游戏控制模块 4
2.5类模块设计 4
3、程序实现 5
3.1、 游戏界面的实现 5
3.2、 游戏整个框架的构建 6
3.3、实现键盘响应事件 8
3.4、刷新 9
3.4、实现页面的切换 9
3.5、 加载游戏 9
3.6、游戏背景界面的改进 9
3.8、添加音效 10
3.9、游戏本身的完善 10
3、类模块具体设计 11
TitleView.java 11
SnakeView.java 12
4. 程序结果 14
5. 总结与展望 17
6. 附录 17
1、程序构思
贪吃蛇游戏是一款非常经典的手机游戏,贪吃蛇游戏的设计比较复杂,它涉及面广、牵涉方面多,如果不好好考虑和设计,将难以成功开发出这个游戏。在这个游戏的设计中,牵涉到图形界面的显示与更新、数据的收集与更新,并且在这个游戏的开发中,还要应用类的继承机制以及一些设计模式。因此,在设计开发过程中,需要处理好各个类之间间的逻辑依赖关系和数据通信关系。
正是因为如此,本次设计的目的在于学习Java程序设计基本技术,学习用android开发Java程序的相关技术,熟悉游戏“贪吃蛇”的需求,熟悉项目开发的完整过程。学会怎样进行一个项目的需求分析、概要设计、详细设计等软件开发过程,熟练地掌握Java程序设计的基本技术和方法,熟练地掌握android环境的使用方法,培养初步的项目分析能力和程序设计能力。
2、程序设计
游戏设计的处理流程图:
2.1 游戏功能
本系统主要完成以下几方面的功能:
游戏控制功能——包括游戏的开始、暂停、退出
界面布局
其他辅助功能(如游戏帮助,游戏积分,游戏过关等)
2.2 总设计模块的划分
游戏总设计模块划分为游戏主要界面模块、游戏控制模块和游戏菜单模块。
2.3 游戏主界面模块
游戏主界面模块主要是指游戏的框图,其包括一下内容:
1、游戏界面的边界,即游戏中的墙;
2、游戏中蛇的构成,以及苹果的构成;
3、游戏中障碍物的构成;
4、游戏中分数显示以及关卡显示。
2.4 游戏控制模块
(1)游戏开始控制:
我们的程序是使用上键开始游戏,启动游戏后会有一个初始菜单界面,我们点击“开始游戏”,弹出一句话“请按上键开始游戏”。游戏开始后蛇向下移动,然后由控制上下左右键来控制蛇的移动。 在程序中我们重新建了一个activity来控制游戏的开始,使游戏的开始界面更美观。
(2)游戏暂停控制:
我们是使用center键来控制游戏的暂停的,这是一项人性化的设计,当玩家在游戏过程中突遇紧急情况时可以按center键暂停游戏,等玩家空闲后按center键可以继续游戏。
(3)游戏退出控制:
在游戏的退出上我们的程序使用了多种方式来应对不同的情况,当玩家正在游戏中时,如想退出可以按“1”键,程序会自动跳转到初始菜单界面,在初始菜单界面点击“退出游戏”即可退出游戏。如果玩家在游戏中由于碰到墙或者咬到自己或者碰到障碍物而导致游戏结束的,游戏或自动弹出一个界面,里面有提示是继续游戏还是退出游戏,当点击“取消”时,游戏就会自动跳转到初始菜单,再点击“退出游戏”即可。
2.5类模块设计
src源码目录:
Snake.java为主界面类;
SnakeView 为贪吃蛇类的视图主要逻辑控制和绘制类;
TitleView 为界面的整体视图;
MenuActivity为菜单类,可以跳转到Help类和Snake类;
Help为游戏帮助类。
3、程序实现
3.1、 游戏界面的实现
1、先声明用来存放绘画图像的X,Y轴的位置的数组:
private?int[][]?mTileGrid;
2、编写存放图片索引用图片的X,Y轴位置;
public?void?setTile(int?tileindex,?int?x,?int?y)
{?mTileGrid[x][y] = tileindex; }
3. 把图片素材加入到bitmap中
public void loadTile(int key, Drawable tile)
{
Bitmap bitmap =
Bitmap.createBitmap(mTileSize, mTileSize, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(b
您可能关注的文档
- 嵌入式-基于51单片机电子密码锁的设计与实现.doc
- 嵌入式-基于51单片机电子密码锁设计论文.doc
- 嵌入式-基于51单片机电子琴课程设计.doc
- 嵌入式-基于51单片机电子时钟的设计与实现(整理版).doc
- 嵌入式-基于51单片机电子时钟的设计与实现.doc
- 嵌入式-基于51单片机电子时钟设计与实现.doc
- 嵌入式-基于51单片机电子万年历的设计与开发论文.doc
- 嵌入式-基于51单片机电子万年历论文.doc
- 嵌入式-基于51单片机多功能电子钟设计().doc
- 嵌入式-基于51单片机多路温度采集控制系统设计.doc
- 本科毕设-基于Android的体系结构的设计与实现(整理版).doc
- 本科毕设-基于Android的天气与位置应用程序的设计与实现(整理版).doc
- 本科毕设-基于Android的推箱子游戏的设计与实现——毕业论文(整理版).doc
- 本科毕设-基于android的网购防沉迷系统的设计与实现(整理版).doc
- 本科毕设-基于Android的网上订餐系统的设计与实现(整理版).doc
- 本科毕设-基于android的位置闹钟的设计与实现(整理版).doc
- 本科毕设-基于Android的文本阅读器的设计与实现(整理版).doc
- 本科毕设-基于android的文件浏览器的设计与实现(整理版).doc
- 本科毕设-基于Android的文件浏览器的设计与研究(整理版).doc
- 本科毕设-基于Android的无线点餐的设计与开发.doc
最近下载
- Korn-Ferry-方案-构建成功者画像.pdf VIP
- 铭记抗战历史,弘扬爱国精神——纪念抗日战争胜利八十周年主题班会.pptx VIP
- 扣押决定书文书范本.doc VIP
- 人民大2024现代大学美育 教学课件认识美——万物皆美(第一章 美是什么)(1).pptx VIP
- 人民大2024现代大学美育 教学课件认识美——万物皆美(第二章 何为美育)(1).pptx VIP
- 项目策划培训课件.ppt VIP
- 人民大2024现代大学美育 教学课件艺术美——美美与共(第十一章造型艺术美)(陈琳、刘晓晓).pptx VIP
- 大学美育课件:中国艺术美-音乐美.pptx VIP
- 文化旅游项目策划报告.pptx VIP
- 大学美育课件:中国艺术美-绘画美.pptx VIP
文档评论(0)