十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要讲解了js实现简单五子棋游戏的实例解析,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
创新互联主营张湾网站建设的网络公司,主营网站建设方案,app软件定制开发,张湾h5微信小程序搭建,张湾网站营销推广欢迎张湾等地区企业咨询
本文实例为大家分享了js实现五子棋游戏的具体代码,供大家参考,具体内容如下
html
五子棋
css
canvas{ display: block; margin: 50px auto; box-shadow: -2px -2px 2px #EFEFEF,5px 5px 5px #B9B9B9; }
js
var me = true; var over = false; var chessBox = []; var wins = []; //定义三维数组 //赢法统计数组 var myWin = []; var computerWin = []; for(i=0;i<15;i++){ chessBox[i]=[]; for(j=0;j<15;j++){ chessBox[i][j]=0; } } for(var i=0;i<15;i++){ wins[i]=[]; for(var j=0;j<15;j++){ wins[i][j]=[]; } } var count =0; //所有横线 for(var i=0;i<15;i++){ for(var j=0;j<11;j++){ //执行1次 // wins[0][0][0]=true; // wins[0][1][0]=true; // wins[0][2][0]=true; // wins[0][3][0]=true; // wins[0][4][0]=true; //执行2次 // wins[0][1][1]=true; // wins[0][2][1]=true; // wins[0][3][1]=true; // wins[0][4][1]=true; // wins[0][5][1]=true; for(var k=0; k<5;k++){ wins[i][j+k][count] = true; } count++; } } //所有竖线 for(var i=0;i<15;i++){ for(var j=0;j<11;j++){ for(var k=0; k<5;k++){ wins[j+k][i][count] = true; } count++; } } //所有斜线 for(var i=0;i<11;i++){ for(var j=0;j<11;j++){ for(var k=0; k<5;k++){ wins[i+k][j+k][count] = true; } count++; } } //所有反斜线 for(var i=0;i<11;i++){ for(var j=14;j>3;j--){ for(var k=0; k<5;k++){ wins[i+k][j-k][count] = true; } count++; } } console.log(count); for (var i=0;imax){ max = myScore[i][j]; u = i; v = j; }else if(myScore[i][j] == max){ if(computerScore[i][j] > computerScore[u][v]){ u = i; v = j; } } if(computerScore[i][j]>max){ max = computerScore[i][j]; u = i; v = j; }else if(computerScore[i][j] == max){ if(myScore[i][j] > myScore[u][v]){ u = i; v = j; } } } } } oneStep(u,v,false); chessBox[u][v] = 2; for(var k=0;k < count; k++){ if(wins[u][v][k]) { computerWin[k]++; myWin[k] = 6; //设置异常值 if(computerWin[k] == 5) { window.alert("计算机赢了"); over = true; } } } if(!over){ me=!me; } }
看完上述内容,是不是对js实现简单五子棋游戏的实例解析有进一步的了解,如果还想学习更多内容,欢迎关注创新互联行业资讯频道。