游戏设计毕业论文-范灿钦

更新时间:2023-07-25 14:29:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

清远职业技术学院计算机应用系

专业毕业论文(设计)

毕业设计(论文)

题目: 水果碰撞

姓 名: 范灿钦

学 号: 02090701009

指导老师及职称: 李德平讲师

2010年 5月 15日

论手机游戏

目 录

论手机游戏 ................................................................................................................................ 2

目 录 ........................................................................................................................................ 2

摘 要 .................................................................................................................................... 3

ABSTRACT .............................................................................................................................. 4

1 前言 ...................................................................................................................................... 5

1.1国内手机游戏现状 ...................................................... 5

1.2关于J2ME ............................................................. 9

1.3J2ME技术优势 ......................................................... 10

1.4手机游戏产业特征 ..................................................... 10

1.5手机游戏未来发展趋势 ................................................. 12

2 开发环境与相关技术 ........................................................................................................ 14

2.1开发环境 ............................................................. 15

2.2JAVA语言特点 ......................................................... 15

2.3手机游戏安全相关 ..................................................... 15

2.4关于ECLIPSE .......................................................... 16

2.5JAVA应用程序 ......................................................... 16

2.6本章小结 ............................................................. 17

3 程序结构、设计与实现 .................................................................................................... 17

3.1本程序结构 ........................................................... 18

3.2本程序主要解决的问题 ................................................. 18

3.3本程序的流程 ......................................................... 19

3.4游戏绘制 ............................................................. 19

3.5GRAPHICS ............................................................... 19

3.6MIDLET ................................................................ 19

3.7PNG格式图片 .......................................................... 20

3.8判断两个小方块是否相同 ............................................... 20

3.9COMMANDACTION ........................................................... 20

3.10总结 ................................................................ 21

5 程序测试 .............................................................................................................................. 22

5.1打包 ................................................................. 22

5.2本程序未完善的功能 ................................................... 23

6 总 结 .................................................................................................................................... 24

6.1本程序的总结和展望 ................................................... 24

6.2本程序以后需完善的地方 ............................................... 24

4.3感想 ................................................................. 24

致 谢 .............................................................................................................................. 25

参考文献 .................................................................................................................................. 26

附录 代码 ................................................................................................................................ 27

这是一款大众化的益智类小游戏,随着3G的浪潮,手机游戏日趋大众化,层出不穷的手机游戏受到大众热捧,J2ME现在最流行的就是制作手机游戏,况且现在无线游戏编程又是一个很热门的话题,不但因为它具有极强的趣味性,更重要的是它给我们带来了无限的商机。随着JAVA手机的诞生,手机游戏编程的灵活性与轻便性使得JAVA手机游戏成为游戏市场的又一亮点。本论文着眼于开发一款益智对对碰游戏。

这是一款名叫《水果碰撞》的益智类手机游戏,主要考虑到益智游戏适合各个年龄层次的人玩,提供给大家茶余饭后娱乐的休闲娱乐。

本论文主要分析手机游戏现状,对行业的相关分析,以及本程序用到的相关技术和实现。由于本人技术水平有限,程序功能比较简陋和单调,更多的功能只能后续增加和完善。

关键字:3G 益智 手机游戏

ABSTRACT

This is a popular puzzle game, with the wave of 3G, mobile games become

increasingly popular, emerging mobile game comparable to PC games, J2ME is the most popular is the production of mobile games, wireless game programming Now that is a very hot topic, not only because it has a strong interest, more importantly, it brought us unlimited business opportunities. With the birth of JAVA mobile phone, mobile phone game programming flexibility and portability makes the JAVA mobile games become another highlight of the games market. This thesis focuses on developing a puzzle game right right touch.

This is called a "fruit collision" of the puzzle mobile games, is playing a major puzzle game for people of all ages to play, provided to the staple of leisure entertainment.

This paper analyzes the status of mobile phone games, the trade-related analysis, and related technologies used in this process and implementation. Since I am limited skills, procedures, functions rather crude, and dull, more follow-up function can only increase.

Keyword:3G Puzzle Gmaes

1 前言

1.1国内手机游戏现状

