- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于安卓开发的五子棋课程设计报告精选
大庆师范学院
《Android开发基础》
题目:基于安卓开发的五子棋游戏
专业班级: 计算机科学与技术一班
设 计 者: kkkkkkkkkkkkkkkkkkk
指导老师:
设计时间:2016-2017(1)
报告完成日期年月
1 设计任务及要求
五子棋的棋文化源渊流长,具有东方的神秘和西方的直观,是中西文化的交流点,是古今哲理的结晶。 现在人们压力日益增大,需要劳逸结合才能获得更高的工作效率,工作之余 的娱乐对每一个人来说都是必不,是人可少的。 五子棋这种娱乐方式简单易学又具有深 奥的技巧,非常富有趣味性和消遣性。在经过不断发展后,基于安卓开发的五子棋已经成为棋盘 娱乐的一个重要的组成部分,它能够增强思维能力、开发智力们休闲娱乐 的不错选择。
五子棋主要实现的功能:
①显示一个十五行十五列的五子棋棋盘。
②在棋盘上面对应位置通过触屏点击下子,棋盘上将在相应的位置上显示棋子,并且棋子在纵横交点上。
③可以自动判断游戏是否结束,判断胜负,是否黑方或者白方已经胜出,并且通过提示信息来提醒玩家。
④在游戏上方会有一个游戏信息,这个游戏信息是用来提示当前游戏状态和当前是黑白双方的哪一方下子,玩家可以根据这个提示来相应的下棋,而不会导致不清楚轮到哪一方下棋的情况出现。
2设计原理及总体框图
本次设计主要是设计一个能够在 Android 手机上运行的五子棋游戏。玩家打开游戏软件后将先进选择游戏,然后进入游戏的主界面开始游戏。开始游戏界面,就可以开始对弈了,黑白双方都是玩家,用鼠标点击方式进下棋,然后考虑下一步对方如何进行走位。然后可以直接根据对手的走位选择自己合适的走法来击败对手。
3 详细设计
部分代码:
public class GameView extends View {
Context context = null;
int screenWidth,screenHeight;
String message = ;
int row,col;
int stepLength = 30;
int[][] chess = null;
boolean isBlack = true;
boolean canPlay = true;
public GameView(Context context,int screenWidth,int screenHeight) {
super(context);
this.context = context;
this.screenWidth = screenWidth;
this.screenHeight = screenHeight;
this.message = 黑棋先行;
row = (screenHeight-50)/stepLength+1;
col = (screenWidth-10)/stepLength+1;
chess = new int[row][col];
代码中:
(1)提示轮到哪个玩家:String message = ;
(2)划线的行数和列数:int row,col;
(3) 棋盘每格间距int: stepLength = 30;
(4) 0代表没有棋子,1代表是黑棋,2代表白旗:int[][] chess = null;
部分代码:public boolean onTouchEvent(MotionEvent event) {
if(!canPlay){return false;}
float x = event.getX();
float y = event.getY();
int r = Math.round((y-50)/stepLength);
int c = Math.round((x-10)/stepLength);
if(r0 || rrow-1 || c0 || ccol-1){return false;}
if(chess[r][c]!=0){return false;}
if(isBlack){
chess[r][c] = 1;
isBlack = false;
message = 轮到白棋;
}else{
chess[r][c] = 2;
isBlack = true;
message = 轮到黑棋;
若有棋子则不再画棋子了:if(chess[r][c]!=0){return false;}
控制轮到那方棋子:if(isBlack){
chess[r][c] = 1;
isBlack = false;
message = 轮到白棋;
}el
文档评论(0)