diff --git a/src/App.vue b/src/App.vue index b9c517e82290d435968a7667b3baca688a9647ed..e0d7e47308c77bd4b38c0bb156d33a3d4fdddee6 100644 --- a/src/App.vue +++ b/src/App.vue @@ -22,22 +22,22 @@ function confirm() { function playChess(item, r_i, c_i) { if (isWin.length || item) return lattices.value[r_i][c_i] = 'isBlack' - const test = checkWin(r_i, 'isBlack') + const test = checkWin(r_i, c_i, lattices.value) if (test) { - console.log(test) isWin = test } else { - + robotMove() } } function robotMove() { const [bestRow, bestCol] = findBestMove(lattices.value, "isWhite"); - lattices.value[bestRow][bestCol] = "isWhite"; + console.log(bestRow, bestCol) + // lattices.value[bestRow][bestCol] = "isWhite"; - const testRobot = checkWin(lattices.value, "isWhite") + /* const testRobot = checkWin(lattices.value) if (testRobot) { isWin = testRobot - } + } */ } diff --git a/src/utils/index.js b/src/utils/index.js index d09d70f8f9463709c8cf9607812a6249a81cd80b..b4d910c96af48c71a26c23e539de6e9c34548846 100644 --- a/src/utils/index.js +++ b/src/utils/index.js @@ -1,6 +1,8 @@ -export function checkWin(row, col, pieceType, board) { - const boardSize = board.length; +export function checkWin(row, col, board) { + const _row = board.length; + const _col = board[0].length + const pieceType = board[row][col] const directions = [ [1, 0], // 水平方向 @@ -16,7 +18,7 @@ export function checkWin(row, col, pieceType, board) { let y = col + dy; // 向正反两个方向扩展,检查是否有连续的五个相同棋子 - while (x >= 0 && x < boardSize && y >= 0 && y < boardSize && board[x][y] === pieceType) { + while (x >= 0 && x < _row && y >= 0 && y < _col && board[x][y] === pieceType) { count++; x += dx; y += dy; @@ -24,7 +26,7 @@ export function checkWin(row, col, pieceType, board) { x = row - dx; y = col - dy; - while (x >= 0 && x < boardSize && y >= 0 && y < boardSize && board[x][y] === pieceType) { + while (x >= 0 && x < _row && y >= 0 && y < _col && board[x][y] === pieceType) { count++; x -= dx; y -= dy;