随着人们的生活水平提高,手机不单单只是一个作为一个通讯工具,更多的手机附加功能出现,如MP3、照相机等,而手机游戏更是成为了大众茶余饭后休闲的好工具,不受时间和地点的限制,拿在手上即刻随时随地的玩。

中国手机游戏目前还处于初期阶段,手机游戏发展的第一个分水岭是在2002年,中国移动推出百宝箱的业务,这时才是有了收入的起点。经过7、8年发展,常用手机游戏的用户仅有1000~2000万用户,占7亿移动用户来说比率很低,所以说目前还是早期阶段。在2008年之前,整个市场是以百宝箱为最主要的收入来源,但在2008年初市场有所变化,Free渠道出现了,如腾讯,当乐等以免费下载通过短信代收计费的渠道;还有以MTK为代表,如斯凯、扬讯,雪鲤鱼等将平台内置到客户端之后,也聚集了很多用户。这时,我们发现有很多中低端的用户,因缺乏其它的娱乐方式,反而对手机游戏有更大的需求,市场有所繁荣。2008年底,市场呈现出以中国移动为代表的运营商和Free、MTK三分天下的格局。在这在个格局形成之后,市场有所质的变化。移动开放性低于另二个方面,所以发展基本持平,而Free和MTK发展却异常迅猛,2008年实现翻番,2009年因遇到一些小问题增长率下降,但也在50~60%。这个格局在2010年对于移动来说,形势非常严峻,移动也估计到这个形势,所以从2009年开始,一直在进行战略调整,推出一些重大的举措。比如建立了江苏游戏基地;在业务平台上做出很多新的规划,如建立G+游戏平台、独立包等;比如与CP直接合作等几方面都显示出移动的大手笔,所以在2010年移动的增量也有所期待。单机游戏,消耗时长比较短,一般的游戏用户在单机游戏上所消耗的时间和资金是有限的,平均ARPU值在5~10元,生命周期一般在几个月。同样,单机开发的投入也比较小。但我不是割裂地看这个问题,比如暴雪为什么在中国这么成功?而很多游戏,如征途等,花了很大力气在营销上,但最终结果却并不理想。这有二方面原因:游戏的品质真的是非常好,足以让用户口碑相传;另一方面就是它有庞大的基础用户。而这些基础用户来自于哪里?来自于当年大量盗版用户培养而来,如魔兽争霸、星际争霸,这些游戏当年单机版在中国没有赚到钱,但他的盗版却培养了成千上亿的用户,所以当这些产品一旦宣布推出网游之后,大量的盗版用户趋之若鹜成为其正版用户。单机游戏在中国具有非常多元化的市场,任何类型的游戏,比如动作、射击、休闲、MMORPG 各种游戏都可以其用户群。而国外则不同,欧美市场、日本市场主要以休闲游戏为主。

中国有着近3亿的手机用户,即使只有10%的用户,每月只下载一款游戏,也足以使其形成一个规模庞大的产业。但是目前仅有不足1%的用户下载过手机游戏,这使得这块被无数人看好的市场并没有达到和人们预期相吻合的水平。人们似乎更容易接受移动其他的增值业务(比如短信、彩铃业务等),而对手机游戏的认知度却相当低。

造成手机游戏市场认知度低的主要原因

1、 平台统一的问题 :

这是制约手机游戏发展的主要原因。现在手机的品牌有几十种,每个品牌又有几十款甚至上百款的手机,这无论是对游戏的开发者,还是普通的消费者来说,都是一个让人头痛的问题。对于开发者来说,要想得到更多的用户,就必须针对每款手机开发相应版本的游戏,这就造成了开发成本高、周期长的问题。而对于普通消费者来说,在玩游戏之前,必须要从众多游戏版本中找到适合自己手机版本,这就导致一些玩家对手机游戏敬而远之。

2、 手机机能的制约

由于手机游戏只是手机功能的延伸,所以存在着许多不利于游戏的因素。比如手机的屏幕小,颜色少,没有专门的游戏遥杆,游戏的容量小,内容简单,限制了游戏的多元化。在游戏业内有一个怪圈,一个游戏要想获得成功,这款游戏必须适合各个层次的玩家。许多真正被职业玩家认可的高品质的游戏,往往由于过于专业的操作和过于复杂的情节,被大多数玩家抛弃。就像当年PS一举打败老牌游戏商SEGA和任天堂一样,PS靠的不是游戏的品质,而是游戏的多元化。网络游戏之所以可以迅猛发展起来就得益于它的多元化、易操作性和轻松的游戏气氛,从而吸引了大量从未玩过游戏的人加入到游戏中来。所以广大手机厂商应该致力于提高手机的机能,使游戏多元化。

