基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx

上传人:b****5 文档编号:8288301 上传时间:2023-01-30 格式:DOCX 页数:24 大小:269.34KB
下载 相关 举报
基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx_第1页
第1页 / 共24页
基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx_第2页
第2页 / 共24页
基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx_第3页
第3页 / 共24页
基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx_第4页
第4页 / 共24页
基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx

《基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx》由会员分享,可在线阅读,更多相关《基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx(24页珍藏版)》请在冰豆网上搜索。

基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc.docx

基于Android的五子棋游戏设计与实现计算机科学与技术本科毕业论文doc

 

xxx大学

本科毕业论文(设计、创作)

 

题  目:

基于Android的五子棋游戏设计与实现

学生姓名:

   xxx  学号:

xxxx

院(系):

计算机科学与技术学院专业:

 计算机科学与技术     

入学时间:

   2010       年    9月

导师姓名:

  xxx    职称/学位:

  副教授/博士 

导师所在单位:

 xxx大学计算机科学与技术学院           

完成时间:

 2014年    5    月

 

基于Android的五子棋游戏设计

摘要

手机游戏被业内人士称为继短信之后的又一座“金矿”。

从2003年到2010年的市场销售额年均复合增长率为62.4%。

可以看出,手机游戏将经历一个黄金发展时期。

3G的普及、手机显示性能的提高、手机屏幕的扩大和较高的分辨率,解决了传统手机行业的很多弊端,手机休闲娱乐应用将成为PC休闲娱乐之后又一重要业务增长点。

同时Android采用了键盘形式的按键,可以完成更复杂的操作。

Android虽然基于Java,但是其虚拟机是基于寄存器的(这与普通的Java基于堆栈不同),速度得到很大的提升,这为Android平台上开发游戏提供了坚强的后盾。

本论文主要阐述以面向对象的程序开发语言eclipse为开发工具,基于智能手机Android之上设计一个五子棋游戏。

五子棋起源于中国古代的传统黑白棋种之一,它不仅能增强思维能力提高智力,而且富含哲理,有助于修身养性。

本系统是本系统中设定了人机对战和人人对战两种模式。

人机对战实现的是一些简单的算法,人人对战只是进行了输赢方的判定。

它与javame的五子棋设计有许多的不一样,Android本来就是全触摸的形式,而且操作非常简单。

关键词:

五子棋;Android;人工智能

 

TheFiveinaRowGameBasedonAndroid

Abstract

Mobilegamessincetheindustrywascalledafteratextmessage"goldmine"again.From2003to2010annualsalessurged62.4percentfromcompoundratefor.Cansee,mobilegameswillexperienceagoldenperiodofdevelopment.3Gphonedisplaysthepopularizationandperformanceimprovement,theexpansionofthephone'sscreen,andahigherresolution,solvethetraditionalmobilephoneindustry'smanydrawbacks,mobileentertainmentapplicationswillbeafterPCentertainmentanotherimportantbusinessgrowth.MeanwhileAndroidalsoUSESakeyboardformsofbuttonsthatcandomorecomplexoperation.Androidthough,butitsbasedonaJavavirtualmachine(whichisbasedontheregisterwiththeordinaryJavastack-baseddifferent),speed,itgotalotofascensionfortheAndroidplatformgamesprovideastrongbacking.

Thispapermainlyexpoundstheobject-orientedprogramdevelopmentineclipseforlanguagedevelopmenttool,smartphoneAndroidbasedonabovedesignafiveinarowgame.GobangoriginatedinChinaancienttraditionalblackwhitekind,itnotonlycanenhanceoneofthinkingcapacity,improveintelligenceandhighinphilosophy,helpstocultivateone'smoralityraisesagender.Thissystemisthesystemthatsettheman-machineagainstandeveryoneagainsttwopatterns.Therealizationman-machineagainstsomesimplealgorithm,everyonewasagainstjustwinthejudgementoftheparty.Ithaswiththejavamegobangchessdesignmanyaredissimilar,Androidistheentiretouchingformoriginally,moreoveroperatesissimple.

