首页 毕业论文 陈飞

毕业论文 陈飞

举报
开通vip

毕业论文 陈飞毕业论文 陈飞 西 南 交 通 大 学 本科毕业设计(论文) 角色扮演游戏的角色设计 年 级:2006级 学 号:20065704 姓 名:陈飞 专 业:计算机软件 指导老师:杨宁学 2010年6月 西南交通大学本科毕业设计(论文) 第II页 院 系 软件学院 专 业 计算机软件 学 号 20065704 姓 名 陈飞 题 目 角色扮演游戏角色设计 指导教师 评 语 指导教师 (签章) 评 阅 人 评 语 评 阅 人 (签章) 成 绩 答辩委员会主任 (签章) 年 月 日 西南交通...

毕业论文  陈飞
毕业 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 陈飞 西 南 交 通 大 学 本科毕业设计(论文) 角色扮演游戏的角色设计 年 级:2006级 学 号:20065704 姓 名:陈飞 专 业:计算机软件 指导老师:杨宁学 2010年6月 西南交通大学本科毕业设计(论文) 第II页 院 系 软件学院 专 业 计算机软件 学 号 20065704 姓 名 陈飞 题 目 角色扮演游戏角色设计 指导教师 评 语 指导教师 (签章) 评 阅 人 评 语 评 阅 人 (签章) 成 绩 答辩委员会主任 (签章) 年 月 日 西南交通大学本科毕业设计(论文) 第III页 毕 业 设 计 任 务 书 班级 软计4班 姓名 陈飞 学号 20065704 专业 计算机软件 发 题 日 期:20010年 2月 23日 完 成 日 期: 2010年 6月 12日 题 目 角色扮演游戏的角色设计 题目类型: 工程设计 科学实验 ?软件开发 理论研究 综合应用 一、 设计任务及要求 角色在角色扮演游戏中占据着非常重要的地位,其设计难度也比较复杂。本任务书将从角色的属性、外貌特征、装备、武器、道具和物品等方面设计角色,并结合场景等其他游戏元素,使设计的角色能够满足角色扮演游戏的需要,同时便于装配。由于在角色扮演游戏中的角色通常比较多,因此角色设计的核心问题是如何对角色进行抽象,从而建立适合游戏中各种角色的角色模型。 程序采用J2ME开发,要求结构合理、条理清晰,符合面向对象程序设计思想。 二、 应完成的硬件或软件实验 完成角色扮演游戏怪兽仙境的角色系统。给每个角色设定属性,使每个角色升级后属性能发生相应改变,战斗后生命、魔法、经验发生变化。并个每个角色设定相应的图片。 三、 应交出的设计文件及实物(包括设计论文、程序清单或磁盘、实验装置或 产品等) 毕业设计论文、英文翻译、程序清单、系统演示视频 四、 指导教师提供的设计资料 开发相关资料 五、 要求学生搜集的技术资料(指出搜集资料的技术领域) 所有角色的图片。 所有角色的属性。 西南交通大学本科毕业设计(论文) 第IV页 I2ME相关开发资料。 六、 设计进度安排 (共16周) 第一部分 收集资料 ( 2 周) 第二部分 角色特征研究 ( 1 周) 第三部分 系统设计 ( 3 周) 第四部分 系统实现 ( 5 周) 第五部分 撰写论文 ( 3 周) 评阅及答辩 评阅及答辩 ( 1 周) 指导教师: 年 月 日 室主任审查意见: 审 批 人: 年 月 日 注:设计任务书审查合格后,发到学生手上。 西南交通大学软件学院 2008年制 西南交通大学本科毕业设计(论文) 第V页 摘 要 游戏作为人们日常生活的一个重要的娱乐项目,也带动了巨大的游戏相关产业市场的发展。游戏平台从游戏机、电视游戏,到pc游戏,到手机游戏,中间经历了很多的技术的变革。随着新技术的发展和人们生活水平的提高,手机开始逐渐普及,手机以其小巧便捷,方便的特性成为人们的必备通讯工具。而基于手机平台的手机游戏也就拥有了巨大的市场空间。手机游戏也远远不是我们印象中的什么“俄罗斯方块” “贪吃蛇”之类画面简陋,规则简单的游戏,进而发展到了可以和掌上游戏机媲美,具有很强的娱乐性和交互性的复杂形态了。随着3g的开通和应用,手机游戏必将迎来新的一轮游戏热潮~你的字体格式是不是有问题,看起来很...请按照要求设置 目前用来编写手机最多的程序是Java语言,其中手机游戏多是由J2ME开发。J2ME是一种高度优化的Java运行环境,主要针对消费类电子设备,它将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。 本文首先深入研究了基于J2ME的手机角色扮演游戏的实现原理,设计实现了一个角色扮演游戏的角色系统,其中包括了角色的构建、角色图片属性的显示、碰撞检测和角色属性改变等。本文实现的角色扮演游戏的角色系统具有角色场景细腻性、交互性良好、功能较齐全等特点。与其他系统可以构建一个完整的J2ME手机RPG游戏。 西南交通大学本科毕业设计(论文) 第VI页 Abstract , 西南交通大学本科毕业设计(论文) 第VII页 目 录 第1章 绪论 ............................................................ 1 1.1手机软件现状 ...................................................................................................... 1 1.2游戏业务及J2ME概况 ....................................................................................... 1 1.3手机游戏的类型 .................................................................................................. 3 1.4, 1.5 手机游戏的前景 ................................................................................................. 4 1.6 文档组织结构 ..................................................................................................... 6 第2章 关键技术与系统平台介绍 .......................................... 7 2.1 JAVA语言 ............................................................................................................ 7 2.2 JAME技术 ........................................................................................................ 12 2.3 Eclipse平台 ...................................................................................................... 15 2.4 WTK技术 .......................................................................................................... 16 第三章 手机游戏的系统分析 ............................................. 19 3.1游戏整体系统 .................................................................................................... 19 3.2 角色系统 ......................................................................................................... 19 3.3场景系统 ............................................................................................................ 20 3.4战斗系统 ............................................................................................................ 20 3.4,编号重复 道具系统 ........................................................................................ 21 3.5任务系统 ............................................................................................................ 21 3.6 技能系统 ........................................................................................................... 22 第四章 角色系统 ....................................................... 24 4.1系统功能介绍 .................................................................................................... 24 4.2系统类图 ............................................................................................................ 24 4.3添加角色 ............................................................................................................ 25 4.3.1添加英雄角色........................................................................................... 26 4.3.2添加宠物角色........................................................................................... 28 4.3.3添加敌方角色........................................................................................... 32 4.2.4添加NPC怎么编号, ............................................................................. 32 4.4添加宠物属性 .................................................................................................... 32 4.4.1属性介绍 .................................................................................................. 33 4.4.2宠物的初始属性 ....................................................................................... 34 4.4.3显示属性值 .............................................................................................. 36 西南交通大学本科毕业设计(论文) 第VIII页 4.5宠物的升级 ........................................................................................................ 36 4.3.4敌方角色掉落的经验怎么编号的, ........................................................ 38 4.6宠物的合成 ........................................................................................................ 38 第五章 系统测试 ....................................................... 40 5.1添加英雄角色模块测试 ..................................................................................... 40 5.1.1测试需求点描述 ....................................................................................... 40 5.1.2测试报告 .................................................................................................. 41 5.2作战场景添加宠物模块测试 ............................................................................. 41 5.2.1测试需求点描述 ....................................................................................... 41 5.2.2测试报告 .................................................................................................. 41 5.3宠物升级模块测试 ............................................................................................ 42 5.3.1测试需求点描述 ....................................................................................... 42 5.2.2测试报告编号, ....................................................................................... 42 致谢 .................................................................. 45 参考文献 .............................................................. 46 西南交通大学本科毕业设计(论文) 第1页 第1章 绪论 1.1手机软件现状 全文的字体好像都有问题,请仔细检查修改 在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是传统手机存在以下弊端: 1.传统手机出厂时均由硬件厂商固化程序,程序不能增加、删除,有了错误也不能更新、修改,若要增加新功能必须另换一部手机。 2.传统手机访问互联网是通过WAP(Wireless Application Protocal),所有网络资源必须接通网络才能在线访问,非常耗时、费用亦很高。 而Java技术在无线应用方面的优势非常明显: 1.应用程序可按需下载,而不是购买由硬件商提供的套件,可升级空间大。 2.Java技术提供了一个类库,它使得应用开发商可以创建更为直觉、丰富的用户界面(GUI)。 3.Java技术使网络带宽的应用更为有效,因为应用程序可以下载到器件上,并在本地运行,仅仅是在连接到服务器时才会占用网络带宽。 基于以上分析,Java手机将是未来手机的发展方向,是业界的热点。手机游戏的盈利主要是由于它们的涉及面很广。手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级趣味的人和青少年身上,而手机游戏则每个人都可以访问的到——随时,随地(此句子欠妥,建议修改)。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限并且有利可图。对于开发者来说,将控制台游戏迁移到手机游戏工程很大因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。 1.2游戏业务及J2ME概况 虽然Java已经被用到许多企业级软体上,可是其实骨子里面还是非常适合用在嵌入式系统之中。Java平台演进到Java2后,Java平台分别针对不同领域的需求被分成四个版本,亦即J2EE、J2SE、J2ME以及JavaCard(其结构示意图见图1-1)。其中J2ME定位在消费性电子产品的应用上。这个版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。这个版本的应用层面相当广泛,会是未来Java平台发展的 西南交通大学本科毕业设计(论文) 第2页 重点项目。J2ME 在设计其规格的时候,遵循着“对各种不同的装置而造出一个单一的开发系统是没有意义的事”这个基本原则。于是 J2ME 先将所有的嵌入式装置大体上区分为两种:一种是运算功能有限、电力供应也有限的嵌入式装置(比方说PDA 、手机);另外一种则是运算能力相对较佳、在电力供应上相对比较充足的嵌入式装置 (比方说冷气机、电冰箱、电视机上盒 (set-top box)。因为这两种型态的嵌入式装置,所以Java 引入了一个叫做Configuration 的概念,把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;而另外一种装置则 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 为 Connected Device Configuration(CDC)规格。也就是说, J2ME 先把所有的嵌入式装置利用Configuration 的概念区隔成两种抽象的型态。J2ME平台被认为是最杰出的手机游戏平台,它为开发者、设备制造商、网络通信公司和消费者广泛接受。它有一些非常重要的特征对所有组织都有益。因为J2ME应用在不同设备上都是便携式的,他们常常可在网络上下载和执行。如果没有正确的防范,它则为用户和无线通信公司冒着无数个安全的风险。幸运的是,Java被设计成一种安全的语言。所有字节码应用在执行之前都要校验;JVM在执行过程中监督应用的安全性和存储违反问题。MIDP v2 运行时间包括一个完全特征化的、基于域的 安全管理 企业安全管理考核细则加油站安全管理机构环境和安全管理程序安全管理考核细则外来器械及植入物管理 员,它在应用的数字签名者鉴别的基础上赋予应用API级许可。 纵观IT产业的历史,就像军事的发展时常推动计算机的演化一样,计算机游戏已经成为技术创新背后的动力之一。计算机游戏者渴望更加强大的硬件计算能力;渴望不受不同的软件的限制——无论是将图形强制在人工智能(AI)上 还是网络安全性。游戏开发者和玩家常常是前沿计算机技术的最早的采用者。由于他们的创新天性,游戏不再是由大型采购公司控制的技术产品——游戏领域总是有充足的空间给那些在这方面有天分的单个创新者。 手机游戏的盈利主要是由于它们的涉及面很广。手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级趣味的人和青少年身上,而手机游戏则每个人都可以访问的到——随时,随地。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限。但是,对于开发者来说,将控制台游戏迁移到手机游戏工程很大。因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。 一个成功的手机游戏大多具有以下特征: •易于学习:既然手机游戏面向的是普通消费者而不是计算机专家,那么他们不可能深入的学习游戏技巧。消费者不会花几个小时去研究一个3元的手动操作的游戏。保持游戏的简单是最基本的要求。 西南交通大学本科毕业设计(论文) 第3页 •可中断性: 多任务处理是手机生活方式的基本特征。手机用户常常在任务(如等一个电子邮件或者等车)之间有一小段时间。而游戏、日历管理、通讯和工作数据访问使用的是同一个设备。所以一个好的手机游戏应该提供短时间的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。 •基于订阅:手机游戏的盈利成功取决于他们巨大的使用量。一开始开发和设计每个游戏都是昂贵的。如果一个手机游戏开发者要赢利的话,重要的是:同一个游戏引擎,多个标题,基本的故事情节类似。基于订阅的游戏是不断产生收入的最好 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 。 •丰富的社会交互:不管一个游戏设计得多好,只要玩家找到了它的根本模式或者玩完了所有的游戏路径很快就会厌烦这个游戏。对于一个基于订阅的游戏,重要的是与别的玩家合作以增强所玩游戏的智力和随机性。在今天纷繁复杂的多玩家游戏中具有丰富社会交互的游戏证明是成功的。 •利用手机技术的优点:巨额的手机技术研发费用都花在提高设备和网络的可用性和可靠性上面。因此,手机设备硬件和网络协议与桌面/控制台世界(如全球定位系统(GPS)扩展、条形码扫描仪、和短消息服务(SMS)/多媒体信息服务(MMS)通讯)有着非常大的差别。好的手机游戏应该利用那些更新的设备特征和网络基础设备的优点。 •无违法内容:既然所有年龄/性别的人群都玩手机游戏并且常常在公共/工作场合,就应该避免明显的暴力或者色情内容 1.3手机游戏的类型 游戏根据其内容来分类主要分为:角色扮演游戏类,动作游戏类,休闲益智游戏类,模拟经营游戏类,体育运动类,格斗游戏类,冒险游侠类。 基于以上标准,最有可能成功的手机游戏就是那些临时小游戏,它可为广泛的玩家在所有的社交场合提供娱乐。特别是,下列类型的游戏将是明天最具有杀伤力的游戏: 1(多玩家游戏: 这些游戏可以提供手机访问以便建立在线游戏团体。或者,他们利用手机专有特征如多媒体通讯和基于位置的服务,从而创建完全不同的社会结构。好的游戏设计和管理是这种类型游戏成功的关键 2(基于内容的游戏:这些游戏传送版权的多媒体内容,如名人的图片、视频片断、音频立体声、和私人的体育节目,给那些音乐/电影/体育迷们。它成功的关键就是提供值得订阅的高品质的内容流。 3.高冲击的视频游戏:PC 和台式游戏已经从2D 进化到3D。手机游戏也会遵循这种趋势。现在已经出现手机3D工具箱和听筒。但是,3D是非常资源集中型的。他们要求开发者和图形设计者都是专家级的。专业的商店最有可能开发这些游戏。 西南交通大学本科毕业设计(论文) 第4页 在手机游戏的早期,大多数开发者都是想要玩转设备、学习技巧和快速攻关的狂热分子。但是,随着更多的开发者加入这个行业,手机游戏已经进化成涉及到专业设计师、构造师、开发者、产品经销商、律师、和艺术家在内的主导产品。这是行业走向成熟的必然趋势。尽管在某人的业余时间内要开发和推销简单的游戏更加困难,但是更多的专业商店将为许多人提供更多的就业机会。 1.4 手机游戏市场简介 手机游戏的市场虽然在目前看来还很小,但她是所有游戏类型中增长速度最快的一种,有人预计,随着3G业务在全球的展开,手机游戏将正式进入爆发期,仅本年度(2010年),手机游戏市场就将增长近一倍。在整个市场尚处于培育期的现在,每个手机游戏公司都期望自己能制做出满足市场口味的产品,以此成为行业的领跑者,但变幻莫测的用户喜好是否可以准确测量呢,其中有没有规律可循,大众想要的到底是什么,这一连串的问题可能永远不会有一个明确的答案。但同时也并不意味着只能盲目出击而没有章法可言,加上一些约束条件的话,我们便可进行理性的分析,以至于得到足以指导工作的具备操作可能的结论。这些约束条件是指:在可以预见的将来,可能是1-2年也可能是更长时间;拥有手机的人群,不管身处那个国家;仅限于某些高端的手机增值服务(但若干年之后就是普通功能了)。 1.5 手机游戏的前景 由中国通信企业协会增值服务专业委员会主办的第五届电信增值业务高层论坛暨首届手机游戏产业高峰论坛(VAS2006)11月2日进入第二天。今天,与会者将围绕手机游戏产业话题展开探讨。美国国际手机游戏行业资深顾问Eric Goldberg 出席论坛并发表主题演讲,全文如下:不能照搬原文,把意思写出来就可以了,本小节要重写 大家上午好~我在游戏界已经有二十九年的经验,在移动游戏和网络游戏有很多的经验,我刚开始和西方公司进行过合作。我也与市场上一些领军的公司进行过合作,同时还还推广过多款的手机游戏。段落之间为何间距这么大, 今天首先看一下市场上的情况。在世界范围内整个业务量达到20亿美元,亚洲地区占到10亿美元,欧洲和美洲也占到10亿美元,整个市场量大概是20亿美元。我们大约是从上个世纪80年代开始开发出一些销量最好的游戏,有很多有名的游戏。在市场上我们已经实现了很大的发展,而且我们都知道现在有很多新的公司也介入游戏市场,竞争变得越来越激烈。 另外看一下韩国,韩国发展的程度或者说竞争的程度并没有其他的地方这么严重。日本实际上也发挥了非常重要的作用,其他的一些国家比如说中国、俄罗斯也发挥了非常重要的作用。看一下欧洲和美国的问题,刚才来自文化部的同事讲到关 西南交通大学本科毕业设计(论文) 第5页 于监管的一些问题。在这里我想给大家讲一下美美国和欧洲立法的问题,2005年的时候我们有一些关于运营商关系的问题,另外还有关于售后服务的问题。在2006年的时候又出现一些新的问题,比如说市场营销以及市场方面的一些工作。可以说刚才已经听到中国移动的也讲到这方面的问题,讲到了游戏。这是美国一个会议调查的结果,叫做Moconews的调查结果。而且他们非常喜欢运营商所建立的机制,他也讲到运营商实际上也可以帮助游戏行业的内容。我实际上非常赞扬运营商的做法,两年前在西方市场上它大约占到运营商收入的1%,游戏这方面的收入占到运 。到2006年的时候占到十分之一。另外业务线和提供不同的服营商总体收入的1% 务,让我们更好的分配资源。现在我们发现这些游戏行业实际上可以为运营商带来非常多的收入,而且这个游戏也变得越来越重要。我们也知道在欧洲市场上以及美国市场上,运营商在推广游戏方面发挥非常重要的作用。他们也会提供一些定制化的服务,比如说他们会调查客户需求是什么,根据他们的需求来提供相应的游戏产品。通过这样一种方式,他们可以获得最大的利润。 讲一下中国,中国可以从欧洲市场以及美国市场上学到什么样的东西呢,首先中国可以从欧洲市场上学习到很多东西,因为欧洲市场无论在规模上还是在总体收入上讲,都是发展非常大的市场。而且我们都知道欧洲市场在短信文化方面是最为成功的。它有一个JAVA下载的环境,这也并不是特别容易改变,这个环境是非常唯一的。我们开始有一些进口,同时也会进行一些本地的测试。但是也存在着一些问题,这些都是中国方面要注意的,看一下美国市场,美国市场实际上是跟中国市场上最有类似性的市场,因为我们知道中国市场非常大,美国市场也非常大。现在我们都知道美国市场迄今为止在移动游戏方面是世界上最大的游戏市场。同时我们还有两个世界上最大的游戏公司都在美国。这两家公司都会在市场上进行竞争,他们都会使用不同的技术,同时我们也有非常成功的商业模式,我们都讨论很多次了。我们有非常好的创新机制。 我们看一下韩国和日本,中国又能从这两个国家学到什么东西,这两个国家是世界上发展最快的无线内容市场,他们在游戏收入方面是非常多的,这方面市场发展得非常快。另外他们在业务模式方面非常具有经验,而且他们在这方面做得非常好。在技术采纳方面有很好的路线图,他们的技术确实能够影响整个市场的发展。但是也存在着一定的问题,他们在整个世界的游戏市场上发挥着一个非常不同的作用,他们和美洲和欧洲的情况不一样,这也是中国应该注意的。 看一下印度的情况,印度市场实际上在人口和大小方面和中国非常有类似的情况。我们也都知道印度人口是非常多的,印度人口大约是已经超过10亿人口,另外人均收入一年也超过一万美元。同时印度也存在着很多合作的关系,和美国硅谷有很好的合作关系。但是也存在着很多的问题,而且这些问题和中国的很多问题非常类似,我认为印度是应该很好的学习一下。印度有很多和中国学习的情况。 看一下中国移动市场的情况。看一下规模,2004年下载市场已经总量达到1000万美元,2005年的下载市场达到3000万美元。另外看一下2006年大约是5000万美元,2004年的短信市场收入已经达到6亿美元,2005年的短信市场总量达到7亿美元。今天在这里我不想讲音乐以及彩铃这方面,主要讲的是短信市场。 西南交通大学本科毕业设计(论文) 第6页 实际上在欧洲市场上短信市场的最近发展的也是非常快的。而且欧洲人并不是特别的愿意像中国人这么发展,但是中国市场就不存在这个问题。 中国市场也有很多的优势,是西方国家所无法比较的。一个是中国短信文化发展丰富快、非常的繁荣。另外,中国在发短信方面的价格相对来讲比西方国家低得多,所以几个是非常有优势的。而且现在中国人也可以发语音方面的内容或者彩铃、彩信方面的内容,所以这方面的机会非常多。看一下美国的市场,美国的市场都会喜欢利用网络来发信息,但是中国人非常喜欢利用手机来发信息,所以中国不存在这方面的问题。 另外,中国的手机用户也是非常多的,之前发言人都讲过,中国移动用户已经超过4亿,这个量是非常大的。总结一下,可以说,我是来自美国的,我对美国的情况比较熟悉,可以说77%的美国人并没有护照,而且,还有大约80%的人从来没有离开美国,那么,今天我也是第一次到中国,我非常荣幸在这里利用这个机会给大家做这个发言。同时,和很多西方专家一样,我更倾向于欧洲、韩国和日本,比较倾向于他们的一些文化。所以说,中国的机会是非常多的。而且,实际上中国也可以避免自己的“中间王国”的趋势。我认为中国要做的就是很好的学习其他国家,或者是在一些对于游戏先驱者的一些经验教训。通过这样一种方式,你们就可以更好的推动自己的游戏行业的发展。再比如说,有很多的技术在西方国家都是失败的,那么我认为,中国现在正在开发的起步阶段,我认为你们可以避免这些错误。另外,中国还有其他的优势,中国的经济是世界上发展最快的。另外,中国有非常古老的文明,同时中国也有非常好的做贸易、做生意的传统。 最后总结一下,中国文化有机会可以成为一个快速的跟上其他的国家,而且我也认为,比如说在PDA也一些日本公司也已经追了上来。再比如说在芯片方面,以前摩托罗拉做得非常好,现在英特尔也做得非常好。现在我认为中国也可以在这个游戏市场上找到自己的位置,可以发展得非常好。非常感谢。 1.6 文档组织结构 全文共分为五章: 绪论:介绍手机游戏的背景、研究内容,对全文结构有一个总体的介绍。 开发环境及相关技术介绍:详细介绍手机游戏所有用,的jme技术,和手机游戏开发环境。 手机游戏的系统分析:简要阐述游戏各个系统以及其实现原理。 手机游戏角色系统分析:详细介绍手机游戏角色的实现以及所涉及的技术。 主要功能模块的测试:对主要功能模块进行测试,并写出测试报告。 西南交通大学本科毕业设计(论文) 第7页 第2章 关键技术与系统平台介绍 2.1 JAVA语言 Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。 Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。 当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢, Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。 在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都心生感叹:噢,这正是我想要的~于是Java成了一颗耀眼的明星,丑小鸭一下子变成了白天鹅。 JAVA语言的主要特性有: 1、Java语言是简单的(请注意,一定要用正式用语,不能有口水话)。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C++ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 2、Java语言是一个面向对象的(什么,缺宾语,文中尽量不要使用省略句)。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java 西南交通大学本科毕业设计(论文) 第8页 语言全面支持动态绑定,而C++ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。 3、Java语言是分布式的,,,。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java.net ),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 4、Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。 5、Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。 6、Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 7、Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。 8、Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。 9、Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C++。 10、Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。 Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字 西南交通大学本科毕业设计(论文) 第9页 为synchronized)。 11、Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。 Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。现在是晚上0点36分了,不看了,累了,你论文的语 抓紧时间修改。另外请严格按照格言太不规范,自己按照我上面说的修改去吧。请 式要求书写论文。 下面我来说下JAVA与C语言的一些区别: 熟悉C语言和C++语言的读者一定想搞清楚这个问题,实际上,Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物.比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言,C++语言完全相同.尽管如此,Java和C语言,C++语言又有许多差别,主要表现在如下几个方面: (1) Java中对内存的分配是动态的,它采用面向对象的机制,采用运算符new为每个对象分配内存空间,而且,实际内存还会随程序运行情况而改变.程序运行中,每个, Java系统自动对内存进行扫描,对长期不用的空间作为”垃圾”进行收集,使得系统资源得到更充分地利用.按照这种机制,程序员不必关注内存管理问题,这使Java程序的编写变得简单明了,并且避免了了由于内存管理方面的差错而导致系统出问题.而C语言通过malloc()和free()这两个库函数来分别实现分配内在和释放内存空间的,C++语言中则通过运算符new和delete来分配和释放内存.在C和C++这仲机制中,程序员必须非常仔细地处理内存的使用问题.一方面,如果对己释放的内存再作释放或者对未曾分配的内存作释放,都会造成死机;而另一方面,如果对长期不用的或不再使用的内存不释放,则会浪费系统资源,甚至因此造成资源枯竭. (2) Java不在所有类之外定义全局变量,而是在某个类中定义一种公用静态的变量来完成全局变量的功能. (3) Java不用goto语句,而是用try-catch-finally异常处理语句来代替goto语句处理出错的功能. (4) Java不支持头文件,而C和C++语言中都用头文件来定义类的原型,全局变量, 西南交通大学本科毕业设计(论文) 第10页 库函数等,这种采用头文件的结构使得系统的运行维护相当繁杂. (5) Java不支持宏定义,而是使用关键字final来定义常量,在C++中则采用宏定义来实现常量定义,这不利于程序的可读性. (6) Java对每种数据类型都分配固定长度.比如,在Java中,int类型总是32位的,而在C和C++中,对于不同的平台,同一个数据类型分配不同的字节数,同样是int类型,在PC机中为二字节即16位,而在VAX-11中,则为32位.这使得C语言造成不可移植性,而Java则具有跨平台性(平台无关性). (7) 类型转换不同.在C和C++中,可通过指针进行任意的类型转换,常常带来不安全性,而在Java中,运行时系统对对象的处理要进行类型相容性检查,以防止不安全的转换. (8) 结构和联合的处理.在C和C++中,结构和联合的所有成员均为公有,这就带来 而在Java中根本就不包含结构和联合,所有的内容都封装在类里面. 了安全性问题, (9) Java不再使用指针.指针是C和C++中最灵活,也最容易产生错误的数据类型.由指针所进行的内存地址操作常会造成不可预知的错误,同时通过指针对某个内存地址进行显式类型转换后,可以访问一个C++中的私有成员,从而破坏安全性.而Java对指针进行完全地控制,程序员不能直接进行任何指针操作。 Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。 * Java SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。 * Java EE(Java Platform,Enterprise Edition)。这个版本以前称为 J2EE。企业版本帮助开发和部署可移植、健壮、可伸缩且安全的服务器端 Java 应用程序。Java EE 是在 Java SE 的基础上构建的,它提供 Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 2.0 应用程序。 * Java ME(Java Platform,Micro Edition)。这个版本以前称为 J2ME。Java ME 为在移动设备和嵌入式设备(比如手机、PDA、电视机顶盒和打印机)上运行的应用程序提供一个健壮且灵活的环境。Java ME 包括灵活的用户界面、健壮的安全模型、许多内置的网络协议以及对可以动态下载的连网和离线应用程序的丰富支持。基于 Java ME 规范的应用程序只需编写一次,就可以用于许多设备,而且可以利用每个设备的本机功能。 西南交通大学本科毕业设计(论文) 第11页 Java的诞生是对传统计算机模式的挑战,对计算机软件开发和软件产业都产生了深远的影响: (1)软件4A目标要求软件能达到任何人在任何地方在任何时间对任何电子设备都能应用。这样能满足软件平台上互相操作,具有可伸缩性和重用性并可即插即用等分布式计算模式的需求。 (2)基于构建开发方法的崛起,引出了CORBA国际标准软件体系结构和多层应用体系框架。在此基础上形成了Java.2平台和.NET平台两大派系,推动了整个IT业的发展。 (3)对软件产业和工业企业都产生了深远的影响,软件从以开发为中心转到了以服务为中心。中间提供商,构件提供商,服务器软件以及咨询服务商出现。企业必须重塑自我,B2B的电子商务将带动整个新经济市场,使企业获得新的价值,新的增长,新的商机,新的管理。 (4)对软件开发带来了新的革命,重视使用第三方构件集成,利用平台的基础设施服务,实现开发各个阶段的重要技术,重视开发团队的组织和文化理念,协作,创作,责任,诚信是人才的基本素质。 我们知道,早先的www仅可以传送文本和图片,Java的出现实现了互动的页面,是一次伟大的革命。 Java并不是为Internet、www而设计的,它也可以用来编写独立的应用程序。Java是一种面向对象语言,Java语言类似于C++语言,所以已熟练掌握C++语言的编程人员,再学习Java语言就容易得多~Java程序需要编译,它被放置在Internet服务器上,当用户访问服务器时,Java程序被下载到本地的用户机上,由浏览器解释运行。实际上有两种Java程序:一种Java应用程序是一个完整的程序,如Web浏览器。另一种Java小应用程序是运行于Web浏览器中的一个程序。 Java程序和它的浏览器HotJava,提供了可让你的浏览器运行程序的方法。你能从你的浏览器里直接播放声音,你还能播放页面里的动画,Java还能告诉你的浏览器怎样处理新的类型文件。当我们能在2400 baud线上传输视频图象时,HotJava将能显示这些视频。 电子商务是当今的热门话题,然而传统的编程语言难以胜任电子商务系统,电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能与运行于不同平台的机器的全世界客户开展业务。Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的首选语言。 总之,目前以看到了Java对信息时代的重要性,未来还会不断发展,Java在应用方面将会有更广阔的前景。 西南交通大学本科毕业设计(论文) 第12页 2.2 JAME技术 J2ME(Java 2 Micro Edition)是Java 2的一个组成部分,它与J2SE、J2EE并称。 根据Sun的定义:J2ME是一种高度优化的JAVA运行环境,主要针对消费类电子设备的,例如蜂窝电话和可视电话、数字机顶盒、汽车导航系统等等。J2ME技术在1999年的JavaOne Developer Conference大会上正式推出,它将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。 J2ME 在设计其规格的时候,遵循着「对于各种不同的装置而造出一个单一的开发系统是没有意义的事」这个基本原则。于是 J2ME 先将所有的嵌入式装置大体上区分为两种 :一种是运算功能有限、电力供应也有限的嵌入式装置(比方说PDA 、手机);另外一种则是运算能力相对较佳、并且在电力供应上相对比较充足的嵌入式装置 (比方说冷气机、电冰箱、电视机上盒 (set-top box))。因为这两种型态的嵌入式装置,所以Java 引入了一个叫做Configuration 的概念,然后把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;而另外一种装置则规范为 Connected Device Configuration(CDC)规格。也就是说, J2ME 先把所有的嵌入式装置利用Configuration 的概念区隔成两种抽象的型态。 其实在这里大家可以把Configuration 当作是J2ME 对于两种类型嵌入式装置的规格,而这些规格之中定义了这些装置至少要符合的运算能力、供电能力、记忆体大小等规范,同时也定了一组在这些装置上执行的 Java 程序所能使用的类别函式库、这些规范之中所定义的类别函式库为 Java 标准核心类别函式库的子集合以及与该型态装置特性相符的扩充类别函式库。比方就CLDC 的规范来说,可以支援的核心类别函式库为java.lang.* 、java.io.*、java.util.*,而支援的扩充类别函式库为java.microedition.io.*。区分出两种主要的Configuration 之後,J2ME 接著在定义出Profile的概念。Profile 是架构在Configuration 之上的规格。之所以有Profile的概念,是为了要更明确地区分出各种嵌入式装置上Java 程序该如何开发以及它们应该具有哪些功能。因此Profile 之中定义了与特定嵌入式装置非常相关的扩充类别函式库,而 Java 程序在各种嵌入式装置上的使用者介面该如何呈现就是定义在Profile 里头。Profile 之中所定义的扩充类别函式库是根据底层Configuration 内所定义的核心类别函式库所建立。 与J2SE和J2EE相比,J2ME总体的的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。为了在达到标准化和兼容性的同时尽量满足不同方面的需求,J2ME的架构分为Configuration、Profile和 西南交通大学本科毕业设计(论文) 第13页 Optional Packages(可选包)。它们的组合取舍形成了具体的运行环境。 Configuration主要是对设备纵向的分类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的Configuration有- Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。 下面我来谈下JAME游戏: 1(研究背景 游戏作为人们日常生活的一个重要的娱乐项目,也带动了巨大的游戏相关产业市场的发展。游戏平台从游戏机、电视游戏,到pc游戏,到手机游戏,中间经历了很多的技术的变革。随着新技术的发展和人们生活水平的提高,手机开始逐渐普及,手机以其小巧便捷,方便的特性成为人们的必备通讯工具。而基于手机平台的手机游戏也就拥有了巨大的市场空间,随着3g的开通和应用,手机游戏必将迎来新的 一轮游戏热潮~ 2(手机游戏概述 手机游戏可以根据游戏本身的不同,而分成文字类游戏和图形类游戏两种。 文字类游戏: 文字类游戏是以文字交换为游戏形式的游戏。这种游戏一般都是通过玩家按照游戏本身发给您的手机的提示,来回复相应信息进行的游戏。举一个简单的例子,目前很知名的短信游戏“虚拟宠物”就是典型的文字类游戏。在游戏中,游戏服务商会给您一些短信提示,比如服务商可能会给你发送如下短信“您的宠物饥饿度:70,饥渴度:20,疲劳度:20,喂食请回复内容为数字‘1’的信息,喂水请回复内容为数字‘2’的信息,休息请回复数字‘3’„„”等等,那么,您回复数字“1”之后,游戏会给您回一个信息“您的宠物已经喂食完毕,您的宠物的饥饿度变为20”,如此类推,您便可以通过手机短信的方法来进行游戏了。 文字类游戏主要分文两种 a,短信游戏 b,wap浏览器游戏 a,短信类游戏: 就好像“虚拟宠物”那样。短信游戏是通过玩家和游戏服务商通过短信中的文字的内容来交流,达到进行游戏的目的的一种文字游戏。 由于短信游戏的整个游戏过程都是通过文字来表达,造成短信游戏的娱乐性较差。但是短信游戏却是兼容性最好的手机游戏之一。只要您的手机可以发短信,您就可以畅快的享受短信游戏给您带来的快乐了。 b,wap浏览器游戏: wap是一种手机拨号上网的网络服务。而wap浏览器游戏就好像我们用电脑上网, 西南交通大学本科毕业设计(论文) 第14页 并通过浏览器浏览网页来进行的简单游戏一样,也属于一种文字游戏。其进行方法和短信游戏类似,玩家可以根据wap浏览器浏览到的页面上的提示,通过选择各种不同的选项的方法来进行游戏。wap游戏也有短信游戏不够直观的缺点。 综观文字类游戏,其都有着一个共同的特点,即游戏是通过文字描述来进行的。游戏过程中,需要玩家进行过多的想象,使得游戏相对比较单调。虽然目前已经有了彩信等特殊服务可以让这类游戏更加人性化,但是其本质依然无法改变。而且,对于文字类游戏来说,其不低的价格门槛依旧是制约其发展的一大瓶颈。 图形类游戏: 图形类游戏更接近我们常说的“电视游戏”,玩家通过动画的形式来发展情节进行游戏。由于游戏采用了更为直观且更为精美的画面直接表现,因此图形类游戏的游戏性和代入感往往较文字类游戏高。因此广受玩家们的欢迎。 图形类游戏主要分为: a,嵌入式游戏: 嵌入式游戏是一种将游戏程序预先固化在手机的芯片中的游戏。由于这种游戏的所有数据都是预先固化在手机芯片中的,因此这种游戏无法进行任何修改。也就是说,您不能更换其它的游戏,只能玩您的手机中已经存在的游戏,且您也不能将它们删除。 诺基亚早期手机中的“贪吃蛇1、2”就是嵌入式游戏的典型例子。 下面我们来谈下J2ME的数字签名: 得到一个证书后就可以对j2me的jad文件进行签名。这里有一些与签名相关的需要注意的一些问题。 1. 想要安装签过名的软件,就必须通过jad来安装。 我们知道j2me程序生成后会有jad和jar两个文件,一般情况下我们只需要安装jar文件就可以了。例如我会将jar文件通过蓝牙传到手机上,再进行安装。但如果想通过手动安装签过名的文件,就要通过jad来安装,而且要确保jad和jar文件是在相同目录下。我的做法是通过数据线将两个文件拷入手机的内存或存储卡上,然后通过jad来安装,这样安装好的软件就是签过名的软件了。不会再有总是很烦人的询问用户是否允许操作的提示信息。 但就我看过的手机看来,应该是不同的手机有不同的表现。例如索爱的手机关于提示仍然是需要用户自己设置的。诺基亚也是。只是诺基亚的在使用非签名软件时用户无法设置为“总是允许”或“只提示一次”。而签了名的就可以设置了。 2. 编程人员需要注意,像很多功能在未签名前是可以使用的,例如gps,网络连接,文件读写等。 3. 签过名的软件有什么好处。 西南交通大学本科毕业设计(论文) 第15页 签名就是告诉我们这个软件是可信的,对用户最直接的感受就是联网或访问手机文件的时候,收发短信,彩信,蓝牙等,但签名后这些功能就部可用了。 这就是jad中MIDlet-Permissions属性的问题。当未签名时对这个属性的要求并不严格,但签名后就一定要注意。必须把所要使用到的权限加入进去,否则这个功能就不能使用了。 2.3 Eclipse平台 Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为Ganymede的3.4版。2009年7月发布代号为GALILEO的3.5版。 Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C++和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。 Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。 虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment, 西南交通大学本科毕业设计(论文) 第16页 PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 基于 Eclipse 的应用程序的突出例子是 IBM 的 WebSphere Studio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、servlet、EJB、XML、Web 服务和数据库访问的支持。 Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——Eclipse Platform、JDT、CDT和PDE。JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。 Eclipse SDK(软件开发者包)是Eclipse Platform、JDT和PDE所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到Eclipse Platform中的工具。Eclipse SDK由Eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。Eclipse项目生产的软件以 GPL发布,第三方组件有各自自身的许可协议。 2.4 WTK技术 WTK 的全称是Sun J2ME Wireless Toolkit —— Sun的无线开发工具包。这一工具包的设计目的是为了帮助开发人员简化j2me的开发过程。使用其中的工具可以开发与 Java Technology for the Wireless Industry (JTWI, JSR 185) 规范兼容的设备上运行的j2me 应用程序。该工具箱包含了完整的生成工具、实用程序以及设备仿真器。到本文写作时为止可以获取有四个版本,分别是1.0.4, 2.0, 2.1和2.2。每个版本都包括 英语 关于好奇心的名言警句英语高中英语词汇下载高中英语词汇 下载英语衡水体下载小学英语关于形容词和副词的题 ,日语,简体中文,繁体中文4个语种包。 1.0.4版只能够开发MIDP1.0 应用程序。 2.0版只能够开发MIDP2.0 应用程序。 2.1版则可以同时开发MIDP1.0、 JTWI(CLDC 1.0, MIDP2.0, WMA1.1)可改用CLDC1.1或加入MMAPI1.1),自定义(自己随机组合Configuration, Profile以及Optional Package)三种环境下的应用程序。 西南交通大学本科毕业设计(论文) 第17页 2.2版中,WTK全面的支持JTWI规范。具体的说,即MIDP 2.0, CLDC 1.1, WMA 2.0, MMAPI 1.1, Web Services (JSR 172), File and PIM APIs (JSR 75), Bluetooth and OBEX APIs (JSR 82), and 3D Graphics (JSR 184);同时您也可以使用该版本开发面向CLDC1.0 和MIDP1.0的应用程序。 WTK是Sun提供的一个开发工具包。目前各大手机厂商往往把WTK经过自身的简化与改装,推出适合自身产品,如SonyEricsson,Nokia Developer’s suit等,都属于此种类型;而通过JBuilder, Eclipse等IDE,J2ME开发包工具可以被绑定在这些集成开发环境中,进一步提高开发效率。 在说明WTK文件结构之前,让我们首先把它安装起来。 WTK的安装程序与普通程序一样简单,只有一点需要注意,由于WTK自身并没有附带Java的运行环境JDK,所以,在WTK安装之前你需要安装自己的JDK(我们这 里选用的是JDK1.4.2)。 WTK会首先自动检测当前系统已有的Java虚拟机: 然后显示出当前虚拟机所在路径 ,您在确定无误后,就可以继续了,最后安装成功后,您将得到一个包括多种实用工具的开发包。以下是安装显示的菜单项。 无论哪个版本的WTK都会包括以下几个目录: appdb目录: RMS数据库信息 apps目录: WTK自带的demo程序 bin目录: J2ME开发工具执行文件 docs目录: 各种帮助与说明文件 lib目录: J2ME程序库,Jar包与控制文件 session目录:性能监控保存信息 wtklib目录: JWTK主程序与模拟器外观 WTK是用来开发MIDP的,为了让MIDlet可以顺利编译和执行,WTK必须具有CLDC和MIDP的类库,WTK可以帮助我们省去额外安装调试这些类库的时间。而不同版本的WTK包含的程序库内容是不一样的,比如说2.0中包含了midpapi.jar, wma.jar, mmapi.jar,而在2.1中则变为了cldcapi10. jar, cldcapi11.jar, midpapi10.jar, midpapi20.jar, wma.jar以及mmapi.jar;在2.2中,wma.jar又细分为wma11.jar, wma20.jar。如果您在开发中需要某个特定的jar包而当前的WTK版本又没有时,您可以简单把这个jar包拷贝如当前WTK的lib文件夹即可。 apps目录中包括了许多Demo程序,为我们演示了J2ME的一些技术实例,这些往往是很好的学习材料。 下面我们来谈下用WTK建立新项目,在WTK的程序列表中运行KToolbar,打开WTK主界面。WTK的标题菜单简单明了的列出了这个工具包的可选功能。 西南交通大学本科毕业设计(论文) 第18页 单击新建项目,键入新建的项目名和启动MIDlet名,这里的项目是一个MIDlet套件,而MIDlet类名则是这个套件的入口,MIDlet文件名(也是Java文件的名字)。 产生项目以后,会出现项目的设置表,您可以选择当前目标平台,CLDC配置,以及要采用的MIDP可选包。再不需要某个库文件时,请不要选中它,以减少最后程序大小。 另外,您还可以指定MIDlet的属性,这些设置将成为JAD,即J2ME程序的描述信息文档。我们的项目目前不需要其它的附加设置,于是采用默认,确定之后,控制台信息提示建立成功。 WTK产生项目后,不同类型的资源有着相对固定的存放位置。Java源文件被放在apps目录下\项目\src下,相关程序资源文件(图片,音频)放在\项目\res下,应用程序库文件放在\项目\lib下,这在WTK中是必须注意的,即便是相对路径,也必须是在该类型目录下建立。 项目创建成功后,我们来创建一个MIDlet文件,MIDlet是J2ME项目文件的入口文件,也是必须的。在\项目\src目录下创建 项目.java,采用默认包,注意,此时创建的java程序必须是与我们在创建项目时键入的MIDlet类名一致,然后我们就可以在新建的JAVA文件中写代码了。 西南交通大学本科毕业设计(论文) 第19页 第三章:手机游戏的系统分析 3.1游戏整体系统: 怪兽仙境之封印传说是一款RPG(个人角色扮演)类型的手机游戏,它讲述的是一个现代人(男主角)通过穿越到一个陌生世界(芙蕾尔大陆),拯救这个陌生世界的故事。游戏通过主线任务和支线任务来讲述整个故事的情节发展,通过不断的拯救女神和对话推动故事的发展,以救出5个女神(智慧女神、勇气女神、生命女神、爱情女神)为终极目标,作为游戏的完结。本游戏共分为6个系统,如图3-1: 游戏框架 角色系统场景系统战斗系统道具系统任务系统技能系统 图3-1 3.2 角色系统: 角色系统在游戏中起着至关重要的作用,是所有其他系统的一个基础,对其他系统的构建奠定了方向。 那么什么是角色呢,在游戏制作过程中,角色所包含的内容很大,大体上分为三种,第一种是你正在控制的人物,我们称之为主角(包括男主角、女主角以及宠物宝宝等);第二种是不可控制的角色,我们称之为NPC(Non Player Character),有玩家戏称为路人甲,它分为行走角色和站立角色,供玩家领取/交还任务,购买装备道具等;第三种是指电脑控制的怪物或者敌方角色,供玩家升级和完成任务等。 在RPG游戏中主角就是玩家需要控制的人物,它包括人物属性,人物简介,外形设计,移动控制等。NPC是游戏中不动的人物或者图片。它的主要功能是提供任务的发布和完成奖励等,一般游戏也经常用它来叙述游戏的背景和基本操作。电脑控制的敌方角色我们一般称为怪物,它主要是为玩家提供升级的经验和装备的。同时它也具有一定的属性,不过现在一般的AI都不是很高,所以它的智能性不是很强,很有局限性。 手机RPG游戏的角色系统包括游戏英雄的角色图片,游戏各种宠物,怪物的图片,以及各种属性,升级等资料。主要涉及的类如表3-1 类名: 功能 Hero类 主要是负责角色的添加,角色的移动。 西南交通大学本科毕业设计(论文) 第20页 Pet类 主要是负责宠物的添加,宠物的属性。 Npc类 主要是负责地图的各个Npc的显示,属性对话判定。 Enemy类 主要是负责怪兽的添加,属性显示和怪兽的移动等。 表3-1 3.3场景系统 什么是场景呢,是指运行在游戏中的主控角色可以到达的场地。换句话说,也就是如果没有角色,游戏本身就是由很多单独的场景相连组成。场景一般分为室内场景和室外场景,这中分类主要是根据现实世界的分类来定的。 那么场景是做什么用的呢,场景就是舞台,是为角色提供背景的一个舞台。所以我们在布置这个舞台时,当然就要下一番功夫了。首先要控制氛围,搞清楚你要做的游戏是什么样的氛围。是富有浪漫色彩的,还是写实的,浪漫色彩的氛围,可是或多或少的加入一些夸张的因素;而写实的则力求接近于真实。是卡通Q版的,还是恐怖的,卡通Q版可以将场景设计的可爱爆笑;恐怖的则不易加过于明快的色调,使之阴暗。布置时要根据具体场景和你设计时需要的效果。现在游戏对场景的制作要求很高,主要是因为硬件显示设备的升级。一般来说现在大多游戏多追求华丽的效果,所以对这个配色和地图的设定要求极高。 手机RPG游戏因为其自有硬件的限制,不可能追求高质量的场景效果,所以一般的手机游戏都存在画面简单清晰,主要涉及的类是Scene,如表3-2。 Scene类 主要是负责游戏场景扥绘制和显示,要求是清晰简洁,不能繁杂 表3-2 3.4战斗系统 战斗系统主要是负责主角的战斗的。它包括主角在战斗的所有时间,主要有战斗场景,战斗状态,战斗次序,战斗动画,战斗技能、道具的使用和伤害的判定等。 战斗状态主要有三种待命,攻击,逃跑。战斗次序主要是讲角色和怪物的攻击顺序,这里一般的回合制游戏的话都是用攻击速度来判定的。例如:五行中风的速度很快,所以一般情况下碰到风属性的怪物他会优先攻击玩家。战斗动画主要是在战斗中角色和怪兽位置的移动和表情的显示。战斗技能主要是跟技能系统相链接的。道具是辅助角色战斗的,跟道具系统相连。 手机RPG游戏现有的都是回合制的战斗系统,那是因为手机硬件实现不了即时战斗系统。实现的类有Battle类。如表3-3 战斗中伤害判定非常的重要,很大程度上决定了游戏的平衡性和可玩性,对整个 西南交通大学本科毕业设计(论文) 第21页 游戏的流程也有一定影响。本游戏的伤害主要有物理伤害和技能伤害两种。物理伤害跟攻击者的攻击和被攻击者的防御有关,技能伤害主要由攻击者的魔法攻击和被攻击者的魔法防御决定,同时宠物属性的相生相克也影响着游戏中的伤害计算。 Battle类 控制角色的战斗情况的,主要有画面,技能,道具,攻击次序等 表3-3 3.4 道具系统 所谓道具就是指在游戏过程中,使用或是装备的物品。道具大致上可以分为三种:使用类、装备类和情节类。 使用类:使用类的特点是用过后,就消失了的物品。它又分为食用型和投掷型两种。食用型是指在游戏过程中,可以食用,以增加某种指数提高的物品。一般来说也就是药品或是食品。象什么草药、金创药之类的,投掷类道具是指在战场上使用的可投掷的物品,如飞镖、金针、菩提子,打着敌人后可以使敌损HP(体力)值。 装备类:固名思议嘛,当然是指可以装备身上的东西啦~如果你的角色有不同的系,那么各系之间的装备类道具应该也不大一样,就像男式服装和女式服装不可以混穿是一个道理。设计这样的道具,要详细说明道具的等级、重量或是大小,数值(加攻防、敏捷等数据)、特效(对某魔法可防,对某系敌人效果加倍)、价格(买进时的价格和卖出时的价格),其它的还有材质(木、铜、铁……)、耐久值、弹药数、准确率等等。 装备类:指游戏里面的非消耗性道具。装备类道具能提高角色的属性值,是RPG游戏中不可或缺的一部分。一般有衣服,腰带,首饰及武器等。好的装备设定能大大提高游戏的可玩性,许多玩家都对收集装备有很深的情节,对此乐此不彼。 情节类:这类道具在游戏的运程和发展中,是最不可少的。什么是情节类道具呢,就是诸如钥匙之类的,在情节发展过程中必不可少的道具。这类道具存在的目地,就是为了判断玩家的游戏进程是否达到设计者要求的程度的一个标尺。诸如钥匙、腰牌、徽章、某某的信等等,在游戏中都是重要的判断因素。有了它,游戏者才可以进行下一步的流程。这类道具跟任务系统密切相关。 3.5任务系统: 任务主要作用有三个:第一个是让玩家熟悉游戏的操作和背景。第二个是推动游戏整个剧情的发展。第三个是控制游戏的平衡性和可玩性。一个好的任务系统可以让玩家对该游戏爱不释手,玩过之后还有意犹未尽的感受。 第一种任务一般都是新手任务,主要是负责对玩家进行一些操作的指导和让玩家熟悉整个游戏的背景构架和地图的设置。这种任务的设定一般来说技术性不是很 西南交通大学本科毕业设计(论文) 第22页 强,需要注意的地方是不能重复的做,时间不需要很长。因为根据玩家的心理来说,重复的意义不大的任务一般玩家都会觉得很烦并且很反感。对于前提提示玩家和游戏介绍的任务时间设定要求是既要初步让玩家熟悉整个游戏并勾起玩家玩的兴趣也不能所有的都介绍完,更多的应该是引导玩家作用。第二种任务主要是针对RPG游戏来说的,RPG游戏一般都会有个背景故事,所以整个故事的情节发展必须通过一些任务来推动,同时通过不同的任务会让玩家对游戏是世界的认识更加深刻,让游戏的人性化更家明显。第三种任务主要是游戏运营的时候的问题,因为一般游戏的平衡性都做的不是很好,平衡性对游戏来说是他的生命线。所以我们要在游戏推出之后通过一系列的任务来对游戏的平衡性进行一些调节。 在RPG游戏中任务的实现基本都是通过对话然后帮NPC做一些事情来完成的。对话的设定有几个要求,第一不能太长,太长的对话没有玩家会喜欢也懒得看。第二,必须要推动整个游戏剧情的发展,不能推动游戏整个发展的任务没有作用。第三必须要带有玩家感情色彩,RPG游戏主要是扮演角色的,所以我们要在任务对话中添加一些感情,这样会让玩家有种身临其境的感觉,并且会增加游戏的可玩性。 RPG游戏发展到今天,任务系统已经相当的丰富,但总给人感觉新意不够。一款游戏剧情的好坏直接影响到玩家对游戏的感觉。不论是武侠RPG的煽情路线,还是日式RPG的一主线多分支模式,或者是欧美RPG开放式剧情模式,讲故事永远是不变的主题。角色扮演游戏的剧情千奇百怪、各式各样,或以情动人、或以义取胜。尽管剥去这层外衣,角色扮演游戏所剩的已不多,但还是有无数的玩家为了这层外衣而义无反顾的投入了角色扮演的怀抱。手机RPG游戏在制作上无法跟其他RPG游戏相比,所以就应该尽可能的完善任务系统,给玩家的体验不是在玩游戏,而是自己本身就是主人公,跟着游戏任务,经历着一系列的冒险,进入各种引人入胜的场景,遭遇一连串匪夷所思的奇遇。总之,RPG的任务系统就是此类游戏的核心。 3.6 技能系统 技能是角色所带有的一些攻击手段。严格来说是战斗系统的一部分。主要分为控制,攻击输出,防御,辅助等。 控制技能分为单体控制和群体控制,一般来说单体控制技能会带有一定的伤害并且控制时间会略长于群体控制,一般应用于打BOSS和PK。群体控制主要是控制敌方群体,设定这种技能是为了让玩家的升级刷怪变快,摆脱那种一个游戏除了刷怪就是刷怪的现象。玩家是否能使用好控制技能,往往是决定一场战斗胜负的关键。 攻击输出又分为单体输出和群体输出,其功能和作用跟控制差不多,只是一个是负责控制一个负责输出。对高输出技能的合理使用,可以加快战斗的胜利。 防御主要跟角色的属性和装备有关系,一般的防御都是针对控制和输出来说的, 西南交通大学本科毕业设计(论文) 第23页 因为攻防是一个整体,缺一不可。 辅助主要是对角色的一些属性进行短时间的改变,通过这段时间的属性改变来达到高效的目的,辅助技能往往非常的使用,比如回血,减对手防御,加己方攻击,使用好辅助技能,可以节省大量的时间和道具。 玩家通过不同的技能组合,可以更轻松的搞定关卡boss,更快捷的刷钱刷经验。对于经验丰富、善于思考的玩家来说,一个好的技能系统,带给他们的不仅仅是一些杀敌快感,更是各种智慧的集成,一种成功布置战术后获得胜利的满足感。 在RPG手机游戏中,技能的设定基本决定了整个游戏的质量,因为手机游戏的场景基本都差不多,不可能出现那种很华丽的效果,所以技能这一块儿的好坏也是影响玩家玩耍欲望的一个重要因素。通过不同技能的组合和技能的设定,会让玩家有种全新的体验。 西南交通大学本科毕业设计(论文) 第24页 第四章:角色系统 4.1系统功能介绍 本系统的主要功能是添加角色、添加属性和升级处理。如图4-1所示。 图4-1角色系统功能结构图 4.2系统类图 角色系统与游戏框架主要的类以及类之间的关系如图4-2所示。 西南交通大学本科毕业设计(论文) 第25页 RPGCanvas +GS_MAINLOOPMenuMap+GS_MAINMENU-screenWidth+GS_FIGHTLOOP-screenHeight+GS_FENGJINGMAP-testMenuImageByMax-pet-headImage-headImage-headImage-loader-petFightMap-hero+getPet()+RPGCanvas()-image+menuMap()+changeGameState()+Hero()-loadPet()+initialize()+load()+paint()+start()+getHero()+stop()+run()+processKeys()+checkCollision()+paint() FeiTouManPet #name#name#chuzhan#chuzhan#attackNumber#attackNumber#defendNumber#defendNumber#CurHP#CurHP#HP#HP#MP#MP#CurMP#CurMP#level#level +getCurHP() : int+getCurHP() : int+setCurHP()+setCurHP()+getMAXEXP() : int+getMAXEXP() : int+getImage()+getImage()+getChuzhan()+getChuzhan()+getIsChuzhan() : bool+getIsChuzhan() : bool+Pet()+Pet()+changeChuzhan()+changeChuzhan()+goBack()+levelUp()+paint()+levelUp() 图4-2系统类图 4.3添加角色 添加角色的功能分为添加英雄、添加宠物、添加怪物和添加NPC4个子功能。如图4-3所示。 西南交通大学本科毕业设计(论文) 第26页 图4-3添加角色功能结构与图 4.3.1添加英雄角色 添加英雄角色即在游戏各个场景中展示英雄的不同状态。 创建一个hero类,为hero添加图片,在程序中显示出来,能完整的表示英雄在游戏中行走的各个状态。英雄一共有12种状态,构建其向前后左右四个方向行走的过程。添加的图片如图4-4 图4-4英雄状态图 游戏的主体框架在RPGCanvas这个类中实现。RPGCanvas中定义了几个场景,主地图、作战地图和属性菜单等。在玩家进入游戏后,会调用初始化函数initialize,把图片加载进去。 initializepublic 函数名 函数作用范围 RPGCanvas 类名 功能概要 初始化地图 void RPGCanvas () 记述形式 详细说明 1.此函数用来初始化地图,可以把地图元素显示在主地图上 2.可以通过此函数初始化英雄角色 表4-1 initialize函数式样 西南交通大学本科毕业设计(论文) 第27页 在主地图中,玩家点击前后左右四个按键,会调用不同的图片,并且完成实现英 雄角色在主地图中的坐标移动。 processKeyspublic 函数名 函数作用范围 RPGCanvas 类名 功能概要 处理按钮事件 void processKeys () 记述形式 详细说明 1在主界面中对上下左右以及确认键5个按键的处理 表4-2 processKeys函数式样 当玩家点击上键时,会轮流显示0,1,2三张图;当玩家点击右键时,会显示 3,4,5,三张图;当玩家点击下键时,会显示6,7,8三张图;当玩家点击左键时,会 显示9,10,11三张图。这样就能流畅的表示英雄角色在主地图中的行走状态。 部分代码设计(玩家点击左键发生的事件): case GS_MAINLOOP: if ((keyState & LEFT_PRESSED) != 0)//判断是否点击左键 { if (lastState != LEFT_PRESSED) { lastState = LEFT_PRESSED; hero.setFrameSequence(new int[] { 9, 10, 11 });//显示hero的9、 10/11的图片 } else { hero.nextFrame(); } if(hero.getX() - STEP >= 0) hero.move(-STEP, 0); else hero.setPosition(0, hero.getY()); } 英雄角色在主场景的显示如图4-5所示。 西南交通大学本科毕业设计(论文) 第28页 图4-5显示英雄角色 4.3.2添加宠物角色 本游戏的宠物在主地图中是无法显示出来的,只有在作战地图和属性菜单中才能看到。 创建一个pet类,所有的宠物类都继承于pet类。在pet类中声明宠物具有的所有属性和一些相关的属性获得改变等函数。 1.在属性菜单显示宠物 玩家在主地图时,通过点击确认键会进入属性菜单,在processKeys函数中实现。代码如下: else if ((keyState & javax.microedition.lcdui.game.GameCanvas.FIRE_PRESSED) != 0) {changeGameState(GS_MAINMENU);} 当玩家进入到属性菜单后,默认看到的就是第一个宠物的头像和各种属性。如图4-6。在属性菜单中点击左右,会显示下一个宠物的头像和属性。 西南交通大学本科毕业设计(论文) 第29页 图4-6属性图 加载宠物头像的函数为loadPet()。 loadPetPrivate 函数名 函数作用范围 menuMap 类名 功能概要 加载宠物头像 void loadPet () 记述形式 详细说明 1在属性菜单中把相应的宠物头像在左上角显示出来 表4-3 loadPet函数式样 代码具体实现如下: private void loadPet(){ try { testMenuImageByMax= Image.createImage("/propertyMenu.png"); headImage = Image.createImage("/s11_0.png"); pet = new Feitouman(headImage); } catch (IOException e) { e.printStackTrace(); } } 其他属性的显示在paint类中调用drawString()即可实现。 2.在属性菜单切换宠物 玩家在查看完一个宠物后,如果想要查看其他的宠物,需要在宠物菜单点击左键 或者右键,进入另一个宠物的属性菜单,就能查看其他宠物。在RPGCanvs的processKeys函数中实现,对属性菜单中的左右键进行处理,点击左右键就会切换场景。部分代码如下: 西南交通大学本科毕业设计(论文) 第30页 case GS_MAINMENU: if((keyState & LEFT_PRESSED) != 0) //在飞头蛮属性菜单点击左键后会进 入风精的属性菜单 { changeGameState(GS_FENGJINGMAP); }else 图4-7表示属性菜单切换宠物的前后状态。 图4-7属性菜单切换宠物 3.在作战地图显示宠物 游戏主角在主地图移动时,每过一段时间会遇到敌人,自动进入作战场景。这是 由run函数的一部分代码来控制的。通过不断统计系统时间,当累积时间大于或等于 2000MS时,就会进入战斗地图。 RunPublic 函数名 函数作用范围 RPGcanvas 类名 功能概要 控制整个游戏状态和时间的关系 void Run () 记述形式 详细说明 1.控制游戏的运行 2.设定延迟 3.关联其他函数 表4-4 Run函数式样 每隔一段时间自动遇怪的代码设计: case GS_MAINLOOP: oldTime = System.currentTimeMillis();//获取系统当前时间 int keyState = getKeyStates(); processKeys(keyState); checkCollision(lastState); 西南交通大学本科毕业设计(论文) 第31页 scrollView(); currMap.setViewWindow( view[X], view[Y], view[WIDTH], view[HEIGHT]); currMap.paint(g, 0, 0); currTime = System.currentTimeMillis();//再次获取系统当前时间 elapsedTime += currTime - oldTime;//两次时间的差 if(elapsedTime>=2000) { changeGameState(GS_FIGHTLOOP); elapsedTime = 0; }//时间间隔大于2000MS时进入作战场景 进入作战场景后,出战的宠物会在战斗场景中显示出来,并显示相应的血量和魔法值。如图4-8所示。 图4-8角色战斗图 实现时先判断宠物的状态是否处于出战,用。如果是就用drawimage()绘制宠物头像,用drawString()来绘制血量和魔法。用getFont()函数来控制字体大小。 drawStringPublic 函数名 函数作用范围 Graphics 类名 功能概要 绘制文字 String drawstring() 记述形式 详细说明 1.把想要添加的字符串作为参数传进去,然后在定义好的坐标处显示出传入的字符串 表4-5 drawString函数式样 getFontPublic 函数名 函数作用范围 Graphics 类名 功能概要 绘制字体 Void getFont () 记述形式 详细说明 1.改变传入的字体大小和样式 表4-6 drawString函数式样 代码实现如下: 西南交通大学本科毕业设计(论文) 第32页 if(pet.getIsChuzhan())//判断出战状态{ Image headImage = pet.getImage(); //添加头像 g.drawImage(headImage, 10+24*4,y+fbg[indexi][indexj].getHeight()+10, Graphics.LEFT|Graphics.TOP); g.drawString("HP: "+pet.getCurHP()+"/"+pet.getHP(), 55+24*4, y+fbg[indexi][indexj].getHeight()+10, //绘制生命值 Graphics.LEFT|Graphics.TOP); g.drawString("MP: "+pet.getCurMP()+"/"+pet.getMP(), 55+24*4, y+fbg[indexi][indexj].getHeight()+25, //绘制魔法值 Graphics.LEFT|Graphics.TOP); } 4.3.3添加敌方角色 本游戏中所有的敌方角色跟宠物角色本质上都是一样的,敌方角色也是随机出现的某一个宠物(等级视场景而定)。当玩家进入战斗场景后,左边显示出来的就是地方角色,右边显示的是自己宠物的角色。地方角色除了不能使用道具外,其他都跟宠物一样,拥有跟同宠物相同的属性和技能。 4.2.4添加NPC 该功能实现比较简单,把NPC作为地图的一个元素,以图片的形式把NPC添加到主地图中即可实现。在任务系统中为此添加一个碰撞检测,能实现和NPC对话,领取任务,切换场景等功能。 4.4添加宠物属性 为宠物添加属性,赋予宠物作战的能力,是角色系统中相当重要的一部分。这部分功能结构图如图4-9所示。 西南交通大学本科毕业设计(论文) 第33页 图4-9添加属性功能结构图 4.4.1属性介绍 本游戏的作战都靠宠物,所以宠物属性的设定相当的重要。本游戏中宠物的属性一共有名称、类别、等级、攻击、防御、魔攻、魔防、当前生命值、当前魔法值、最大生命值(当前等级下的生命上限)、最大魔法值(当前等级下的魔法上限)、当前经验值、最大经验值(当前等级升级所需经验值)、速度、出战状态。 名称:用来标识宠物。每个宠物都有自己的名称,如风精,飞头蛮,水妖等。在属性菜单中能显示出名称。每个宠物的名称都是固定的,不会随着其他属性的改变而改变。 类别:本游戏所有的宠物一共可分为5个系,它们是风、雷、地、水、火。其中风系克雷系,雷系克地系,地系克水系,水系克火系,火系克风系。合理的运用5个系的相生相克可以更轻松地完成任务。每个系的宠物属性分配差异都很大,如有的擅长攻击,有的擅长防御,有的擅长魔攻,有的速度很快。宠物类别是固定的,不会通过宠物的升级发生改变。 等级:宠物刚获得时为1级,上限为30级。宠物每升一级,它的很多属性(比如攻击、防御、魔攻、魔防、最大生命值、最大魔法值、速度等)就会获得相应的增加。同时宠物的当前生命值和魔法值也会回满。简单的说,同一个宠物等级越高,能力就越强。 攻击、防御:战斗时的伤害分为两种:物理伤害和技能伤害。攻击和防御的值是 西南交通大学本科毕业设计(论文) 第34页 决定物理伤害的大小的。简单的说在对方防御不变的情况下,攻击越高普通攻击的伤害也就越高;攻击不变的情况下,防御越高受到的伤害就越低。 魔攻、魔防:类似于攻击和防御属性,不过魔攻和魔防是跟技能的伤害有关。魔攻越高,技能伤害越高;魔防越高,受到的技能伤害值越低。某些辅助技能的效果还跟魔攻有关,如对于加血的技能,魔攻越高,回复的血量越多;对于增加攻击的技能,魔攻越高,增加的攻击越多。一般来说,技能造成的伤害会高于普通攻击造成的物理伤害。 当前生命值:生命值就是宠物的健康状况。宠物受到攻击时,当前生命值=原生命值-受到的伤害。当宠物在战斗中生命值低于0时,就被判定为死亡,自动退出战场。可以通过部分道具和技能恢复生命值。 当前魔法值:宠物释放技能需要消耗一定的魔法值。当前魔法值=远魔法值-释 当前魔法值时,则不能释放该技放技能消耗的魔法值。当技能所需消耗的魔法值大于 能。可以通过部分道具恢复魔法值。 最大生命值、最大魔法值:每个宠物在某个特定的等级下,都有一个固定的最大生命值和魔法值。当前生命值和当前魔法值不能超过最大生命值和最大魔法值。 当前经验值:宠物通过击杀敌人获取经验值。经验值可以积累,直到超过当前等级的最大经验值 。当前经验值的范围是0~最大经验值。 最大经验值:每个宠物在某个等级下,都有一个固定的最大经验值,当前经验值达到等于或大于最大经验值时,宠物就会升级。当前经验值变为0。 速度:决定宠物在战斗中的攻击顺序。简单的说速度越大,越先出手。 出战状态:宠物的出战状态有是和否两种,只有处于出战状态的宠物才能在战斗场景中显示出来,同敌方角色进行作战。出战状态由玩家自己控制,选择自己喜欢的或需要的宠物出战。 4.4.2宠物的初始属性 每个宠物都有一个固定的初始属性值,即宠物在一级时拥有的属性值。 表4-6是所有宠物的初始大部分属性值: 生命 魔法 攻击 防御 魔攻 魔防 速度 14 18 7 2 4 1 4 (1)水妖 14 10 8 2 2 1 7 风精 18 7 10 3 1 1 6 飞头蛮 23 13 7 3 2 0 4 哥布林 12 15 6 2 4 1 5 鬼火 20 25 10 3 6 2 6 (2)魅影 兽 西南交通大学本科毕业设计(论文) 第35页 20 14 12 3 3 1 10 贝壳风精 25 10 15 4 1 1 8 座狼 32 18 10 5 3 1 5 掘地虫 17 21 8 3 6 2 7 地狱犬 27 34 13 4 8 3 9 (3)沙华 渔人 27 20 17 5 5 2 13 箭鹰 34 14 20 5 2 1 11 灰鹰 44 25 13 7 5 1 8 犬魔 24 28 12 4 9 3 10 火蜥蜴 36 45 18 6 11 4 12 (4)缚灵 36 26 22 6 6 3 18 巨鹰 45 19 27 7 3 2 15 冬吼猎犬 59 34 18 9 6 2 10 石化蜥蜴 32 38 16 6 12 4 13 火童 47 59 23 7 14 5 15 (5)水蛇 47 34 29 8 8 3 23 树绳妖 59 24 35 9 4 3 19 吸血蝙蝠 77 44 23 12 8 2 13 熊地精 41 49 20 7 16 5 17 赤炎兽 60 75 30 10 18 6 20 (6)枭兽 60 44 37 11 11 4 30 双足飞龙 75 31 45 12 5 4 25 飞马 98 56 30 16 11 3 17 石化牛 52 62 26 10 20 7 22 焦土行者 74 93 37 12 23 8 24 (7)海妖 74 54 46 13 13 6 37 角鹰兽 93 38 55 15 6 5 31 鹏鸟 121 69 37 20 13 4 21 三臂巨怪 65 77 32 12 25 9 27 九尾狐 89 111 44 14 27 9 29 (8)独角 兽 89 65 55 16 16 7 44 树精 111 46 67 18 8 6 37 铁狼骑 145 83 44 24 16 5 26 骷髅射手 78 93 39 14 30 11 33 火巨人 104 130 52 17 32 11 34 (9)青晶 龙 104 76 65 19 19 8 52 狂战魔 130 54 78 21 9 7 43 紫晶龙 169 97 52 28 19 6 30 骨架龙 西南交通大学本科毕业设计(论文) 第36页 91 108 45 17 35 12 39 黄铜龙 表4-7宠物的初始属性值 4.4.3显示属性值 玩家可以通过查看属性菜单来获取宠物的属性值。通过调用paint函数来绘制各种属性值。在宠物类pet里面都有一个paint函数,用来绘制属性菜单。 PaintPublic 函数名 函数作用范围 Pet 类名 功能概要 绘制属性菜单 void Paint () 记述形式 详细说明 1..通过调用drawString函数来绘制属性 2.通过调用getFont函数来设置显示的字体大小 3.通过setColor函数来设置字体颜色 表4-8 paint函数式样 4.5宠物的升级 宠物的升级处理是决定游戏平衡性的一部分,对整个游戏的节奏和进程也起着相当大的影响作用。这部分功能结构图如图4-10所示。 图4-10升级处理功能结构图 根据前面介绍,宠物的升级会改变大部分的属性,如攻击、防御、魔攻、魔防、速度等。在pet类中声明一个levelUp的函数,继承于Pet类的各个宠物类(每个宠物都创建一个类,继承Pet类,如fengjing、feitouman类),对levelUp进行定义。升级后属性值的增加,当前经验值变为0,等级加一等功能都在这个函数中实现。当宠物进行完一场战斗后,会调用afterAttack函数进行判定,自动获取经验并检测当前经验和最大经验,当前经验大于或等于最大经验时,宠物就会升级,调用levelUp函数。 西南交通大学本科毕业设计(论文) 第37页 afterAttackPublic 函数名 函数作用范围 Pet 类名 功能概要 判定宠物是否升级 void afterAttack () 记述形式 详细说明 1. 宠物在完成一次战斗后的经验记录 表4-9 afterAttack函数式样 levelUpPublic 函数名 函数作用范围 Pet 类名 功能概要 宠物升级 void levelUp () 记述形式 详细说明 1. 控制宠物升级的属性和状态的改变 表4-10 levelUp函数式样 其中feitouman类中的levelUp函数代码如下: Public void levelUp(int i){ this.attackNumber=i*10;//攻击增加 this.defendNumber=i*3;//防御增加 this.CurHP=i*18;//当前生命值回满 this.CurMP=i*7;//当前魔法值回满 this.HP=i*18;//生命最大值增加 this.MP=i*7;//魔法最大值增加 this.MA=i*1;//魔攻增加 this.MD=i*1;//魔防增加 this.speed=i*6;//速度增加 EXP=0;//当前经验清0 this.level=i;//等级+1 MAXEXP=(15+5*i*(i-1));//升下一级所需经验值} 宠物每级所需经验 1-2:15 2-3: 25 3-4:45 4-5:75 5-6:115 6-7:165 7-8:225 8-9:295 9-10:375 10-11:465 11-12:565„„ 通项公式:n-n+1: 15+5*n*(n-1) 图4-11表示宠物升级前后的属性差异。 西南交通大学本科毕业设计(论文) 第38页 图4-11宠物升级前后属性差 4.3.4敌方角色掉落的经验 前面已经说了,敌方角色和宠物在本质上都是一样的,不过敌方角色具有一项宠物没有的属性,那就是掉落的经验值。即当你击败不同的敌方角色时,会获得相应的经验值。敌方角色掉落的经验由该角色的阶数和等级决定。一个n阶m级的敌方角色掉落的经验值为:5+2*n*(m-1)。 当一次战斗结束后,会自动调用getLostExp()函数,返回掉落的经验值,加在出战宠物的当前经验值上。 getLostExpPublic 函数名 函数作用范围 Pet 类名 功能概要 掉落经验 void getLostExp () 记述形式 详细说明 1. 计算击败每个敌方角色获得的经验值 表4-11 getLostExp函数式样 4.6宠物的合成 本游戏中,高级的宠物是由低级的宠物合成而来。而1阶的宠物是通过商店直接购买而来。高级宠物的属性往往比低级宠物的属性药高出很多,所以合成一个高级的宠物往往比用一个低级宠物打怪升级更划算。但是要合成一个高级宠物不是那么容易的,需要严格的合成公式,总的来说一个高级宠物需要一个低级宠物+灵魂石+魂种来合成。灵魂石和魂种需要通过击杀野怪和boss,完成一些特殊任务可以获得。 怪兽合成图: 西南交通大学本科毕业设计(论文) 第39页 风系 : 1 风精 2 贝克风精=风精+青绿石 3 箭鹰=贝克风精+猫眼石 4 巨鹰=箭鹰+绿宝石 5 树绳妖=巨鹰+月亮石 6 双足飞龙=赤炎兽+孔雀+淬毒之种 7 角鹰兽=巨鹰+蓝宝石+魔音之种 8 树精=九尾狐+翡翠石+凝血之种 9 狂战魔=火巨人+红宝石+邪灵之种 10 奇美拉 无法合成 雷系: 1 飞头蛮 2 座狼=飞头蛮+虎眼石 3 灰鹰=座狼+泪珠石 4 冬吼猎犬=灰鹰+赤尖石 5 吸血蝙蝠=树绳妖+琉璃石 6 飞马=双足飞龙+大猫眼石+空灵之种 7 鹏鸟=角鹰兽+巨型绿宝石+运命之种 8 铁狼骑=冬吼猎犬+血榴石+轻灵之种 9 紫晶=狂战魔+红曜石+淬毒之种 10 夜魇 无法合成 地系: 1 哥布林 2 掘地虫=哥布林+小块青绿石 3 犬魔=吸血蝙蝠+黎明石 4 石化蜥蜴=掘地虫+厚重蓝宝石 5 熊地精=犬魔+夜目石 6 石化牛=飞马+碧月石+魔音之种 7 三臂巨怪=鹏鸟+刀锋石+野蛮之种 8 骷髅射手=铁狼骑+火花石+噬骨之种 9 骨架龙=紫晶龙+琳琅石+噬骨之种 10 泰 无法合成 水系: 1 水妖 2 魅影兽=水妖+坠星石 3 沙华鱼人=魅影兽+翠榄石 4 缚灵=沙华鱼人+紫晶玉石 5 水蛇=缚灵+玄水宝玉 6 枭兽=熊地精+永恒之钻+玄水之种 7 海妖=骷髅射手+天蓝宝石+魔音之种 8 独角兽=三臂巨怪+海浪翡翠+轻灵之种 西南交通大学本科毕业设计(论文) 第40页 9 青晶龙=骨架龙+暗影珍珠+凝血之种 10 美杜莎 无法合成 火系: 1 鬼火 2 地狱犬=鬼火+火榴石 3 火蜥蜴=地狱犬+火焚石 4 火童=火蜥蜴+烈焰之钻 5 赤炎兽=火童+裂纹珍珠 6 焦土行者=枭兽+紫萤石+幽火之种 7 九尾狐=海妖+虚空之球+邪灵之种 8 火巨人=独角+天火钻石+噬骨之种 9 黄铜龙=青晶龙+影歌紫玉+野蛮之种 10 凤凰 无法合成 为了实现合成功能,需要在pet类中声明一个合成宠物的函数,creatPet()。给creatPet()传入pet参数,道具类型参数,再加入判断条件(符合以上的合成公式),如果符合判断,就能生出新的高级宠物。每个具体的宠物类对creatPet()进行定义,把合成公式加入进去。 creatPetPublic 函数名 函数作用范围 Pet 类名 功能概要 合成宠物 void creatPet () 记述形式 详细说明 1.判断是否能合成 2.生成新的宠物 表4-12 creatPet函数式样 第五章:系统测试 本章的内容主要是对一些功能模块的测试,检测其功能是否完善,能否达到预期的目的。 5.1添加英雄角色模块测试 5.1.1测试需求点描述 添加英雄角色模块点、基本功能名称、功能类型描述。 编号 需求点名称 功能类型 备注 R61101 英雄角色显示模块界面规范 界面 西南交通大学本科毕业设计(论文) 第41页 R61102 添加英雄角色模块功能实现 功能 表5-1添加英雄角色模块需求点描述表 5.1.2测试报告 测试添加英雄角色功能点的详细描述如表5-2所示 C61102 R61102 用例编号 功能编功能类显示角色 号 型 测试项目 添加英雄角色 操作人员 所有用户 环境要求 Windows7、java、eclipse 测试前提 已配置好J2ME 测试内容 测试英雄角色是否能在游戏主场景中移动并顺利显示各个状态 测试目标 角色成功显示和移动 2010-6-6 开 发 者 陈飞 提交测试时间 2010-6-7 测 试 者 陈飞 测试时间 1.打开eclipse,运行程序 测试步骤 2.进入游戏后,点击前后左右四个键 期望结果 英雄角色能正确显示出移动状态 实际结果 英雄角色能正确显示出移动状态 测试结论 ?成功 ? 失败 表5-2 测试添加英雄角色报告表 5.2作战场景添加宠物模块测试 5.2.1测试需求点描述 如表5-3所示,作战场景添加宠物需求点、基本功能名称、功能类型描述。 备注 编号 需求点名称 功能类型 R61203 作战场景添加宠物模块界面规范 界面 R61204 作战场景添加宠物模块功能实现 功能 表5-3作战场景添加宠物模块需求点描述表 5.2.2测试报告 C61204 R61204 用例编号 功能编功能类显示宠物 号 型 测试项目 添加宠物角色 西南交通大学本科毕业设计(论文) 第42页 操作人员 所有用户 环境要求 Windows7、java、eclipse 测试前提 已配置好J2ME 测试内容 测试不同状态的宠物能否顺利显示在作战场景中 测试目标 处于出战状态的宠物在作战场景正常显示 2010-6-6 开 发 者 陈飞 提交测试时间 2010-6-7 测 试 者 陈飞 测试时间 1.打开eclipse,运行程序 2.点击确认键,进入宠物属性菜单 3.点击手机1键,将宠物状态设定为出战 4.进入作战场景 测试步骤 5.退出作战场景 6.点击确认键,进入宠物属性菜单 7.点击手机1键,将宠物状态设定为不出战 8.进入作战场景 9.退出作战场景 处于出战状态的宠物能在战斗场景中显示出来;处于不出战状态期望结果 的宠物不能再战斗场景中显示出来 处于出战状态的宠物能在战斗场景中显示出来;处于不出战状态实际结果 的宠物不能再战斗场景中显示出来 测试结论 ?成功 ? 失败 表5-4 作战场景添加宠物功能报告表 5.3宠物升级模块测试 5.3.1测试需求点描述 如表5-5所示,用户提交工程模块需求点、基本功能名称、功能类型描述 编号 需求点名称 功能类型 备注 R61205 宠物升级模块界面规范 界面 R61206 宠物升级模块功能实现 功能 表5-5宠物升级模块需求点描述表 5.2.2测试报告 C61106 R61206 用例编号 功能编功能类基本功能 号 型 测试项目 宠物升级 操作人员 所有用户 西南交通大学本科毕业设计(论文) 第43页 环境要求 Windows7、java、eclipse 测试前提 已配置好J2ME 测试内容 测试宠物升级属性值是否发生相应改变 测试目标 宠物升级后属性发生变化 2010-6-6 开 发 者 陈飞 提交测试时间 2010-6-7 测 试 者 陈飞 测试时间 1.打开eclipse,运行程序 2.进入游戏后,点击确认键进入属性菜单 测试步骤 3.选择宠物,点击下键,经验增加,宠物连续升级 4.观察宠物升级后的属性变化是否正常 期望结果 宠物升级后,属性值相应增加 实际结果 宠物升级后,属性值相应增加 测试结论 ?成功 ? 失败 表5-6宠物升级模块功能报告表 西南交通大学本科毕业设计(论文) 第44页 结论 根据目前市场的导向,手机游戏的制作和研发越来越受到重视。本文的内容是手机RPG游戏角色系统的设计和实现,与其他系统:场景系统、任务系统、作战系统、技能系统、道具系统一起可以构成一个完整的RPG游戏,为其他系统的实现提供了接口。本文实现的功能主要有以下几点 (1)成功的添加各类角色的图片,使得各类角色能显示在不同的场景当中。并且点击各个按键,能显示不同的角色状态。添加角色图片是角色系统的基础功能,是最直观的展示给玩家的信息。这块功能如果做得出色,能第一时间吸引玩家的眼球。 (2)为各个宠物添加属性,赋予宠物作战的能力。这一块功能和场景系统、战 个系统的实现提供了接口。场景系统的野怪设斗系统、技能系统密切相关,为这几 定、战斗系统的伤害判定、技能系统的技能设定都和宠物的属性密切相关。添加属性直接影响到整个游戏的平衡性和可玩性。 (3)给宠物设定等级,并有升级的处理。升级现在是在很多游戏中都必有的一个元素,在RPG游戏中,升级更是必不可少的一项。疯狂升级才能对付越来越变态的BOSS,相信很多玩家都对此深信不疑。合理的升级处理,包括升级所需的经验值,升级后的属性变化,都是游戏中非常重要的元素,跟整个游戏的节奏都密切相关。 由于能力和时间的关系,本系统还有很多不足之处。大概有以下几点: (1)界面效果不够华丽。随着技术的进步,当今市面上很多游戏都是以华丽的界面博取玩家的眼球。RPG在强调故事性和剧情的同时,对界面要求也是越来越高。由于本人的水平原因,不能把界面做得华丽。 (2)面向对象思想贯彻不够深入。由于缺乏大型项目的经验,在这一块儿做得还不够好,使得代码看上去不够简洁。虽然大部分功能都已实现,但代码重复量较多。 (3)部分功能不够完善。由于和其他几个系统缺乏必要联系,一些功能没有达到预期的效果。在程序的展示上还不够好。 通过这次的毕业设计,我从中收获颇丰。首先是对J2ME有了深入的了解,能熟练地运用J2ME。其次是对面向对象思想又有了进一步的认识和提高,虽然还不是很精通,但也比以前上升了一个档次。然后是对手机游戏的构架和发展有了更深的认识的,能从设计者的角度来思考问题。对游戏的交互性、可玩性、平衡性有了一个系统的把握。 西南交通大学本科毕业设计(论文) 第45页 致谢 回首大四最后一学期的历程,有欢乐有艰辛,但是的的确确学到了许多技术知识,为毕业后继续求学与工作积累了宝贵的经验。 在此,首先要感谢我导师杨宁学,是他在百忙之中抽出时间对我的毕业设计与毕业论文进行关键性的帮助与启迪,在他的广博学识与严谨作风下我得以顺利的完成毕业设计项目。其次要感谢我的父母对我的养育之情,在四年的他乡求学之旅中给予我巨大的精神支持,滴水之情当涌泉相报。 感谢班级里的每一位同学,班级勤奋求实的学术氛围以及欣欣向荣的同学之情让我感动,丰富了我的生活,也让我逐渐的成长。 衷心地感谢在百忙之中评阅论文和参加答辩的各位老师~由于本人能力有限,论文中难免出现疏漏之处,敬请各位老师和同学批评指正,本人不胜感激。 西南交通大学本科毕业设计(论文) 第46页 参考文献 [1] Ben Collins-Sussman, Brian W. Fitzpatrick, C.Michael Pilato. Version Control with Subversion-for Subversion 1.5. 第2版. 由O'Reilly Media出版, 2008年7月 [2] William A. Nagel. Subversion Veresion Control: Using the Subversion Version Control System in Development Projects. 由Prentice Hall Professional Technical Reference出版, 2005年5月 [3] Mike Mason. Pragmatic Version Control using Subversion. 第2版. 2006年5月 [4] Daniel Berlin, Garrett Rooney. Practical Subversion. 第2版. 由Apress出版, 2006 年5月 [5] Freder ick P.Brooks. 人月神话. 清华大学出版社, 2007年9月 [6] Harvey M.Deitel. Java大学教程(英文原版). 电子工业出版社, 2005年6月 [7] Micheal J.Hernandez. 数据库设计入门经典. 中国电力出版社. [8] 王珊 陈红. 数据库系统原理教程. 第1版. 清华大学出版社, 1998年7月 [9] 计磊 李里 周伟. 精通J2EE. 第4版. 人民邮电出版社, 2007年5月 [10] 蔡敏 徐慧慧 黄炳强. UML基础与Rose建模教程. 人民邮电出版社, 2003年5 月 [11] 汪孝宜 吴士力 胡涛. 网络系统开发实例精粹(JSP版).第2版. 电子工业出 版社, 2007年6月 [12] 苗春义. java项目开发全程实录. 第1版. 清华大学出版社, 2008年6月 [13] 廖义奎. struts编程基础与实例精讲. 第1版. 中国电力出版社, 2006年1月 [14] 齐志昌 谭清平 宁洪. 软件工程. 第2版. 高等教育出版社, 2004年4月 [15] 周恒 王殊宇. JSP项目开发全程实录. 第2版. 清华大学出版社, 2004年7月 [16] 陈天河. hibernate项目开发宝典.第3版. 电子工业出版社, 2005年6月 [17] 孙卫琴. 精通Struts基于MVC的Java Web设计与开发.电子工业出版社, 2005 年8
本文档为【毕业论文 陈飞】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_079973
暂无简介~
格式:doc
大小:206KB
软件:Word
页数:69
分类:生活休闲
上传时间:2017-11-23
浏览量:9