3、 下载游戏的操作过程过于复杂:

如今若想下载游戏,必须要有一部支持Java和GPRS的手机,然后还要设置并开通GPRS,仅这两个要求,大概就要淘汰一半的手机用户。满足这两个条件之后,还要去游戏百宝箱才能下载,用户在选择下载哪款游戏时,并没有相应的文字和截图参考,而且百宝箱的界面每屏只能显示几个游戏,这样一来,玩家就只能凭借游戏的名字来判断是否要下载该款游戏了,这就给许多小的游戏提供商提供了欺骗玩家的机会。最常见的就是把一款名不见经传的垃圾游戏,冠以时下增流行的Pcgame的名字来滥竽充数,

不知内情的玩家则以为是移植版,满心欢喜的下载,结果可想而知。这样一来不仅损害了玩家的利益,而且还给一些大的游戏供应商造成了经济损失,往往他们斥巨资引进的国外手机游戏大作却由于没有套用某个流行的游戏的名字而被广大玩家忽略。比如摇滚校园、银河美少女、勇闯气球岛等在国外非常卖座的游戏,在国内却被许多玩家忽略。然而,这种现象并非是无法避免的,看看其它走红的无线增值业务,之所以能够迅猛发展起来全都得益于可以在网上直接下载,游戏也是如此。这就需要我们sp在做好与移动部门沟通合作的同时,加紧下载页面的完善。毫无疑问未来游戏的下载将主要来自于网站,而百宝箱的下载方式,已成为下载业务发展的主要瓶颈。

4、 整个行业的推广力度不够:

从手机厂商,到手机游戏的CP,再到手机游戏的SP以及游戏网站、游戏杂志,对手机游戏的扫盲和推广的力度都不够。大多数手机用户,其中包括大量玩家,在选择手机时,并没有把Java游戏功能当作必备功能,这导致许多玩家由于没有合适的手机,所以只能放弃手机游戏。除了宣传以外,广大手机游戏的CP和SP应该尽可能的为玩家提供更方便下载游戏的方式。比如,在手机中内置多个经典游戏的链接,只有用户激活时才计费,这样既方便了用户,又为SP带来的收益,何乐而不为呢?

5、 手机价格的问题:

手机价格一直是困扰广大手机游戏爱好者的一个问题,一部配置齐全的java手机大都要在2000元左右,这足以使好多学生玩家望而却步。而许多拿着高级手机高收入阶层的人却没有时间玩手机游戏,这个现象同样制约着整个手机游戏行业的发展。我们可以从网络游戏的发展过程中发现很多值得借鉴的东西。网络游戏这个概念,早在10年前就有了,正式进入中国大概也有6、7年的时间,但是为什么在最近2、3年才红火起来的呢。主要是由于玩游戏的费用问题,5、6年以前,普通拨号上网的成本在10多元/小时,所以当时根本没有网络游戏发展的空间。然而短短的3年过去了,随着上网各种资费的下调,网络游戏就如同洪水一般,在全国范围内迅速发展起来。正是由于网络游戏,盛大网络陈天桥的财富只用4年便翻了8000倍,从而进入2003年百富榜第10位。由此可见,不论什么样的事物,都需要适当的环境,才能得以发展。手机游戏现在缺的就是一个适当的环境。

6、游戏品质参差不奇:

目前有许多游戏厂商一味的追求低成本和短期利益,造成游戏产品的质量粗糙。目前开发手机游戏产品的投入和成本相对少,进入该市场的SP较多。但多数SP由于受技术、成本投入等因素的影响,产品设计从游戏方案过程设计到任务设计均有欠缺,游戏质量粗糙,在产品品质上下工夫相对较少,这也导致一些玩家对手机游戏失去兴趣,造成用户的流失。在这种环境下,出于对自己权益的保护,玩家在下载游戏时除了关心游戏的内容以外,还要看是由哪家SP提供的游戏。比如像米格、新浪、飞天等比较有实力的SP提供游戏的质量自然相对较高。

