基于Android的五子棋游戏APP设计
创始人
2024-01-17 00:45:04

目 录
第一章:绪论 1
1.1智能手机与Android系统的发展历程 1
1.1.1 智能手机 1
1.1.2 Android系统基本情况介绍 2
1.2课题现状及应用前景 3
1.2.1 五子棋简介 3
1.2.2 课题现状及应用前景 3
第二章:开发环境的搭建 5
2.1 系统开发环境 5
2.2 系统开发环境的搭建 5
2.2.1 JDK的配置 5
2.2.2 Android开发插件的安装 6
2.2.3 AVD的创建 8
第三章:系统需求分析与概要设计 10
3.1 系统的需求分析 10
3.2 系统的概要设计 10
3.2.1 游戏界面布局 11
3.2.2 人机对战部分的核心算法的开发 12
3.2.3 三种对战模式的胜负判定 12
3.2.4 联机对战部分,机子建立连接和数据接收发送功能的实现。 13
第四章:系统详细设计 14
4.1 游戏界面布局的具体实现 14
4.1.1 棋盘和棋子的描述 15
4.2 人机对战部分的核心算法的开发 17
4.2.1 搜索算法 17
4.2.2 评值算法 19
4.2.3 算法核心类 20
4.3 联网对战模拟器建立连接和数据接收发送功能的实现 30
4.4 五子棋的胜负判定算法 31
第五章:系统运行演示效果 34
5.1 单人对战演示 34
5.2 双人对战演示 36
5.3 联网对战演示 36
第六章:结束语 39
致 谢 40
参考文献 41
附录A 五子棋术语解释 42
附录B 极大极小值算法 43
附录C 胜负判定算法代码 44
第三章:系统需求分析与概要设计
本次设计是基于Android系统的五子棋游戏,作为一款游戏暂且不管他的大小和好坏,拥有一个进行操作的界面是必须的,可以按照规则进行游戏也是必须的,当然一些丰富游戏功能方便用户的举措也是必须的,完成情况如何完全看设计者的功力了,本次论文自然无法和市场上的产品相比但是也有许多令人期待的东西的。
3.1 系统的需求分析

  1. 基于PC的虚拟移动终端环境的搭建:智能终端的操作系统各异,本次设计在PC上虚拟移动终端环境,选择了使用面广、使用者众的Android平台;
  2. 虚拟平台开发环境的选取:智能终端支持的游戏以java居多,我们在虚拟环境中选取J2ME作为开发支持平台,利用java语言进行开发;对java语言支持较好的IDE是Eclipse;
  3. 游戏实现中的资源约束考虑:移动终端由于受其本身资源(主要包括处理器、存储器、网络带宽等)的约束,对应用程序的支持与PC环境差异较大,对数据结构和算法等要求较高。所以有效的算法模型的提取对应用程序的效率至关重要;
  4. 对战功能实现:对战包括人机对战、人人对战和联机对战。
    5、加入声音等个性化的元素,实现退出等功能模块。
    3.2 系统的概要设计
    在设计游戏的过程中,首先调用一个开始欢迎界面,用户点击MENU键进入主菜单来选择游戏中的不同的功能。在游戏中作者设计了四个按钮。分别是:开始游戏、双人游戏、联机对战和退出。用户选择开始游戏进入的是单人游戏对战电脑AI,选择双人游戏可以两个用户在一台模拟器机上对战,选择联机对战可以两个用户在两个模拟器上对战,用户选择三种对战方式中的任意一种在胜负判定算法判定出游戏结束后可以重新选择MENU或者退出,选择MENU可开始新的游戏,当然若选择退出则是结束并关闭游戏了。游戏具体的功能流程图,如图3-1
    在这里插入图片描述
    图3-1 系统功能图
    3.2.1 游戏界面布局
    一个游戏先不管内容如何,他给人的第一印象就可以让人决定是否玩它,所以一个好的游戏界面对于一个游戏程序来说是非常重要的。
    游戏界面的布置包括游戏模式选择界面、棋盘和棋子的位置和显示等;关于盘面情况的表示,首先得到屏幕的大小,然后根据所画棋子的大小来确定下一条棋盘的画线.产生棋盘上所有的线.坐标布局的子控件需要指定相对与此坐标布局的横、纵坐标的值。大致效果如图3-2,当然棋盘和棋子只是一张位图,用来配合坐标而已。棋盘是一个正方形的位图,棋子是两个16像素的实心圆,由棋盘的大小得出。
int MiniMax(position p,int d)
{
int bestvalue,value;
if(Gama Over)//检查棋盘是否结束  
return evaluation(p);//棋盘结束,返回估值
if(deptu《=0)//是否叶子节点
return evaluation(p);//叶子节点,返回估值
if(p.color=white)//是否轮到白方走棋
bestvalue=-INFINITY;//是,令初始最大值为极小
else
bestvalue=INFINITY;//否,令初始极小值为最大
for(each possibly move m)//对每一可能的走法m
{MakeMove(m);//产生第i个局面(子节点)
Value =MiniMax(P,d-1);//递归调用MiniMax向下搜索子节点
UnMakeMove(m);//恢复当前局面
if(p.color=black)
bestvalue=max(value,bestvalue);取最大值
else
bestvalue=min(value,bestvalue);取最小值
}
Return bestvalue;//返回最大/最小值
}
//end of minimax algorithm

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

上一篇:美丽的情书

下一篇:最珍贵的礼物

相关内容

热门资讯

北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...