Keywords:

five-in-a-row;android;artificialintelligence

 

目  录

1引言……………………………………………………………………………………………1

2概述……………………………………………………………………………………………2

2.1背景…………………………………………………………………………………………2

2.2课题来源……………………………………………………………………………………2

2.3课题研究现状及应用前景…………………………………………………………………3

3Android开发环境……………………………………………………………………………3

3.1Android开发环境变量配置………………………………………………………………3

3.1.1JDK的配置………………………………………………………………………………3

3.1.2Android开发插件的安装………………………………………………………………4

3.1.3AVD的创建………………………………………………………………………………5

4游戏相关技术…………………………………………………………………………………5

4.1游戏布局……………………………………………………………………………………5

4.1.1画盘线……………………………………………………………………………………5

4.1.2双缓冲技术画棋子………………………………………………………………………6

4.1.3在触摸处画棋子…………………………………………………………………………7

4.1.4newPoint方法将座标调整到对应的棋位上…………………………………………7

4.2人人对战…………………………………………………………………………………8

4.2.1设置谁走的标记…………………………………………………………………………8

4.2.2在触摸处下棋子…………………………………………………………………………9

4.2.3判断轮到谁下棋子………………………………………………………………………9

4.2.4玩家一下棋的方法………………………………………………………………………9

4.2.5玩家二下棋的方法……………………………………………………………………10

4.2.6实现判断输赢的方法…………………………………………………………………11

4.2.7提示游戏结束…………………………………………………………………………13

4.3人机对战…………………………………………………………………………………14

5游戏的实现…………………………………………………………………………………15

5.1游戏主界面………………………………………………………………………………15

5.2游戏帮助界面……………………………………………………………………………16

5.3五子棋介绍界面…………………………………………………………………………16

5.4游戏界面…………………………………………………………………………………17

5.5退出界面…………………………………………………………………………………17

6结论…………………………………………………………………………………………18

主要参考文献…………………………………………………………………………………19

致谢……………………………………………………………………………………………20

1引言

随着社会的发展,目前全球的手机用户数量已经超过了PC机的数量,而且手机的数量正在快速增长,其中智能手机所占的比例越来越大,特别是随着3G技术发展时代的到来,移动互联网将是一个巨大的市场,许多国际大公司以及国内的大公司都在抢占智能手机领域的市场份额。

这期间,出现的智能手机可谓五花八门,种类繁多,但是真正好用,受用户喜爱的智能手机并不多。

当互联网巨头Google宣布依靠android系统进军手机操作系统领域之后,三年来Android一路高歌,快速的获得众多用户和厂商的认同。

随着Android手机终端的逐渐热销,Android也引起众多手机应用程序开发商的关注,Android的出现带给了智能手机领域更多的机遇和挑战,由于Android基于Linux内核且具有开源、免费的特性,它迅速得到广大爱好者以及许多厂商的支持,基于Android所开发的手机游戏拥有巨大潜力已成为行业共识

3G的普及、手机显示性能的提高、手机屏幕的扩大和较高的分辨率,解决了传统手机行业的很多弊端,同时Android也采用了键盘形式的按键,可以完成更复杂的操作。

Android虽然基于Java,但是其虚拟机是基于寄存器的(这与普通的Java基于堆栈不同),速度得到很大的提升,这为Android平台上开发游戏提供了坚强的后盾

随着移动开发技术的不断升级和终端设备成本的下降,近年来,手机在普通消费人群中得到了极大的普及。

凭借其便于携带、沟通迅捷、功能多样、私密性强等独有优势,手机已经成为普通民众不可替代的随身工具。

其益智、趣味和休闲的特点迎合了消费者的娱乐需要,手机游戏的开发推广已经成为手机生产商和运营商重要的业务增长点,游戏软件产业价值不断提升。