1.2关于J2ME

J2ME是SUN公司针对嵌入式,消费类电视产品推出的开发平台,与J2SE和J2EE共同组成JAVA技术的三个重要的分支。J2ME实际上是一系列规范的集合,由JCO组织制定相关的java Specification Request(JSR)并发布,各个厂商会按照规范在自己的产品上进行实现,当时必须要通过TCK测试,这样确保兼容性。比如MIDP2.0规范就是在JSR118中制定的。虽然 Java 已经被用到许多企业级软体上,可是其实骨子里面还是非常适合用在嵌入式系统之中。Java平台演进到Java2后,Java平台分别针对不同领域的需求被分成四个版本,亦即J2EE、J2SE、J2ME以及JavaCard。其中J2ME定位在消费性电子产品的应用上。这个版本针对资源有限的电子消费产品的需求精简核心类库,并提供了模块化的架构让不同类型产品能够随时增加支持的能力。这个版本的应用层面相当广泛,会是未来Java平台发展的重点项目。

J2ME在1999年的JavaOne开发人员大会上初次亮相,它的目标是面向智能无线设备和小型计算机设备的开发人员。J2ME的一个关键优点是,J2ME与所有支持Java的设备都是兼容的。支持Java的设备就是任何运行Java虚拟机器的计算机。Motorola、Nokia等生产厂商都生产支持Java的设备。、

J2ME平台是由配置(Configuration)和简表(Profile)构成的。配置是提供给最大范围设备使用的最小类库集合,在配置中同时包含Java虚拟机。简表是针对一系列设备。

提供的开发包集合。在J2ME中还有一个重要的概念是可选包(Optional Package),它是针对特定设备提供的类库,比如某些设备是支持蓝牙的,针对此功能J2ME中制定了JSR82(Bluetooth API)提供了对蓝牙的支持。

目前,J2ME中有两个最主要的配置,分别是Connected Limited Devices Configuration(CLDC)和Connected Devices Configuration(CDC)。

作为第一个面对小型设备的Java应用开发规范,CLDC是由包括Nokia,Motorola和Siemens在内的18家全球知名公司共同协商完成的。CLDC是J2ME核心配置中的一个,可以支持一个或多个profile。其目标主要面向小型的、网络连接速度慢、能源有限(主要是电池供电)且资源有限的设备,如手机、PDA等。

1.3J2ME技术优势 J2ME技术使用Java语言作为编程语言,是现在手机程序开发中的一种通用技术,是现在手机支持最广泛,也是开发人员使用最多的一种技术。

该技术的优势为:

支持的该技术的手机种类最多。根据2005年9月份SUN公司公布的数字,现在全球支持该技术的手机超过7亿部。

技术通用。使用该技术开发的程序,可以很方便的在各种手机型号之间进行移植,开发成本较低。

免费。该技术针对开发者免费,开发者在开发时不需要支持专利费用。该技术的劣势为:

访问系统的功能有限。一般情况下,无法访问手机中的通讯录、短信息等。 运行速度相对较慢。但是程序的运行速度,用户在实际使用过程中可以忍受。 设备限制多。在内存和文件大小方面,手机对于该技术的限制较多,表现形式有限。

1.4手机游戏产业特征

1.精品手机游戏是市场发展主流:据统计,2008年百宝箱有上万款手机游戏在运营。其中,精品游戏最受到玩家的欢迎。据掌控网调查发现,一款高品质的游戏,其生命力也相对持久。以《拳皇》为例,其生命周期较之一般制作的游戏,要多出1-2年时间。制作精良、画面流畅细腻、更贴近玩家需求的高品质游戏,能为用户提供更多的选择和乐趣,才能在众多游戏的激烈竞争中立于不败之地。游戏开发商也纷纷意识到精品游戏带来的持久利润,开始投入大量的人力、物力和精力开发高品质游戏。精品手机游戏正日益成为市场发展的主流。

2.网游连动手机游戏发展:据掌控网提供的最新数据显示,中国市场上运营的手机

