欢迎来到天天文库
浏览记录
ID:33528484
大小:100.00 KB
页数:13页
时间:2019-02-26
《java课程设计-五子棋游戏》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、packagechess_game;importjava.awt.Color;importjava.io.Serializable;publicclassPointimplementsSerializable{privateintx;privateinty;privateColorcolor;publicPoint(){}publicPoint(intx,inty,Colorcolor){this.x=x;this.y=y;this.color=color;}publicintgetX(){returnx;}publ
2、icintgetY(){returny;}publicColorgetColor(){returncolor;}}packagechess_game;publicclassIsWin{publicstaticbooleanwinLR(intx,inty){//判断左右方向是否存在连续五子intcountnum=0;//用来记录一方连续棋子个数booleanflag=false;for(inti=y;i>=0;i--){//先向左找if(ChessBoard.board[x][i]==ChessBoard.board[
3、x][y])countnum++;elsebreak;}for(inti=y+1;i=5){flag=true;//左右方向存在连续五子}returnflag;//flag为true时,表示已判断出输赢}publicstaticbooleanwinUD(intx,inty){
4、//判断上下方向是否存在连续五子intcountnum=0;booleanflag=false;for(inti=x;i>=0;i--){//先向上找if(ChessBoard.board[i][y]==ChessBoard.board[x][y])countnum++;elsebreak;}for(inti=x+1;i5、ebreak;}if(countnum>=5){flag=true;//上下方向存在连续五子}returnflag;}publicstaticbooleanwinRD(intx,inty){//判断右对角线是否存在连续五子intcountnum=0;booleanflag=false;for(inti=x,j=y;i>=0&&j>=0;i--,j--){//先向左上方向寻找if(ChessBoard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}f6、or(inti=x+1,j=y+1;i=5){flag=true;//右对角线方向存在连续五子}returnflag;}publicstaticbooleanwinLU(intx,inty){//判断左对角7、线是否存在连续五子intcountnum=0;booleanflag=false;for(inti=x,j=y;i=0;i++,j--){//先向右上方向寻找if(ChessBoard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}for(inti=x-1,j=y+1;i>=0&&j8、oard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}if(countnum>=5){flag=true;//左对角线方向存在连续五子}returnflag;}publicstaticbooleanisWin(intx,inty){//调用之前的四个方向的函数,有一个方向寻
5、ebreak;}if(countnum>=5){flag=true;//上下方向存在连续五子}returnflag;}publicstaticbooleanwinRD(intx,inty){//判断右对角线是否存在连续五子intcountnum=0;booleanflag=false;for(inti=x,j=y;i>=0&&j>=0;i--,j--){//先向左上方向寻找if(ChessBoard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}f
6、or(inti=x+1,j=y+1;i=5){flag=true;//右对角线方向存在连续五子}returnflag;}publicstaticbooleanwinLU(intx,inty){//判断左对角
7、线是否存在连续五子intcountnum=0;booleanflag=false;for(inti=x,j=y;i=0;i++,j--){//先向右上方向寻找if(ChessBoard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}for(inti=x-1,j=y+1;i>=0&&j8、oard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}if(countnum>=5){flag=true;//左对角线方向存在连续五子}returnflag;}publicstaticbooleanisWin(intx,inty){//调用之前的四个方向的函数,有一个方向寻
8、oard.board[i][j]==ChessBoard.board[x][y])countnum++;elsebreak;}if(countnum>=5){flag=true;//左对角线方向存在连续五子}returnflag;}publicstaticbooleanisWin(intx,inty){//调用之前的四个方向的函数,有一个方向寻
此文档下载收益归作者所有