基于安卓开发的五子棋课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大庆师范学院《ANDROID开发基础》
题目:基于安卓开发的五
子棋游戏
专业班级:计算机科学与技术一班
设计者:KKKKKKKKKKKKKKKKKKK
指导老师:11111111
设计时间:2016-2017(1)
报告完成日期2016年12月27日
1设计任务及要求
五子棋的棋文化源渊流长,具有东方的神秘和西方的直观,是中西文化的交流点,是古今哲理的结晶。现在人们压力日益增大,需要劳逸结合才能获得更
高的工作效率,工作之余的娱乐对每一个人来说都是必不,是人可少的。五子棋这种娱乐方式简单易学又具有深奥的技巧,非常富有趣味性和消遣性。在经过不断发展后,基于安卓开发的五子棋已经成为棋盘娱乐的一个重要的组成部分,它能够增强思维能力、开发智力们休闲娱乐的不错选择。
五子棋主要实现的功能:
①显示一个十五行十五列的五子棋棋盘。
②在棋盘上面对应位置通过触屏点击下子,棋盘上将在相应的位置上显示棋子,并且棋子在纵横交点上。
③可以自动判断游戏是否结束,判断胜负,是否黑方或者白方已经胜出,并且通过提示信息来提醒玩家。
④在游戏上方会有一个游戏信息,这个游戏信息是用来提示当前游戏状态和当前是黑白双方的哪一方下子,玩家可以根据这个提示来相应的下棋,而不会导致不清楚轮到哪一方下棋的情况出现。
2设计原理及总体框图
本次设计主要是设计一个能够在An droid手机上运行的五子棋游戏。玩家打开游戏软件后将先进选择游戏,然后进入游戏的主界面开始游戏。开始游戏界面,就可以开始对弈了,黑白双方都是玩家,用鼠标点击方式进下棋,然后考虑下一步对方如何进行走位。然后可以直接根据对手的走位选择自己合适的走法来击败对手。
3详细设计
部分代码:
public class GameView exte nds View {
Con text con text = nu II;
int scree nWidth,scree nH eight;
Stri ng message ="";
int row,col;
int stepLe ngth = 30;
in t[][] chess = n ull;
boolea n isBlack = true;
boolean can Play = true;
public GameView(C on text con text,i nt scree nWidth,i nt scree nH eight) {
super(c on text);
this.c on text = con text;
this.scree nWidth = scree nWidth;
this.scree nHeight = scree nH eight; 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(r<0 || r>row-1 || c<0 || c>col-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 = " 轮到白棋";
}else{ chess[r][c] = 2; isBlack = true;
message = " 轮到黑棋";
部分代码:
public boolean onOptionsItemSelected(MenuItem item) {
if(item.getTitle().equals(”重新开始")){
gameView.ca nPlay = true;
gameView.chess = new in t[gameView.row][gameView.col];
gameView.i nvalidate();
}else if(item.getTitle().equals(" 退出")){
fini sh();
此段代码主要控制五子棋程序的重新开始和退出