网络游戏已高达30余款。这些手机网络游戏通过不同的渠道占据了相当的市场份额。手机网络游戏由于而手机终端随时互联的特性让手机网游相对于PC平台具有先天的优势。即将开通的3G网络,也将为手机网游带来全新的发展。3G将为手机联网游戏提供一个更快的速度和用户体验,为手机游戏在这个大的游戏产业里增加市场份额提供基础。

3.手机游戏开发成热门行业,手机游戏人才紧缺。随着3G时代的到来,各种移动上网、无线传输技术的日新月异,持续快速发展的手机游戏业被看作是新兴的朝阳行业。手机游戏开发人才的市场需求也步入了快速增长期,但随着手机游戏市场快速发展的同时,专业人才的匮乏也成为手机游戏市场发展的绊脚石。调查显示,包括手机游戏在内的中国游戏人才缺口高达60万,主要集中在游戏策划人员、游戏开发人员、美术工程师、市场拓展人员等。而一款手机游戏至少要由三个熟练的工程师共同开发一个月时间才能完成。正因为手机游戏人才紧缺,反过来也在相当程度上制约了这一市场的发展。

4.抄袭成风,手机游戏迫切需要良性发展:百宝箱中,一款游戏,内容相同主题相同,被不同的开发商改头换面一番就继续运营,不同厂商间产品同质化严重,手机游戏抄袭现象也是值得关注。许多开发商花数月时间,投入大量人力物力开发出的游戏,就这样被一些无良份子恶意剽窃,给快速发展中的手机游戏市场带来了极其恶劣的影响。手机游戏在持续发展的同时,迫切需求一个健康有序的市场环境。事实证明,自主创新才是占领据市场主导地位的核心竞争力。

5.盗版盛行,市场接力召唤正版游戏,手机游戏需健康发展:手机游戏这一新兴行业,以其旺盛的生命力和不可限量的发展空间,成为盗版的头号觊觎对象。互联网的发展以及手机这个终端的特殊性更赋予了手机游戏盗版更强的杀伤力。手机单机游戏盗版情况严重。目前已知的知名盗版游戏网站、手机Wap站就各有30余家,每个网站包含的盗版游戏都有万余款以上。盗版手机游戏网站横行,夺取了本该属于手机游戏开发商和服务商的利润,严重限制了手机游戏市场的规范发展。打击盗版,呼吁玩家下载正版游戏,成为一个迫切需要解决的问题。手机游戏产业的健康稳步发展,需要从营运商到游戏制造商、发行商、玩家、终端商甚至手机游戏媒体的协力配合。

6.销售渠道,盈利模式未明,行业并购整合成未来趋势:随着手机游戏的火暴,内容开发、运营和手机制造三方面合作关系的日益紧密,一条完善的手机游戏产业链已经

形成。然而,手机游戏的最佳销售渠道及赢利模式仍不够明确。目前手机游戏的主要销售渠道是移动梦网的百宝箱,用户在百宝箱下载游戏并付费。到目前为止,中国移动是我国手机游戏最好的销售渠道,并且,在短期内,中国移动作为运营商仍将是手机游戏的主流运营模式。”但百宝箱渠道存在机型限制过多,现有机型不齐全、商业模式单一等不完善之处。整合渠道、创新盈利模式迫在眉睫。在市场需求的扩张不断增大、市场集中度低的情况下,收购整合是行业的必然趋势。这种整合是在产业发展到一定规模,某些企业欲扩大市场份额,抢占市场龙头地位的情况下出现的。一方面,行业内的并购,能加快游戏产业的发展步伐,另一方面,也促使厂商差距逐渐拉大,出现更为专业全面的综合内容提供商。

7.3G带动手机游戏飞速发展,手机游戏未来充满希望:随着3G的脚步越来越明晰,手机游戏将进入实质性的市场开发阶段,手机游戏的应用也将更为普遍。3G对于手机游戏来说,意味着更强的终端表现力、更快的传输速度,它会在各方面为手机游戏开发商提供更好的展现舞台,比如手机网游,会随着3G的到来上升到一个大的台阶甚至成为新型的产业。可以预见,3G的到来,将为手机游戏发展带来大幅度的跃进和更显而易见的实际收益,手机游戏的大规模爆发指日可待。

1.5手机游戏未来发展趋势

