Android小游戏之2048课程设计.doc
题目Android小游戏之2048
院系
专业软件技术专业
学生姓名宋建
学号DZXXX140
二O一五年六月八日
目录
1概念
1.1游戏背景-----------------------------------------------------1
2功能设计
2.1界面设计-----------------------------------------------------2
3结果展示
3.1游戏开始界面-------------------------------------------------7
4结论
5参考文献
5参考文献-------------------------------------------------------8
Android小游戏之2048
1概述
1.1游戏背景
《小3传奇》的悲剧以及《2048》的崛起。
近期,新出的一款叫做《2048》的安卓手游十分的火爆,几乎游戏下载排行榜的前10名都能看到“它的身影”。然而并不是每一个人都知道一件事,那是一个关于“2048”诞生的故事。
故事的开展是这样的,《2048》的祖先是一款名为《Threes》〔中文名为《小3传奇》〕的手游。《小3传奇》的两位开发者花了近一年半时间才开发出这个游戏的核心玩法,却在其上架Appstore后仅21天就被《1024》抄了过去。最让人意想不到的是,《2048》那么更为迅速,19岁的GabrieleCirulli只用了一个星期改编前两者游戏,却获得最大的成功,《Threes》却不被人知。
而到了现在,这类游戏从发布到现在,不管是AppStore还是Android市场,下载量已经远远超越了千万,网上各种版本的都有,比方朝代版,后宫版,甲乙丙版,生肖版等。
1.2游戏开发
由于本人十分喜欢《2048》这款手游,在了解了本次课程设计是设计一个Android平台下的软件之后,就选定了《2048》作为本次课程论文的课题。
在此次课程论文的制作过程中,我将运用我在课上学习到的知识以及java编程知识通过网上现有的资料尝试完成此次课程的开发。
要开发这一款游戏,要根据以下几步来完成:
首先是要对这款游戏的代码分析。对整一个游戏,要将各个部位分割成其对应部位的功能代码,并且逐一去分析实现其中不同的功能。
其次是游戏的流程。在做好每一个局部的代码之后,就需要把所创造的各个关键局部拼接起来,因此,就需要先把该游戏的流程一步一步的弄清楚。
再者是对《2048》这一款游戏的算法分析。对于整个游戏而言,最主要的心脏就是这一款游戏的算法,游戏好不好,就看这一款游戏的算法是不是符合逻辑。《2048》这一款游戏的算法分为上下左右自个方向的,具体的下面分析。
《2048》中每个格子的数据和颜色的刷新。在每一次移动之后,几乎在这4*4的每一个方格上的数据都会变化,因此在每一次移动之后,每一个方格上的数据都要刷新一次。相对的,每一个数的背景颜色是不同的,也就是说,在每一次数据刷新的时候,每一个方格上的颜色也要同样的刷新一次。
最后是可不可以继续游戏的检测。当屏幕上没有没有写有数据的方格并且屏幕上的数据没有哪两个相邻的数据是一样的两个数,那么就判定为游戏结束。
2功能设计
2.1设计界面
在设计整个2048游戏之前先得设计一个2048的游戏界面,只有有了游戏界面,才能够进行2048这一款游戏的下一步设计,这是创立2048小游戏的最根底的步骤。
2048这一款游戏的界面是4*4方格的,于是就需要在界面上设置4*4的方格,有了这些方格之后才能在方格上面装卡片〔Card〕,然后才能继续游戏。
privatevoidonDrawBorder(Canvascanvas){
paint.setShader(null);
paint.setStrokeWidth(16);
paint.setColor(Color.WHITE);
canvas.drawLine(0,0,0,this.getHeight(),paint);
canvas.drawLine(0,0,this.getWidth(),0,paint);
canvas.drawLine(this.getWidth(),0,this.getWidth(),this.getHeight(),paint);
canvas.drawLine(0,this.getHeight(),this.getWidth(),this.getH