-
本科毕业论文(设计)
题目:基于
Android
的
2048
游戏的设计与实现
姓
名:
学
号:
专
业:
11
级计算机科学与技术
院
系:
信息工程
指导老师:
职称学位:
讲师/硕士
完成时间:
教务处制
安徽新华学院本科毕业论文(设计)独创承诺书
本人按照毕业论文(设计)进度计划积极开展实验(调查)研
究活动,实事求是地做好
实验(调查)记录,所呈交的毕业论文(设计)是我个人在导师
指导下进行的研究工作及取
得的研究成果。据我所知,除文中特别加以标注引用参考文献
资料外,论文(设计)中所有
数据均为自己研究成果,
不包含其
他人已经发表或撰写过的研究成果。
与我一同工作的同志
对本研
究所做的工作已在论文中作了明确说明并表示谢意。
毕业论文(设计)作者签名:
日期:
安徽新
华学院
15
届本科毕业论文(设计)
基于
Android
的
2048
游戏的设计与实现
摘
要
现如今,电子游戏已慢慢渗透进人们生活中,并在扮演着越来越重的角色。
可以说,
随着他的迅猛发展,
现今的电子游戏已经不
仅仅是一种娱乐,
而是形成
了一种文化现象,
< br>具有很强的民族性和丰富的文化内涵。
伴随着游戏软件在市场
的销售,与其相关的文化也随之传播。
2048
游戏的制作属于电子游戏中的益智类小游戏,它做到了娱乐性、趣味
性、
教育性相统一。
益智类的游戏即是需要去开动大脑去思考从而获
得游戏的胜
利。
简单的益智类游戏可以使玩家在娱乐中不断的开
发大脑。
这样一来就实现了
在娱乐中学习。
本文通过对
Android
应用
开发的初步研究,
设计出了一款基于
Android
平台
的
2048
小游戏。
本文是在通过对系统进行详细分析的情况下,基本的确定了系
统的相关的功能要求,对游
戏的关卡设置、
菜单界面、
屏幕绘制和布局进行了设
计,实现了一款界面清晰、内容丰富的
2048
游
戏,它能够让人们在这个快节奏
的生活压力中得到缓解。
关键字:
Android
;游戏;益智
p>
安徽新华学院
15
届本科毕业论文(设计)
Design and
implementation of 2048 games based on Android
Abstract
Nowadays,
electronic
games
have seeped
into people's
life, and
plays
an
incr
easinglyimportant
role. It
can
be
said, with his rapid
development
of electronic
ga
mes, today is
not
only
a
kind
of entertainment, but
the
formation
of
a
cultural
ph
enomenon, has
a
strong national
character
and rich
cultural
connotation. With
th
e game
software
sales in
the
market, theculture
also
spread.
2048 the
game
belongs
to
the puzzle
game in
electronic
games, it
did
entertai
nment, fun,educational
unity. Puzzle game
is to use
your
brain
to
think in
order
t
o
win
the
games. A
simplepuzzle
game can
make
the game
player development br
ain
constantly in
entertainment.
So
asto
achieve
the
learning in
the
entertainment.
The preliminary
study
on
the development
of
Android
application, designed
a 2048
gamebased
on Android
platform. In
this
paper through
the detailed
analysi
s
of
system, the
basic to
determine
the
system's related
functional
requirements, s
etting,
rendering
and layout of the
screen menu
interface, the
game's
level for
the
design, implementation
of
a clear
interface,rich
content
of
the 2048 game, it
can l
et
people
get relief in
this
fast the
rhythm
of lifepressure.
Key Words
p>
:
Android
;
Game
;
Puzzle
安徽新华学院
15
届本科毕业论文(设计)
目
录
1
绪
论
.
...
..................................................
.............................................
1
1.1
背景
.
..
..................................................
.................................................
1
1.1.1
手机的应用市场发展现状
................
..............................................
1
1.1.2
国内外现状
................................
..................................................
.....
1
1.1.3
课题意义
.
..................................................
........................................
1
1.2
本章小结
.
..................................................
...........................................
2
2
开发环境的介绍和搭建
.................
..................................................
.....
3
2.1
开发环境的介绍
....................
..................................................
...........
3
2.1.1 JDK
的介绍
....
..................................................
.................................
3
2.1.2
Eclipse
的介绍
.
............................................ ......................................
3
2.1.3 Android
SDK
的介绍
.....................
..................................................
.
3
2.2
开发环境的搭建
....................
..................................................
...........
3
2.2.1
JDK
的安装与环境变量配置
...
..................................................
......
3
2.2.2
Android SDK
与
Eclipse
的安装与配置
........................................
4
2.2.3 Android
p>
虚拟机
A
V
D
p>
的配置
..........................
..................................
4
2.3
本章小结
.
..................................................
...........................................
5
3
系统的需求分析和概要设计
...............
.................................................
6
3.1
系
统需求分析
..................................
..................................................
...
6
3.1.1
系统功能需求分析
...
..................................................
......................
6
3.1.2
游戏基本规则
.....
..................................................
............................
7
3.2
系
统概要设计
..................................
..................................................
...
7
安徽新华学院
15
届本科毕业论文(设计)
< br>
3.2.1
系统流程的设计
....
..................................................
.........................
7
3.2.2
系统模块设计
.....
..................................................
............................
8
3.3
本章小结
.
..................................................
.........................................
1
0
4
系统实现
.
..................................................
............................................
1
2
4.1
开始界面的实现
....................
..................................................
.........
1
2
4.2
游戏界面的实现
......
..................................................
........................
1
2
4.3
游戏滑屏卡片移动的实现
................
...............................................
1
3
4.4
重新开始游戏功能的实现
................
...............................................
1
9
4.5
关卡的实现
< br>.
...................................
..................................................
...
2
1
4.6
游戏帮助的实现
......
..................................................
........................
2
3
4.7
本章小结
.
..................................................
.........................................
2
5
5
测
试
.
...........................
..................................................
...................
2
6
5.1
游戏系统测试
......................
..................................................
............
2
6
5.1.1
游戏流程测试
.....
..................................................
..........................
2
6
5.1.2
游戏模式
.
.................................
..................................................
.....
2
7
5.2
本章小结
< br>.
...................................
..................................................
......
2
8
6
总结与展望
.
....................................
..................................................
....
2
9
6.1
论文总结
< br>.
...................................
..................................................
......
2
9
6.2
展
望
.
...
..................................................
........................................
2
9
致
谢
<
/p>
.
............................
..................................................
........................
3
0
参考文献
.
..................................................
................................................
3
1
p>
安徽新华学院
15
届本科毕业论文(设计)
1
绪
论
第一章主要是对课题的总体介绍,
主要包括对课题的背景资料简
介、
国内外
研究现状,还有就是对课题研究的价值的介绍。
p>
1.1
背景
1.1.1
手机的应用市场发展现状
随着
3G
的越来越普及以及手机应用的
日益丰富还有智能水平的不断的提
高,
从便携性和随身性这两方
面来考虑,
电脑所带来的体验已经不能跟手机相提
并论了,他已
经完美的超过了电脑
[1]
。
现如今
Android
、苹果等各智能手机已
经基本占领整个手机市场,从而使得
更多应用的出现,然而手机游戏应用在其中占领主要
的位置。
随着
Android
智能手机的普及以及游戏种类的多元化,使得
Android
手机游
戏用户规模保持着稳步增长之势
[2,3
]
。
1.1.2
国内外现状
目前国内外的
Android
开发还是主要以应用开发为主,
主
要分成
3
类:
企业
应用、
通用应用以及游戏应用。
第一类应用的开发主要是一
些大公司为了自己的
品牌而开发的。
第二类的应用主要是一些创
业型公司或者独立开发者为了盈利开
发的应用。第三类应用目前跟第二类应用相同
[4]
。
2048
小游戏是一款最近风靡全球的手机游戏,简单的游戏模式和趣味的玩
法,几乎游戏下载排行榜的前
10
名都可以看到“他的身影
”。
1.1.3
课题意义
现如今,
< br>手机游戏已在我们的生活中占据一席之地,并在一步步的壮大。
可
以说,随着他的迅猛发展,现今的手机游戏已经不单单是一种缓解压力的工具,
而是形成了一种文化现象。
随着游戏软件在市场的一步步壮大,
与其有关的文化
也随之传播。
1
安徽新华学院
15
届本科毕业论文(设计)
2048
游戏的制作属于电子游戏中的益智类小游戏,它做到了娱乐性、趣味
性、
教育性相统一。
益智类的游戏即是需要去开动
大脑去思考从而获得游戏的胜
利。
简单的益智类游戏可以使玩家
在娱乐中不断的开发大脑。
这样一来就实现了
在娱乐中学习。<
/p>
现有
2048
游戏最大的不足在于过度强调简洁,它是由数字组成的游戏,所
以在长时间的游戏后就会
感觉无聊,
同时在熟知玩法后就会知道下一个要拼出的
数字,这
就缺乏神秘感,
当一款游戏缺乏了神秘和趣味时就注定失败。
所
以我们
要勇于创新,将
2048
游戏开
发出不同的版本,当玩家觉对拼接数字感到无聊时
可以有不同的选择。
< br>2048
还有一大缺点就是当玩家拼出‘
2048
’时游戏就会结
束,这样就会让玩家感到失落,
所以我们要创作一个永无止境的游戏,
让玩家去
不断的超越自
己。
1.2
本章小结
本章首先介绍了本游戏
p>
2048
的研究背景,主要是以手机的应用市场发展现
状和国内外现状两方面来阐述,以及简单的介绍了本课题的意义。
2
安徽新华学院
< br>15
届本科毕业论文(设计)
2
开发环境的介绍和搭建
本章是对
Android
应用开发的开发环境进
行简单的介绍以及如何搭建。
2.1
开发环境的介绍
2.1.1
JDK
的介绍
Java
Development Kit(JDK)
是
Java
语言的软件开发工具包。
Java
的核心就
是
JDK
,<
/p>
JDK
主要包括了
Java
基础类库、
Java
运行环境以及
< br>Java
工具。它主要
是为
Ja
va
程序员开发而发布的免费开发工具包
[5,6]
。
2.1.2
Eclipse
的介绍
Eclips
e
是一个基于
Java
的和开源的开发
平台,刚开始只是用于
Java
语言的
开发,
现在人们使用一些外挂程式使得
Eclipse
可以开发一些其他的计算机语言。
Eclipse
对他本身而言它只是一个框架平台,但最多的外挂程式使得它变得具有
灵活性
[7]
。
2.1.3
Android SDK
的介绍
SDK
(
software
development
kit
)是软件开发工具包。
Android
SDK
指的是
Android
专属的软件开发工具包
[8]
。
2.2
开发环境的搭建
2.2.1
JDK
的安装与环境变量配置
(1<
/p>
)从网上下载
JDK1.6
或者
JDK1.7
版本。
(2
)双击文件安装
JDK
。
(3
)环境变量的配置:右击“我的电脑”<
/p>
-->
属性
>“
高级系统设置”
-->
环境变量
[9]
。环境变量的设置界面分“用户变量”和“系统变量”
[10]
。在系统
3
安徽新华学院
15
届本科毕业论文(设
计)
变量里点击新建在变量名中输
入“JAVA_HOME”,
在变量值中填入
JDK
的安装路径
;接着新建
classpath
变量,变量值设为:
.;%JAVA_HOME%lib;%JAVA
_HOME%li
,然后双击“系统变量”中存在的
path
在弹出的对话框中添加变量
值:
%JAVA_HOME%bin;%JAVA_HOME%jrebin
,最后运行
->cmd
,输入
java
c
,如
果出现用法说明,则表示成功
[
11,12]
。
2.2.2
Android SDK
与
Eclipse
< br>的安装与配置
在网上搜索
adt-bundle-windows
并下载。下好之后直接解压缩,此文件为已
经集成了
Eclipse
和
Android SDK
的完整版,这样就可以适合一些新手。
2.2.3 Android
虚拟机
A
VD
的配置
在
Eclipse
菜单栏中点击
Window
< br>->
Android Virtual Device Manager
[13]
,
在弹出
的窗
口中点击“
new
”按钮,进入到创建的
A
VD
配置窗口,可以创建自己想要
的
A
VD
[14]
,如图
2.1
所示:
图
2.1
A
VD
配置图
配置成功后,
选中创建好的
A
VD<
/p>
并点击
“
start
”
按钮弹出对话框点击
Launch
4
安徽新华学院
15
届本科毕业论文(设计)
按钮,由于
A
VD
第一次启动时间
较长,需耐心等待
[15]
。开启成功后如图
< br>2.2
所
示:
图
2.2
AVD
界面图
2.3
本章小结
< br>本章是对
Android
应用开发所需的开发环境进行简
单的介绍和对开发环境如
何搭建进行介绍。
5
安徽
新华学院
15
届本科毕业论文(设计)
3
系统的需求分析和概要设计
这章主要
讲述了系统的需求分析,
简单的描述了各个功能模块和游戏的基本
规则,然后是对系统概要设计的介绍。
3.1
系统需求分析
3.1.1
系统功能需求分析
系统主要实现以下的几个功能:关卡选择、呈现游戏界面、重新开始游戏、
当前分数和最高分数、游戏帮助等功能。
关卡选择是当玩
家点击此按钮时,游戏就会从主界面跳转到关卡选择界面,
当玩家选择相应的关卡时,<
/p>
先判断此关卡是否开启,
如果没有开启此关卡就会弹
出对话框提示玩家此关卡未开启,
如果此关卡已经开启就会跳转到主界面同时
开
始此关卡。
重新开始游戏是当玩家无法满足当前进度时点击此
按钮就会重新开始
游戏,
如果玩家处于不同关卡时重新开始游戏
还是停留在此关卡。
游戏帮助是当
新手玩此游戏时无法知道游戏
玩法时给予相应的提示。
呈现游戏界面是游戏开始
时主界面在游
戏区域会生成
4
×
4
< br>的矩阵同时在矩阵里面随机生成两个
2
或
4
的
卡片。
当前分数和最高分
数是显示此局玩家所获得的分数和历史最高的分数,
如
果当前的
分数超过最高分数那么最高分显示当前的分数,如图
3.1
所示
。
图
3.
1
系统功能图
6
安徽新华学院
15
届本科毕业论文(设计)
3.1.2
游戏基本规则
在开始游戏后玩家通过滑动屏幕来操控卡片的移动方向,
当卡片滑动中如果
有两张卡片相同且他们的中间也没有其他卡片时,
在滑动的过程
中这两张卡片会
合并,
显示为这两张卡片之和。
在滑动之中有三张卡片相同时只会合并向滑动方
向两张卡片。
< br>在滑动中如果有两张卡片一样同时又有一张卡片的值跟这两张卡片
相加的值时,<
/p>
滑动只会使那两张相同的卡片合并而不会接着让合并后的卡片和另
一张卡片合并。
3.2
系统概要设计
3.2.1
系统流程的设计
游戏开始进入开始页面,
能够进入游戏的主界面并开始普通开局,
从主界面
能够重新开始游戏、
查看帮助和进入
关卡选择界面。
当玩家点击重新开始按钮会
弹出相应的对话框让
玩家选择,如果玩家选择“是”时则重新开始游戏,如果选
择“否”
则返回游戏界面不做任何处理。
当玩家点击关卡按钮会跳转到关卡选择
界面,
关卡界面将显示所有的关卡,
当玩家点击相应
的关卡时后台会判断此关卡
是否开启,
如果已经开启将会跳转到
主界面并运行此关卡,
如果没有开启将给予
玩家提示“此关卡未
开启”对话框。在开始界面按返回按钮时则会退出游戏。游
戏的流程图如图
3.2
所示:
7
安徽新华学院
< br>15
届本科毕业论文(设计)
图
3.2
系统流程图
3.2.2
系统模块设计
从总体出发,
将该系统划分为三大模块:
“菜单设
计”
,
“界面设计”
和
“算
法设计”。
3.2.2.1
菜单设计
菜单的实现是在游戏界面实现,可进一步划分为三个模块,分别是:
“游
戏
帮助”,“重新开始”,“关卡选择”,如图
3.3
所示:
重新开始
关卡选择
游戏帮助
图
3.3
菜单设计
3.2.2.2
界面设计
可进一步划分为:
“主界面设计”,
“游戏界面设
计”和“关卡界面设计”,
8
安徽
新华学院
15
届本科毕业论文(设计)
如图
3.4
所示:
重新
关卡
帮助
开始游戏
分数
游戏区域
关卡选择
(
a
)开始界面
(
p>
b
)游戏界面
(
c
)关卡
选择界面
图
3.4
界面设计
3.2.2.3
算法设计
(1)
当有两张卡片相同时,向它们可以碰撞的方向滑屏,卡片会移动到最
底
边并生成其两倍数字的卡片,
并且生成一个
< br>“
2
”
或
“
4
”
的卡片,
如图
3.5
所示:
图
3.5
简单卡片合成
(2)
当有两张卡片相同时,且在他相同的方向有张跟它们之和的卡片,
向它们可以碰
撞的方向滑屏,相同的卡片会移动到无法移动的位置并生成期
两倍数字的卡片,但合成的
卡片不会跟那张两倍数字的卡片合并,并且生成
9
安徽新华学院
15
届本科毕业论文(设计)
p>
一个“
2
p>
”或“
4
”的卡片,如图
< br>3.6
所示:
图
3.6
复杂卡片合成
(
3
)当界面上没有空位并且两两相邻的卡片不相同时游戏结束。如图
3.7
所示:
图
3.7
游戏结束
3.3
本章小结
10
安徽新华学院
15
届本科毕业论文(设计)
本章主要对游戏所实现的功能进行需求分析,对图形和系统性
能进行了分
析,
分析了图形的特点和实现的可行性。
对系统的性能进行了详细的分析同时也
提出来解决性能问题的解决方案。<
/p>
对系统的流程,系统所需的图形文件,系统
的总体架构和系统用例进行了设计。
通过本章的分析、
设计
能更加具体的了解系
统功能,
对系统所要实现的功能和图形文件
有了更深的认识。
为下一章系统功能
的具体实现提供了可靠的参
考依据。
11
安徽新华学院
15
届本科毕业论文(设计)
4
系统实现
本章主要是详细介绍每个功能是怎样的实现。
4.1
开始界面的实现
游戏的主界面是按钮图片,
只是实现了界面的跳转,
当玩家点击此界面时就
会调用
此函数
让页面跳转到游戏界面开始游戏
,
如图
4.1
所
示:
public class ZuomianActivity extends
Activity{
}
protected void
onCreate(Bundle savedInstanceState) {
te(savedInstanceState);
setContentView(ty_main0);
图
4.1
开始界面
4.2
游戏界面的实现
12
安徽新华学院
15
届本科毕业论文(设计)
游戏界面主要是在
activity
_
中当前分数、最高分数、游戏区域、重
新开始按钮、关卡选择
按钮、帮助按钮,当跳转到游戏界面时就会调用并执行
函数来展
示游戏界面,如图
4.2
所示。
protected void onCreate(Bundle
savedInstanceState) {
te(savedInstanceState);
setContentView(ty_main);
}
图
4.2
主界面
4.3
游戏滑屏卡片移动的实现
当玩家滑动
屏幕时,主要是通过
initGameView
函数来监听玩家
手指滑动的
位置,
先通过获取开始坐标和结束坐标,
然后通过比较结束坐标跟开始坐标的差
值来判断玩家是怎样滑动屏幕的。判
断出玩家的滑动轨迹后,通过调用
swipeLe
13
安徽新华学院
15
届本科毕业论文(设计)
ft
、
swipeRight
、
p>
swipeUp
、
swipeDown
p>
方法来实现卡片的移动,如图
4.3
所示。
public void initGameView()
{
setColumnCount(4);
setOnTouchListener(new
OnTouchListener() {
private float startX,
startY
, offsetX, offsetY;
public boolean onTouch(View v,
MotionEvent event) {
switch (ion())
{
case _DOWN:
startX = ();
startY = ();
break;
case _UP:
}
return true;
14
offsetX = () - startX;
offsetY = () - startY;
if
((offsetX) > (offsetY)) {
if
(offsetX < -5) {
swipeLeft();
} else if
(offsetX > 5) {
}
swipeRight();
} else {
}
break;
if (offsetY < -5) {
swipeUp();
} else if
(offsetY > 5) {
}
swipeDown();
-
-
-
-
-
-
-
-
-
上一篇:作文过渡词
下一篇:(完整版)(整理)环境工程专业英语翻译(中英对照)