随着3G牌照的发放和3G网络的普及,消费者最关注的应该是网络视频通话,再者就应该是手机网络游戏了,3G的数据传输速率远高于第二代的GSM、TDMA等数字手机,能让消费者享受到更高的游戏质量,势必也能将PC上的一部分游戏玩家引入到手机游戏行列中。

手机性能的提升刺激手机游戏需求的增长,手机功能从最初的电话+短信的单纯通讯功能发展到强大的手持通讯终端,智能手机也由早期的高价手机到今日的白菜价,手机硬件的强大,也在刺激用户对应用的需求,在用户众多的需求里面,又以游戏为主。无论是在智能手机上还是非智能手机上都能看得到几个经久不衰的经典小游戏:贪食蛇、俄罗斯方块、华容道

智能手机的系统也在不断更新,如诺基亚的代表Symbian系统、多普达的Windows系统,Google的Android系统都在不断更新,具有更好的兼容性。而且用户基本可以根据自己的喜好去刷自己喜爱的系统,现在的智能手机已经能够支持各个领域的游戏。

现在的手机屏幕越来越大,屏幕色彩分辨率也很高,游戏的体验效果越好,目前一些手机游戏的体验和效果已经不亚于当初PC上的游戏了,有些手机还配备了摇杆,确保用户在玩游戏时的可操作性。向PC网络游戏看齐,单机版的手机游戏现在包罗万象,基本覆盖了所有游戏类型,有发掘前景,但并没有手机网络游戏的发掘潜力大,就好比以前PC上主要是以单机游戏为主,现在是以网络游戏为主一样。在手机游戏发展的日子里,游戏的交互性必定占据重要地位,更多PC上的游戏玩家把游戏当作一个交友平台。

游戏操作、功能、制式,要手机游戏做到像PC游戏那样也许不是不可能,但手机的操作没PC那么方便,手机屏幕条件也不允许,所以手机游戏要做到容易上手,游戏类型应该也是以想在最热门的在线角色扮演游戏(MMORPG)类型为主。

收费,主流还是以游戏免费,道具收费为主,这样的游戏门槛比较低,只要注册账号就可以进行游戏,也是目前大部分玩家所能接受的。

注重质量、重视服务,一款游戏的质量关乎到这款游戏的生命周期,一款漏洞百出的游戏也许并未推向市场就已经夭折了。游戏后期维护和游戏服务也关乎到游戏的人气,一款以玩家为中心的游戏必定能留住更多的老玩家和吸引更多的潜在玩家。

提高游戏互动性,现在的大部分游戏玩家并不是把游戏当做一个单纯的游戏,更多的是把游戏当做一个交友平台,结交五湖四海的朋友才是他们游戏的真正目的,甚至有些是把游戏当做了谋生工具,做商人倒卖道具。

提高网络游戏的联机速度,没有一个玩家愿意接受一款很“卡”的游戏,也没有一个玩家愿意等待几十秒的“网络延迟”,所以要确保游戏的服务器运作良好。

在我认为,就目前的情况来说,手机游戏仅仅还是电信移动数据增值业务中的一项业务,但伴随着中国移动GPRS和中国联通CDMA1X数据业务的开展,手机游戏业务将会成为2.5G数据业务的一个重要的应用领域,加上手机越来越成为人们身边必不可少的工具,随时随地使用的可移动性,以及广泛的用户基础,这一切都能够很好的满足未来人们对娱乐游戏的需求。有需求就有市场,目前,中国有8000多万电脑网络用户,而中国的手机用户却已经超过3亿。与PC游戏不同,手机游戏摆脱了线缆的束缚,具有随时、随地、随身的特点,更适合人们在移动中休闲和娱乐。显然,手机游戏产业一旦启动,其能量将不亚于目前的电脑网络游戏。虽然目前手机游戏用户数只占3亿用户的很小一部分,但随着手机游戏产业发展环境的日益成熟,其发展速度将日行千里。

2 开发环境与相关技术

2.1开发环境

操作系统:Microsoft Windows XP

程序语言:JAVA2

开发包: Wireless Toolkit 2.5.2

IDE:Eclipse

2.2JAVA语言特点

1.面向对象:现实世界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。

