android游戏.docx

上传人:b****3 文档编号:2124830 上传时间:2022-10-27 格式:DOCX 页数:20 大小:206.48KB
下载 相关 举报
android游戏.docx_第1页
第1页 / 共20页
android游戏.docx_第2页
第2页 / 共20页
android游戏.docx_第3页
第3页 / 共20页
android游戏.docx_第4页
第4页 / 共20页
android游戏.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

android游戏.docx

《android游戏.docx》由会员分享,可在线阅读,更多相关《android游戏.docx(20页珍藏版)》请在冰豆网上搜索。

android游戏.docx

android游戏

九江学院

信息科学与技术学院

题目:

快乐数独

专业:

软件技术

班级:

B0932

姓名:

邱英健

学号:

20914160202

同组人员:

周岐同李铁鹏

指导老师:

程霄

1.1游戏的背景及功能概述

数独就是益智游戏的一种,玩法简单但数字的排列方式千变万化,很多人认为数独是训练头脑的绝佳方式。

这次android游戏开发就选用了数独这个游戏。

1.1.1数独的背景

数独的前身为“九宫格”,最早起源于中国。

但当时的算法比现在的更为复杂,要求纵向、横向、斜向上的三个数字之和等于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)

用途

图片名

大小

(KB)

像素

(w*h)

用途

a1~a9.png

258

21*21

输入的数字

key_backggroundpng

22

100*100

数字键背景图片

b1~b9.png

269

21*21

默认的数字

Chang2png

4.47

50*30

被按下的换题

icon.png

6.6

48*48

游戏图标

Chang1png

4.65

50*30

未被按下的换题

failpng

4.42

150*80

游戏失败

Selectpng

1.03

24*24

选中的单元格

winpng

1.85

150*80

恭喜过关

Drop1png

4.41

50*30

未被按下的放弃

go_onpng

391

150*80

暂停中

Drop2png

4.41

50*30

被按下的放弃

Time0png

1.12

21*21

时间中的0

Help1png

4.38

50*30

未被按下的提示

help2png

438

50*30

被按下的图标

Stop1png

7.07

50*30

未被按下的暂停

Stop2png

7.07

50*30

被按下的暂停

Backgroundpng

195

320*465

背景

Heartpng

4.29

25*25

提示的心型

Small_background

292

320*465

背景方框图片

Timepng

1.26

31*31

时间的目号

Aboutpng

284

320*244

关于背景

Exitpng

2.77

200*86

展出提示

Helping

15.7

帮组背景

menupng

15.7

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!

=null){

gameView=null;

}

initWelcomeView();//初始化欢迎界面

KLSDAct

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 生物学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1