手机游戏是手机的一种高附加值操作软件,游戏编程是手机软件编程的重要组成,同时也持续推动手机软件技术升级进步。

中华民族是一个有着几千年悠久历史和璀璨文化的国家,而棋类娱乐却早已突破了纯游戏的范畴而成为中国传统文化的一个分支。

五子棋起源于中国古代的传统黑白棋种之一,现代五子棋日文称之为“连珠”,英译为Renju,英文称之为“Gobang”或“FIR”(FiveinaRow的缩写),中文亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。

五子棋的棋文化源渊流长,具有东方的神秘和西方的直观,是中西文化的交流点,是古今哲理的结晶。

现在人们压力日益增大,需要劳逸结合才能获得更高的工作效率,工作之余的娱乐对每一个人来说都是必不可少的。

五子棋这种娱乐方式简单易学又具有深奥的技巧,非常富有趣味性和消遣性。

在经过不断发展后,五子棋已经成为棋盘娱乐的一个重要的组成部分,它能够增强思维能力、开发智力,是人们休闲娱乐的不错选择。

近来随着计算机和手机的快速发展,各种各样的游戏层出不穷,使得人们能有更多的娱乐项目,而棋类游戏能起到锻炼人的思维和修身养性的作用,而且棋类游戏水平颇高,大有与人脑分庭抗礼之势。

现在的五子棋游戏软件基本上可以分为两类:

一类是网络五子棋游戏软件,另一类是单机版五子棋游戏软件。

很少有手机版的五子棋游戏软件。

为了满足手机人群的需求,本文设计了这款手机版的五子棋游戏软件,可以供人们闲暇时间随时随地地进行娱乐,提高自己的五子棋水平,实用性强

2概述

2.1背景

在我们的生活中有许多的游戏,但是游戏不同,它也会给玩家带来不同的感受和生活理念。

游戏是我们日常生活的一个必不可少的娱乐项目,也带动了游戏相关产业市场的发展。

游戏平台是经过从游戏机到电视游戏,然后从到pc游戏,到手机游戏,中间经历了很多的技术的更新和变革。

但随着新技术的发展和我们生活水平质量的提高,手机开始逐渐变为普及,因为手机是非常小巧便捷的,而且方便的特性成为我们日常生活中必备通讯工具。

而基于手机平台的游戏也就拥有的市场空间是巨大的,也因随着3g的开通和应用,手机游戏必然会迎来新的一轮游戏热潮!

2.2课题来源

现在的移动电话是小型的计算机,它的处理能力与台式机的标准处理能力相比很有限,但是足够运行一个小型的游戏。

现在的手机的一个特性就是它们还是网络计算机,能够高速发送和接收数字数据。

除了语音数据以外,它们还可以发送和接收其它类型的数据。

所以这样的网络游戏也可以在手机上实现。

短信类游戏就好像“虚拟宠物”那样。

短信游戏是通过玩家和游戏服务商通过短信中的文字的内容来交流,达到进行游戏的目的的一种文字游戏。

由于短信游戏的整个游戏过程都是通过文字来表达,造成短信游戏的娱乐性较差。

但是短信游戏却是兼容性最好的手机游戏之一。

只要您的手机可以发短信,您就可以畅快的享受短信游戏给您带来的快乐了。

图形类游戏更接近我们常说的“电视游戏”,玩家通过动画的形式来发展情节进行游戏。

由于游戏采用了更为直观且更为精美的画面直接表现,因此图形类游戏的游戏性和代入感往往较文字类游戏高。

因此广受玩家们的欢迎。

嵌入式游戏是一种将游戏程序预先固化在手机的芯片中的游戏。

由于这种游戏的所有数据都是预先固化在手机芯片中的,因此这种游戏是无法进行任何修改的。

也就是说,您不能更换其它游戏的,只能玩您手机中已经存在的娱乐游戏,而且您也不能将它们删除。