2.平台无关性:Java是平台无关的语言是指用Java写的应用程序不用修改就可在不同的软硬件平台上运行。平台无关有两种:源代码级和目标代码级。C和C++具有一定程度的源代码级平台无关,表明用C或C++写的应用程序不用修改只需重新编译就可以在不同平台上运行。Java主要靠Java虚拟机(JVM)在目标码级实现平台无关性。

3.分布式:分布式包括数据分布和操作分布。数据分布是指数据可以分散在网络的不同主机上,操作分布是指把一个计算分散在不同主机上处理。Java支持WWW客户机/服务器计算模式,因此,它支持这两种分布性。对于前者,Java提供了一个叫作URL的对象,利用这个对象,你可以打开并访问具有相同URL地址上的对象,访问方式与访问本地文件系统相同。对于后者,Java的applet小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系统执行效率。

4.可靠性和安全性: Java虽然源于C++,但它消除了许多C++不可靠因素,可以防止许多编程错误。第一,Java是强类型的语言,要求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;第二,Java不支持指针,这杜绝了内存的非法访问;第三,Java的自动单元收集防止了内存丢失等动态内存分配导致的问题;第四,Java解释器运行时实施检查,可以发现数组和字符串访问的越界。

2.3手机游戏安全相关

目前市场上有许多免费的、商用的反编译软件,都能够生成高质量的反编译后的源代码。所以,对开发人员来说,如何保护Java程序就变成了一个非常重要的挑战。保护程序的的方法基本可分为4种,隔离class文件、加密class文件、使用本地代码、使用混淆技术。在此只简单的说明下,见下表:摘自清风网络。

2.4关于Eclipse

Eclipse是一个开源的,基于java的可扩展开发平台。Eclipse相关的许可证是大多数基于Common Public License(CPE),CPL是一个为Open Sourse Initiative(OSI)所认可的许可证。由于Eclipse Foundation的建立,Eclipse的许可证将逐渐趋向于使用Eclipse Public Licese(EPL),EPC是一个与CPL相类似的许可证,正在进行OSI的认证工作。作为当今最流行的JAVA开发IDE之一,java社群使用Eclipse以及基于Eclipse技术而来的IBM Websphere的开发者已经超过了半数。Eclipse本身只是一个框架和一组响应的服务,并不能够开发什么程序。在Eclipse中几乎每样东西都是插件,实际上正是运行在eclipse平台上的种种插件提供我们开发程序的各种功能。同时各个领域的开发人员通过开发插件,可以构建与Eclipse环境无缝集成的工具。Eclipse的发行版本都已经带有最基本的插件,方便了开发人员。

2.5JAVA应用程序

用Java可以写两种类型的程序:小程序(又叫Java Applet)和应用程序(Java Application)。小程序是嵌入在HTML文档中的Java程序;而Java应用程序是从命令行运行的程序。对Java而言,Java小程序的大小和复杂性都没有限制。事实上,Java小程序有些方面比Java应用程序更强大。但是由于目前Internet通讯速度有限,因此大多数小程序规模较小。小程序和应用程序之间的技术差别在于运行环境。Java应用程序运行在最简单的环境中,它的唯一外部输入就是命令行参数。

2.6本章小结

这一章主要介绍JAVA语言特点,开发环境,开发工具和手机游戏安全的一点知识。

3 程序结构、设计与实现

3.1本程序结构

3.2本程序主要解决的问题

1.玩家通过手机导航右键进入游戏,游戏会出现一个4*4的方块小地图,玩家通过中心键翻开每个小方块,完成一共5个关卡的游戏。

2.本程序是一个比较简单的休闲类小游戏,由于实习的原因,时间有限,所以功能都比较简单,前提是在能正常运行并且能简单的进行游戏,然后再视时间的宽度再加各类功能。

3.游戏虽然比较简单,但设有5个关卡,每个关卡会随着关卡的难度增加而游戏时

间减少,以保持玩家对游戏的热情和追求。

4.本程序的技术主要是判断两个方块是否相同。

3.3本程序的流程

