android游戏Word下载.docx
- 文档编号:15042902
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:20
- 大小:206.48KB
android游戏Word下载.docx
《android游戏Word下载.docx》由会员分享,可在线阅读,更多相关《android游戏Word下载.docx(20页珍藏版)》请在冰豆网上搜索。
但当时的算法比现在的更为复杂,要求纵向、横向、斜向上的三个数字之和等于15,而不只是数字不能重复。
儒家典籍《易经》中的“九宫图”也是来源于此。
到了18世纪末,瑞士数学家莱昂哈德·
欧拉又发明了一种叫做“拉丁方块”的游戏,之后不久,美国的一家数学逻辑游戏杂志开始刊登这类游戏,使此类游戏得到良好发展,之后又在日本得到了广泛的传播。
2004年,第一个“数独”游戏被刊登上了英国《泰晤士报》的封面,此时开始数独游戏才真正为世界所知晓。
由于此类游戏操作简单,不需要特定的语言基础,也不需要进行数字运算且可玩性高、锻炼思维、开发大脑,所以很快风靡全球。
之后由其衍生的游戏也越来越多,例如杀手数独、角线数独等。
1.1.2功能概述
数独游戏的规则很简单,只需在空格处填入1~9的数字,并保证每个数字在每个九宫格内只能出现一次,且每个数字在每一行、每一列也只能出现一次,而一般的游戏过程是系统随机生成一个棋局,然后玩家需要在空白处填上相应的数字使其满足游戏规则。
该游戏的运行步骤如下:
(1).启动游戏后首先进入的便是欢迎界面,效果如图1-1所示,在欢迎界面中,“点击屏幕继续……”会时有时无,达到提示的效果;
(2).在游戏界面点击屏幕,便进入菜单界面,如图1-2所示;
(3).在菜单界面单击“关于游戏”菜单可进入“关于”界面,如图1-3所示,在“关于”界面中介绍了该游戏的目标平台及开发日期。
(4).在菜单界面单击“帮助游戏”菜单可进入“帮助”界面,如图1-4所示,在“帮助”界面介绍了游戏的基本规则。
图1-1欢迎界面图1-2菜单界面图1-3关于界面图1-4帮助界面
(5).在菜单界面单击“开始游戏”菜单可进入游戏界面,如图1-5所示;
(6).当在游戏过程中单击“暂停”按钮时,便进入暂停状态,如图1-6所示;
(7).在游戏过程中随时可以通过“换题”按钮来更换题目;
(8).当玩家单击“放弃”按钮时,会提示玩家是否真的需要退出游戏,然后根据玩家的选择进行操作,如图1-7所示;
(9).当玩家单击“提示”按钮时,界面上会出现一个红心表示当前可以提示玩家输入数字,此时再单击空白处,便会自动填上正确答案,如图1-8所示;
图1-5游戏效果图1-6暂停效果图1-7退出提示图1-8提示效果
(10).当玩家将界面中所有的空白全部填满数字时,系统会自动判断所填写的数字正确与否,当有错误时,会出现如图16-9所示的游戏失败界面;
当全部填写正确时,会出现如图1-10所示的游戏胜利界面。
图1-9游戏失败图1-10游戏胜利
(11).在胜利或者失败状态时,玩家可以通过点击屏幕任意位置返回欢迎界面;
(12).在菜单界面单击“退出游戏”便可退出该游戏。
1.2游戏的策划及准备工作
人类如果经常动用大脑,便可让自身的逻辑和抽象思维能力得到增长,因此玩数独游戏就是一个增长智慧的好办法。
通过数独题谜的解答,可以让头脑变得更聪明。
用户可以把他作为锻炼逻辑思维及策略的工具,在手机上的实现便可以时时刻刻地开发思维、锻炼头脑。
数独的推理性强,一些数学的思想、推理、假设、反证等都会用到,每个题谜各不相同,不可能用一种方法解决所有问题,这也是数独的魅力所在。
开发这个游戏的目的是为读者在Android平台上进行游戏开发提供一个指导方案,而不是生产商业化的游戏产品。
读者可以以此为范例开发出更好、更具可玩性的数独游戏。
1.2.2Android平台下游戏的准备工作
游戏的准备工作通常是根据游戏的策划来制作游戏所用的的图片、声音等。
因为本游戏
并没有添加音效设置,所以只需搜集或制作游戏过程中所用到的图片资源即可,本游戏用到
的图片文件资源如表1-1所示。
表1-1图片清单
图片名
大小
(KB)
像素(w*h)
用途
像素
(w*h)
a1~a9.png
258
21*21
输入的数字
key_backggroundpng
22
100*100
数字键背景图片
b1~b9.png
269
默认的数字
Chang2png
4.47
50*30
被按下的换题
icon.png
6.6
48*48
游戏图标
Chang1png
4.65
未被按下的换题
failpng
4.42
150*80
游戏失败
Selectpng
1.03
24*24
选中的单元格
winpng
1.85
恭喜过关
Drop1png
4.41
未被按下的放弃
go_onpng
391
暂停中
Drop2png
被按下的放弃
Time0png
1.12
时间中的0
Help1png
4.38
未被按下的提示
help2png
438
被按下的图标
Stop1png
7.07
未被按下的暂停
Stop2png
被按下的暂停
Backgroundpng
195
320*465
背景
Heartpng
4.29
25*25
提示的心型
Small_background
292
背景方框图片
Timepng
1.26
31*31
时间的目号
Aboutpng
284
320*244
关于背景
Exitpng
2.77
200*86
展出提示
Helping
15.7
帮组背景
menupng
200*176
菜单图元
W1~30gif
欢迎动画图
res是存放所有非代码资源的文件夹,其下的drawable文件夹一般存放图片资源。
因为从1.6r2开始SDK支持各种尺寸的屏幕,所以在res下有多个以drawable开头的文件夹,mdpi
为标准图库。
本程序中所有的图片资源都存储在res\drawable-mdpi文件夹下。
1.3各类的简要介绍
1.公有类
主类SudukuActivity类
该类是通过继承和扩展基类Activity来实现的,是整个应用程序的入口,主要是根据收到的Handler消息的不同切换到不同的界面。
2.欢迎界面相关类
(1).WelcomeView类
该类为欢迎界面的实现类,主要负责欢迎动画的绘制,是欢迎界面的前台显示的View,根据后台数据的不同绘制不同效果的动画。
(2).WelcomeViewDrawThread类
该类为欢迎动画界面的刷帧线程。
(3).WelcomeViewGoThread类
该类为欢迎动画界面的服务线程,主要负责欢迎动画的生成,通过改变表示当前帧的索引值达到动画的效果。
(4).关于界面AboutView类
该类是游戏关于界面的实现类,主要负责游戏关于界面的绘制。
(5).帮助界面HelpView类
该类是游戏帮助界面的实现类,主要负责游戏帮助界面的绘制。
3.游戏界面相关类
(1).GameView类
GameView类是游戏中最主要的一个类,游戏规则、游戏模型都包含在此类当中。
同时该类还负责绘制游戏的画面、接收玩家的响应。
(2).GameViewDrawThread类
GameViewDrawThread类负责定时的刷帧操作。
(3).刷新时间线程TimeThread类
该线程的实现非常简单,只是定时改变游戏模型中的时间值,并不负责其他事件的处理。
(4).渲染线程DrawKeyThread类
该线程的作用是数字键盘出现或消失过程中对数字键盘的渐变处理,逻辑很简单,定时改变数字键盘图片透明度即可。
(5).huDuSuanFa类
该类是个普通的Java类,不继承任何类,只为游戏随机提供存放数独数字的二维数组,该类所采用算法的优劣决定了该游戏可玩性的好坏。
1.3.2游戏的框架简介
游戏运行过程中各个类在游戏中的作用,具体运行步骤如下:
a.启动游戏后,首先在KLSDActivity中初始化WelcomeView,然后将用户界面切换到欢迎动画界面WelcomeView;
b.而在WelcomeView中会启动WelcomeViewDrawThread与WelcomeViewGoThread来刷新界面和生成欢迎动画。
c.当玩家单击“帮助”菜单时,会创建HelpView,显示“帮助”界面;
d.当玩家单击“关于”菜单时,会创建AboutView并显示“关于”界面;
e.当单击“开始游戏”时,则正式进入游戏界面GameVew,同时启动GameViewDrawThread来刷新界面。
简单的框架图如图1-11所示:
图1-11游戏框架图
(6).当玩家点击空白位置,需要绘制数字键盘时,会启动DrawKeyThread线程绘制数字键盘;
(7).在游戏过程中会根据情况启动TimeThread线程,来更新界面中的时间;
(8).其中ShuDuSuanFa为数独的算法生成,游戏前需要通过该类生成数独数组,游戏过程中同样需要使用该数组来判断玩家的输入是否正确。
1.4欢迎界面的设计与实现
1.4.1主类KLSDActivity实现
应用程序的每个屏幕的显示都通过继承和扩展基类Activity类来实现。
重写Activity类的onCreate()方法,在onCreate()方法中做游戏的初始化工作,该类的关键代码如下:
(1).
WelcomeViewwelcomeView;
//欢迎动画界面的引用
GameViewgameView;
//游戏界面的引用
AboutViewaboutView;
//关于界面
HelpViewhelpView;
//帮助界面
解析:
这是在主类中对各个界面进行的引用。
(2).
HandlermyHandler=newHandler(){//用来更新UI线程中的控件
publicvoidhandleMessage(Messagemsg){
if(msg.what==1){//欢迎界面发送的消息
if(welcomeView!
=null){
welcomeView=null;
}
initGameView();
KLSDActivity.this.setContentView(gameView);
}elseif(msg.what==2){//游戏胜利或者失败时点击屏幕
if(gameView!
gameView=null;
initWelcomeView();
//初始化欢迎界面
KLSDAct
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android 游戏