手机在网络游戏行业在多年的技术经验与运营经验的积累与总结之后,到了2009年迫不及待的需要创新出新的游戏模式和崭新的运营模式来推动手机游戏市场的爆发和发展。

其中比较吸引人们的是手机的休闲类的游戏。

应该可以说它是与PC网络游戏完全的脱离开了,而且充分发挥了自身的优势手机终端。

休闲类的游戏恰巧与之相反,只需要很少的网络流量的网络环境,通过少量多次的游戏形式带给玩家流畅的游戏体验满足玩家瞬间提升的快感,但是同时却很难具有长期的“沉迷”性。

本题目是基于Android平台开发的一个小型的程序。

其实都差不多,在有JAVA的智能手机上都可以运行。

其实手机是我们生活中不可缺少的工具,这些小游戏可以带给我们快乐和放松我们的心情。

无论什么样手机,我想买起来的时候上面就有一些它自带的各种小游戏,其中有一个独特的小游戏也是非常重要的。

2.3课题研究现状及前景

在我们的生活中有许多的游戏,但是不同的游戏,它也会给玩家带来不同的感受和生活理念。

游戏可以说我们日常生活的一个必不可少的娱乐项目,也带动了游戏相关产业市场的发展即游戏周边。

游戏平台是经过从游戏机到电视游戏,然后从到pc游戏,到手机游戏,中间经历了很多的技术的更新和变革。

但随着新技术的发展和我们生活水平质量的提高,手机开始逐渐变为普及,因为手机是非常小巧便捷的,而且方便的特性成为我们日常生活中必备通讯工具。

而基于手机平台的游戏也就拥有的市场空间是巨大的,随着3G的开通和应用,手机游戏必然会迎来新的一轮游戏热潮

现在的手机的已经不是以往那种传统意义上的手机了,称之为智能机再合适不过了,它不仅具备打电话发短信等传统功能而且对于计算机可以完成的大部分工作也可以完全胜任。

智能手机能够高速发送和接收数字数据,除了语音数据以外,它们还可以发送和接收其它类型的数据,如是图像等。

所以网络游戏也是完全可以在手机上实现的。

其中比较吸引人们的是手机上休闲类的游戏。

应该可以说它是与PC网络游戏完全的脱离开了,而且充分发挥了自身的优势。

休闲类的游戏只需要很少的网络流量的网络环境,通过少量多次的游戏形式带给玩家流畅的游戏体验满足玩家瞬间提升的快感,但是同时却很难具有长期的“沉迷”性,可以说是有百利而无一害。

本次设计是基于Android平台开发的一个小型的五子棋游戏程序。

五子棋游戏的简单易学,老少皆宜这些特性与智能手机的移动方便,大范围普及等特点结合起来,必定会大放光芒,广受欢迎的。

也真是由于上文所述的各种优势,导致手机五子棋游戏被越来越多的人研究学习,可以说程序虽小但五味俱全,作为入门学习是再合适不过的了。

网络上流传的五子棋游戏界面精美,风格各异,实在是已经达到巅峰之作,作者在此并不想去做那锦上添花之举,所以对于本次设计论文有一个明确的定位,在完成五子棋游戏的基本对战功能的设计同时不再做各种附加功能的加强而是对其中所涉及的算法进行更加深入的学习。

3Android开发环境

本章将主要介绍如何构建Android开发环境,包括获取AndroidSDK、Eclipse以及进行AndroidEclipse插件设置等。

3.1Android开发环境变量配置

3.1.1JDK的配置

JDK的配置并没有什么值得特别叙述的东西,在此主要阐述下JDK环境变量的配置问题。

首先右键点击我的电脑->属性->高级系统设置,点击下面的环境变量,在下面的“系统变量”处选择新建,在变量名处输入JAVA_HOME在变量值输入JDK路径,确定后再新建一个变量名为Classpath,变量值为%JAVA_HOME%/lib/rt.jar;%JAV--A_HOME%/lib/tools.jar的变量,确定后找到PATH的变量,双击或点击编辑,在变量值最前面加上%JAVA_HOME%/bin;最后点击确定按钮即可