本程序的流程是进入游戏,然后有开始游戏、帮助、关于、退出四个功能选项。左右两边有进入游戏和退出游戏两个功能,并明显显示在模拟器上,选择开始游戏,则会进入游戏,用最快的速度找出每两两相同的水果图片,一共5个关卡,完成5个关卡则游戏结束,游戏过程中可以选择暂停功能,游戏时间则会停止。选择帮助项则会显示出游戏的帮助和操作方法,选择关于项则会出现关于这款游戏的介绍,选择退出项则会退出程序。

3.4游戏绘制

本程序的所有几乎是用Graphics绘画

出来的,开始界面底部有用drawString()绘

画开始、帮助、关于、退出,然后再用开始、

帮助等png格式的图片覆盖,造成选择弹起等

效果。g.setcolor(0,0,0)设置背景颜色为黑色。

3.5Graphics

Graphics类提供了简单的2D绘图功

能。它具有24位深度色彩的绘制能力,以三

原色分别各占一个字节表示其颜色。程序只能

在paint()函数中使用Graphics绘制,

GameCanvas可调用getGraphics()函数直接绘

制在缓冲区上,可以在任何时间请求传输到前

台。其对象会被传给Canvas的paint()函数,

以便最终显示。

图2

3.6Midlet

每个Midlet都有三个状态,分别是pause、active和destroyed。在启动一个MIDlet的时候,应用管理软件会首先创建一个MIDlet实例并使得他处于pause

状态,当

startApp()方法被调用的时候MIDlet进入active状态,也就是所说的运行状态。在active状态调用destroyApp(boolean unconditional)或者pauseApp()方法可以使得MIDlet进入destroyed或者pause状态。值得一提的是destroyApp(boolean unconditional)方法,事实上,当destroyApp()方法被调用的时候,AMS通知MIDlet进入destroyed状态。在destroyed状态的MIDlet必须释放了所有的资源,并且保存了数据。如果unconditional为false的时候,MIDlet可以在接到通知后抛出MIDletStateChangeException而保持在当前状态,如果设置为true的话,则必须立即进入destroyed状态。

3.7Png格式图片

PNG(Portable Network Graphics)格式是MIDlet唯一支持的图象格式,PNG具体格式由PNG Specification,Version 1.0定义的。PNG格式提供透明背景的图象,这对绘制游戏画面和被操纵主角极有帮助。飞机之间或与白云碰撞时就不会因为背景有特定的颜色,显示出的效果像贴上的图片而缺乏真实感,物体之间轻微重叠时最上层图片也不会覆盖超过其有效象素外的部分。

PNG格式图片中包含许多定义其图片特性的冗余部分(Chunks)。这些代码包含在每一个单独的png格式图象中,然而如果将多个png图象合并在一张幅面稍大一些的整图中,多个chunks就可以得到精简,图片的大小可以得到控制。使用Image类中的

createImage函数可从整图中分割出所需要的元素。在Game包中的TiledLayer和Sprite类都整合了这样的功能。本程序中的地图元素都集成在一张beijing.png图片中,实现了方便的管理和程序体积的精简。

3.8判断两个小方块是否相同

用一个2维数组装载小方块的两种状态,盖住和打开。用1代表盖住,2表示打开。Open_Block==-1&&Open_Block==-1表示如果点击两次的方块都相同,Open_Block_X = Block_X; Open_Block_Y = Block_Y;表示点击的小方块翻开会立刻被Block_X原图替换。如果两个点击的小方块相比较是一样的,则返回0,因为0代表方块消失。

3.9commandAction

每个创建Command实例的J2ME的应用程序

也必须创建实现CommandListener接口的实

例。每当用户通过commandAction()方法的方

式与命令进行交互的时候,就会通过

CommandLIstener.所以实现CommandListener

的类必须实现commandAction()方法。

在commandAction()方法中,“暂停”时,

表示玩家点击了暂停键,此时,contiue赋值

为false,游戏画面的绘制及游戏相关的运算

暂停,并且,使用removeCommand(c)语句将“暂

停”移除,使用addCommand(new Command("

继续",Command.OK,2));将”继续“按纽”添

加进来。当玩家点击“继续“时,contiue赋

值为true,并且,一定要调用start()方法, 图2

否则继续功能不可用。

3.10总结

本章节主要介绍程序的架构和实现,程序的流程。

本文来源:https://www.bwwdw.com/article/8oqm.html

Top