毕业论文基于Android手机操作系统的植物大战僵尸游戏设计15839.doc
《毕业论文基于Android手机操作系统的植物大战僵尸游戏设计15839.doc》由会员分享,可在线阅读,更多相关《毕业论文基于Android手机操作系统的植物大战僵尸游戏设计15839.doc(31页珍藏版)》请在三一办公上搜索。
1、摘 要手机游戏,顾名思义就是指在手机上运行的游戏软件。目前用来编写手机程序使用最多的是 Java 语言。随着科技的发展,手机的硬件更新速度越来越快,功能也越来越强大。现在的手机游戏具有很强的娱乐性和交互性的复杂形态。安卓版本的游戏有三大优势。第一:技术优势。一方面是其稳定性,现在已有公认最稳定版本的操作系统Gingerbread。另一方面是程序员技术入门快,特别是对有一定java语言基础的人来说。第二:Android手机操作系统的市场优势:Android系统在诞生短短的3年时间就占据全球智能机市场48%的份额,跃居全球第一,至今仍是当今主流的手机操作系统。第三:开发周期短,这是一个很大的优势。
2、游戏采用面向对象的方法进行设计,在对象设计过程中将程序中各种事物都看成是对象,复杂的对象可以由比较简单的对象以某种方式组合而成。把对象划分为对象类,为他们定义数据与方法。建立子类与父类的结构关系。创建游戏的实现方法,需要使用到SurfaceView游戏框架,它主要是用来开发复杂的游戏,在要求程序执行效率很高时,例如对速度要求很高,还可以使用双缓冲来显示。关键词:手机 安卓 Java语言 面向对象 AbstractNowadays, Java language is prevalent in writing cell phone programs. With the booming of sci
3、ence and technology, the hardware updated speed of cell phone is becoming faster and faster, meanwhile, the function of it is becoming stronger and stronger. Today, mobile game has extreme complex forms which mix entertainment with interaction.The Android version has three advantages, firstly, for i
4、ts technical advantage. For one thing, it is stable, it is widely acknowledged that Gingerbread is the most stable operating system. For another, programmer can operate easily, especially for those who have some basic knowledge of Java language. Secondly, for its market superiority. It has accounted
5、 for 48% in the global smart phones market shares just in three years since its birth, ranking No.1 in the world; it is still the leading mobile operating system. Thirdly, for its short development cycle, it is the biggest strength.Mobile game employs the way of object-orientation to design. It rega
6、rds everything in procedure as objects during the design process. Complex objects can be assembled by some kind of way through simple objects. The objects can be divided into object class, defining data and methods and building the structural relationship between subclass and superclass.The realizat
7、ion method of setting up games need use SurfaceView framework game, which mostly develop complex games. It can be showed by double buffering when the efficiency of the program requires high.Keywords: Oell phone Android Java language Object-orientation目 录第1章 绪论11.1 手机游戏行业概述11.2 开发工具的介绍11.2.1 Eclipse1
8、1.2.2 ADT11.2.3 Android SDK11.2.4 Fireworks21.3 技术介绍21.3.1 SurfaceView21.3.2 双缓存2第2章 需求分析32.1 项目概述32.2 项目概述32.2.1 常规模式32.2.2 夜晚模式32.2.3 无尽模式42.2.4 游戏设置42.2.5 关卡选择42.2.6 查看帮助5第3章 概要设计63.1 游戏设计63.1.1 游戏背景63.1.2 游戏逻辑63.1.3 僵尸作战单位63.1.4 植物作战单位63.1.5 每关进攻的僵尸及可以种植的植物说明63.1.6 关卡说明73.1.7 碰撞逻辑说明73.1.8 状态播放规则
9、73.2 软件架构73.3 软件功能结构图83.4 软件具体功能模块基本介绍83.4.1 主要模块选择功能83.4.2 游戏声音开关功能83.4.3 模式选择功能93.4.4 关卡选择功能93.4.5 查看帮助功能9第4章 界面设计104.1 结构设计104.2 交互设计104.3 视觉设计10第5章 详细设计与实现125.1 搭建游戏基本骨架125.1.1 SurfaceView框架125.1.2 Welcome类135.1.3 Menu类135.1.4 Option类135.1.5 Help类135.1.6 Select类135.2 游戏model包145.2.1 TouchAble接口1
10、45.2.2 Plant接口145.2.3 BaseModel类155.2.4 Config类155.3 游戏具体实现及相关的实体类155.3.1 太阳花种植及产生阳光实现155.3.2 豌豆射手种植及射击实现185.3.3 生成僵尸的实现185.3.4 游戏大管家185.3.5 根据有无僵尸判断是否射击215.3.6 过关奖励215.3.7 游戏失败215.3.8 游戏胜利225.3.9 无尽模式225.3.10 僵尸碰到植物停止当吃掉植物后继续前进225.4 调试235.4.1 吃掉植物后僵尸不前进235.4.2 僵尸生命值丢失异常235.4.3 concurrentModificatio
11、nexcEption异常235.4.4 游戏正常结束后重新进入游戏直接失败235.4.5 Bitmap size exceeds VM budget异常245.4.6 不显示奖励24总结25致谢26参考文献27第1章 绪论1.1 手机游戏行业概述手机游戏,顾名思义就是指在手机上运行的游戏软件。目前用来编写手机程序使用最多的是 JAVA 语言。随着科技的发展,现在手机的硬件更新速度越来越快,功能也越来越强大。而现在的手机游戏也不是当初八九十年代风靡全球的那些依托于掌上游戏机的“俄罗斯方块”、“贪吃蛇”等画面简陋,规则简单的游戏,进而发展到了可以和掌上游戏机媲美,具有很强的娱乐性和交互性的复杂形态
12、了。作为运行在手持移动终端设备上的应用程序,手机的硬件特征决定了手机游戏的特点:首先是其庞大的潜在用户群,据统计全球在使用的移动电话已经超过 10 亿部,而且这个数字每天都在不断增加。在除美国之外的各个发达国家,手机用户都比计算机用户多。手机游戏潜在的市场比其他任何平台都要大。其次是其便携性,在控制台游戏时代,掌上游戏机热销的一个原因就是便携性人们可以随时随地沉浸在自己喜欢的游戏中。和游戏控制台或者PC 相比,手机虽然可能不是一个专业的游戏设备, 但毕竟人们总是随时随身携带,这样手机游戏很可能成为人们消遣时间的首选。更重要的是其支持网络,由于手机是网络设备,在一定限制因素下可以实现多人在线游戏
13、。为什么要开发ANDROID版本的游戏。一是源于其技术优势:一方面是其稳定性,现在已有公认最稳定版本ANDROID 2.3操作系统GINGERBREAD (姜饼)。另一方面是程序员技术入门快,对有一定JAVA语言基础的人来说,学习和掌握ANDROID开发技术非常快。二是源于ANDROID手机操作系统的市场优势:自GOOGLE在2008年9月正式发布ANDROID 1.0系统以来,ANDROID系统在短短的3年时间就占据全球智能机市场48%的份额,并在亚太地区市场占据统治地位,终结了SYMBIAN(塞班系统)的霸主地位,跃居全球第一,至今仍是当今主流的手机操作系统。更需要特别说明的一点:开发周期
14、短,是一个很大的优势。熟悉手机游戏市场的人都知道,手机游戏形式更新换代的周期很短,如果一旦错过了最佳发布时间,即使开发出来的产品再好,也只能成为废品。1.2 开发工具的介绍开发此款游戏主要使用到的工具有四种:ECLIPSE,是一个开放源代码的、基于JAVA的可扩展开发平台;ADT,是ECLIPSE平台下用来开发ANDROID应用程序的插件;ANDROID SDK,是ANDROID专属的软件开发工具包; FIREWORKS,是ADOBE推出的一款图形编辑软件。1.2.1 ECLIPSEECLIPSE是著名的跨平台的自由集成开发环境(IDE)。其本身只是一个框架平台,但是众多插件的支持使得ECLI
15、PSE拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以ECLIPSE为框架开发自己的IDE,因此得到了众多组织定力支持。1.2.2 ADT这是Eclipse插件,作用是关联Android SDK,使Eclipse能够新建Android工程。1.2.3 ANDROID SDKANDROID SDK全称为ANDROID SOFTWARE DEVELOPMENT KIT,它提供了在WINDOWS/LINUX/MAC平台上开发ANDROID应用的开发组件。包含了在ANDROID平台上开发移动应用程序的各种工具集,主要是由以下5个部分组成:ANDRIOD模拟器(AVDMANAGER.E
16、XE):运行在计算机上的虚拟移动模拟器,可以使用模拟器来在一个实际的ANDROID运行环境下设计,调试和测试应用程序。调试监视服务(DDMS.BAT):它集成在DALVIK(ANDROID平台虚拟机)中,用于管理运行在模拟器或设备上的进程,并协助进行调试。可以用它来去除进程,选择一个特定程序来调试,生成跟踪数据,查看堆和线程数据,对模拟器或设备进行屏幕快照等。ANDROID调试(ADB.EXE):它用于向模拟器或手机设备安装应用程序的APK文件和从命令行访问模拟器或手机设备.也可以用于将标准的调试器连接到运行在ANDROID模拟器或手设备上的应用代码。SQLITE3数据库(SQLIT3(SQL
17、ITE3.EXE):ANDROID应用程序可以创建和使用SQLITE数据文件,开发者和使用者也可以方便的访问这些数据文件创建SD卡工具(MKSDCARD(MKSDCARD.EXE)1.2.4 FIREWORKSFireworks是Macromedia公司发布的一款专为网络图形设计的图形编辑软件,它大大简化了网络图形设计的工作难度,无论是专业设计家还是业余爱好者,使用Fireworks都不仅可以轻松地制作出十分动感的GIF动画,还可以轻易地完成大图切割、动态按钮、动态翻转图等。1.3 技术介绍 该设计主要使用了SurfaceView游戏框架,采用双缓存技术避免屏幕出现闪烁。1.3.1 SURFA
18、CEVIEWSurfaceView可以直接从内存或者DMA等硬件接口取得图像数据,是个非常重要的绘图容器。它的特性是:可以在主线程之外的线程中向屏幕绘图上。这样可以避免画图任务繁重的时候造成主线程阻塞,从而提高了程序的反应速度。在游戏开发中多用到SurfaceView,游戏中的背景、人物、动画等等尽量在画布Canvas中画出。1.3.2 双缓存窗体在刷新时,总要有一个擦除原来图象的过程,它利用背景色填充窗体绘图区,然后再调用新的绘图代码进行重绘,这样一擦一写造成了图象颜色的反差,造成闪烁。闪烁是图形编程的一个常见问题。需要多重复杂绘制操作的图形操作会导致呈现的图像闪烁或具有其他不可接受的外观。
19、当数据量很大时,绘图可能需要几秒钟甚至更长的时间,闪烁现象会更加严重,为了解决这些问题,可采用双缓冲技术来绘图。 第2章 需求分析2.1 项目概述 本项目分为五个主要部分:常规、夜晚、无尽三个模式进行游戏,和游戏设置与查看帮助。用例图如图2.1。图 2.1 系统用例图2.2 项目概述2.2.1 常规模式此部分主要实现玩家在游戏背景为白天的情况下玩游戏。该部分具体情况如表2.1。表 2.1 常规模式用例名称常规模式功能简述在常规模式下进行游戏前置条件玩家进入游戏后置条件进入常规模式开始游戏基本流1、 点击主菜单页面“常规模式”按钮,进入常规模式开始游戏2、 点击“返回”按钮,用例终止2.2.2
20、夜晚模式此部分主要实现玩家在游戏背景为夜晚的情况下玩游戏。该部分具体情况如表2.2。表 2.2 夜晚模式用例名称夜晚模式功能简述在夜晚模式下进行游戏前置条件玩家进入游戏后置条件进入夜晚模式开始游戏基本流1、 点击主菜单页面“夜晚模式”按钮,进入夜晚模式开始游戏2、 点击“菜单”按钮游戏暂停并进入主菜单3、 点击“夜晚模式”回到游戏4、 点击“返回”按钮,用例终止2.2.3 无尽模式此部分主要实现游戏玩家在常规或者夜晚模式通关的情况下玩游戏。该部分具体情况如表2.3。表 2.3 无尽模式用例名称无尽模式功能简述在无尽模式下进行游戏前置条件玩家在常规或者夜晚模式通关后置条件进入常规模式开始游戏基本
21、流1、 点击主菜单页面“无尽模式”按钮,进入无尽模式开始游戏2、 点击“菜单”按钮游戏暂停并进入主菜单3、 点击“无尽模式”回到游戏4、 点击“返回”按钮,用例终止2.2.4 游戏设置此部分主要实现对游戏背景音乐、效果音的开启和关闭。该部分具体情况如表2.4。表 2.4 无尽模式用例名称游戏设置功能简述打开、关闭游戏背景音乐或者效果音前置条件想要对游戏进行设置后置条件游戏属性改变基本流1、 点击主菜单页面“选项”按钮,进入“游戏设置”界面2、 在游戏设置界面中,根据需要进行设置3、 设置之后自动返回主菜单或者不设置点击“返回”按钮,用例终止2.2.5 关卡选择此部分主要实现玩家根据自己喜好选择
22、在哪个游戏关卡下玩游戏。但是不能选择没有通过的关卡。2.2.6 查看帮助此部分主要实现游戏玩家查看帮助。第3章 概要设计3.1 游戏设计3.1.1 游戏背景人类与僵尸之间的仇恨由来已久,为了争夺生存空间,僵尸一有机会就向人类发起攻击。但是人类也不会束手就擒,他们培养出了可以对僵尸造成伤害的植物,当僵尸进攻时这些植物就是人类捍卫家园的武器。3.1.2 游戏逻辑(1)僵尸是进攻方,人类通过种植培育出的各种进攻,防御型植物来抵抗僵尸的进攻。想要植物成长来攻击,防御僵尸需要相应的阳光值。(2)不同的关卡中,供选择的植物不同,僵尸进攻的单位也不同。例如第一关只有普通僵尸进攻,第二关就会出现两种僵尸。(3
23、)在交战区,玩家要种植进攻,防御单位是需要植物的,所以还需要种植产生阳光的生产单位。(4)每关都有相应的敌人数量,全部消灭之后过关。如果有敌人穿过交战区域到达人类后方,则判定游戏失败。3.1.3 僵尸作战单位(1)普通僵尸。移动速度1px/帧,生命值3,吃掉植物需要3s。(2)戴帽子僵尸。移动速度1px/帧,生命值4,吃掉植物需要3s。(3)戴铁桶僵尸。移动速度1px/帧,生命值5,吃掉植物需要3s。(4)运动员僵尸。移动速度2px/帧,生命值3,吃掉植物需要3s。(5)佩戴铁网僵尸。移动速度1px/帧,生命值6,吃掉植物需要3s。3.1.4 植物作战单位(1)向日葵。消耗阳光值50,能够生产
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 基于 Android 手机 操作系统 植物 大战 僵尸 游戏 设计 15839
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-2394286.html