课程笔记
课程/JavaScript/前端开发
JS实现人机大战之五子棋(AI篇)
介绍
章节
问答
笔记
一生安好
2018-02-16
wins[][][]:赢法数组 mywin=[]; 我方赢法统计数组 computerwin=[]:计算机方统计数组
截图
0赞 · 0采集
wlssqa
2017-03-17
举例子
截图
0赞 · 0采集
HenryChou
2017-02-24
myWin[][][0] = 1 第一个位置落子,第0种赢法+1,第1种赢法 不变 myWin[][][0] = 2 myWin[][][1] = 1 如果存在一个k,使得myWin[k] = 5,说明第k种赢法被实现
0赞 · 0采集
weibo_昵
2016-12-02
遍历所有赢法; myWin[k]++ ; 在上面 wins 赢法数组中, 所统计的第k项 赢法 (棋子)+1; (在该赢法中的落子数= myWins[k])
截图
0赞 · 0采集
weibo_昵
2016-12-02
某个落子会在 赢法数组 中的一项
截图
0赞 · 0采集
qq_枫灬丶葉乀_0
2016-08-24
五子棋赢法统计
0赞 · 0采集
Marshall_1996
2016-06-17
解决5个子判定的bug if(chessBoard[i][j]==0){ oneStep(i,j,me); if(me){ chessBoard[i][j] = 1; }else{ chessBoard[i][j] = 2; } for(var k=0; k<count; k++){ if(wins[i][j][k]){ if(me){ myWin[k]++; aiWin[k] = 6; }else{ aiWin[k]++; myWin[k] = 6; } } if(myWin[k]==5){ window.alert("You win!"); over = true; }else if(aiWin[k]==5){ window.alert("AI win!"); over = true; } } me=!me; }
1赞 · 4采集
quwei
2016-04-13
赢法同级数组初始化
截图
0赞 · 0采集
ArrayZoneYour
2016-04-03
修正的赢法数组(chessNum[num]是我显示这一步落子位置和步数用的,请无视) chess.onclick = function(e){ if(over){ return; } var x = e.offsetX; var y = e.offsetY; var i = Math.floor(x / 30); var j = Math.floor(y / 30); if(chessBoard[i][j] == 0){ oneStep(i, j, me); if(me){ chessBoard[i][j] = 1; chessNum[num][1] = i; chessNum[num][2] = j; for(var k=0; k<count; k++){ if (wins[i][j][k]) { myWin[k]++; computerWin[k] = 6; if (myWin[k] == 5) { window.alert("你赢了!"); over = true; } } } }else{ chessBoard[i][j] = 2; chessNum[num] = [i,j]; chessNum[num][1] = i; chessNum[num][2] = j; for(var k=0; k<count; k++){ if (wins[i][j][k]) { computerWin[k]++; myWin[k] = 6; if (computerWin[k] == 5) { window.alert("计算机赢了!"); over = true; } } } } now.innerHTML = "第"+num+"手下在了"+chessNum[num][1]+","+chessNum[num][2]; me = !me; num++; } }
3赞 · 1采集
数据加载中...