如图3-1所示。

图3-1JDK环境变量设置

3.1.2Android开发插件的安装

打开Eclipse,在菜单栏上选择help->InstallNewSoftWare在弹出的界面上选择add,将弹出如下界面,如图3-2所示。

图3-2ADT的安装

在图3-2中Name处键入Android(名字可自定义),在Location出键入https:

//dl-next后进行安装。

安装android开发插件后,重启eclipse。

点击菜单window->preferences,将进入一个更新界面。

选择你的androidSDK解压后的目录,选错了就会报错,这个是升级工具,可以进行手动选择。

升级SDK版本,选择菜单window->Androidsdkandavdmanager,如图3-3所示。

图3-3SDK的配置

3.1.3AVD的创建

新建AVD(androidvirtualdevice)和配置SDK差不多,进入androidsdkandavdmanager,选中VirtualDevices点击New按钮,如图3-4所示。

图3-4AVD的创建

4游戏相关技术

本章节主要介绍一下此论文中用到了的Android的布局文件,可视化控件以及它们的具体实现。

4.1游戏布局

4.4.1画盘线

以手工画图方式讲明白棋盘的座标计算方法:

1取得屏幕宽高;2计算出第一根线与左边和上边的距离;3推算其他线条计算方法。

使用程序实现以上计算方法,创建出15根横线与竖线,存进集合中。

for(inti=0;i<=maxX;i++){//竖线

lines.add(newLine(xOffset+i*POINT_SIZE,yOffset,xOffset+i*POINT_SIZE,yOffset+maxY*POINT_SIZE));

}

for(inti=0;i<=maxY;i++){//横线

lines.add(newLine(xOffset,yOffset+i*POINT_SIZE,(maxX+1)*POINT_SIZE,yOffset+i*POINT_SIZE));

}

//在ondraw方法画出所有棋盘线

for(Lineline:

lines){

canvas.drawLine(line.xStart,line.yStart,line.xStop,line.yStop,paint);

}

4.1.2双缓冲技术画棋子

复制棋子对应的图片(四张)到工程中,使用这四张图片生成四个Bitmap:

1从context中取得图片的代码

Resourcesresources=this.getContext().getResources();

Drawabledrawable=resources.getDrawable(R.drawable.green_point)

2将图片画到Bitmap(内存缓冲区)的过程

//为指定颜色对应的图片创建bitmap对象并放入到数组中

publicvoidfillPointArrays(intcolor,Drawabledrawable){

//创建Bitmap内存缓冲区(申请内存空间)

Bitmapbitmap=Bitmap.createBitmap(POINT_SIZE,POINT_SIZE,

Bitmap.Config.ARGB_8888);

//创建画布、并设置将内容画到上面创建的Bitmap上

Canvascanvas=newCanvas(bitmap);

//设置资源画的范围大小

drawable.setBounds(0,0,POINT_SIZE,POINT_SIZE);

//将图像资源画到缓冲区中

drawable.draw(canvas);

//把缓存区引用存进数组中(注意将下标定义以颜色命名的常量)

bitmaps[color]=bitmap;

}

在onDraw方法将其在随意位置画出

canvas.drawBitmap(bitmaps[color_index],0,0,paint);

4.1.3在触摸处画棋子

通过onTouchEvent方法获得触摸位置座标,以此座标创建一个棋子,触发onDraw方法,把刚才的棋子画出来

publicbooleanonTouchEvent(MotionEventevent){

Pointpoint=newPoint(event.getX(),event.getY());

//刷新一下棋盘,触发onDraw函数

refressCanvas();

}

4.1.4newPoint方法将此座标调整到对应的棋位上(以手工画图的方式确定棋子四周的范围的计算方)

privatePointnewPoi

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

当前位置:首页 > 初中教育

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

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