const playerX = prompt("Please enter player one's name:"); const playerO = prompt("Please enter player two's name:"); const boxes = document.getElementsByClassName("box"); let currentPlayer = playerX; const posX = []; let indexX = 0; const posO = []; let indexO = 0; let marks = 0; document.getElementById("output-text").innerHTML = currentPlayer + "\'s turn." document.getElementById("clear").hidden = true; function clickTracker(button) { mark(button.id); } function mark(index) { let winstate = false; marks++; if(currentPlayer === playerX) { boxes[index].innerHTML = "X" posX[indexX] = index; indexX++; if(marks > 4) { winstate = checkForWin(posX); } if(winstate === true) { document.getElementById("output-text").innerHTML = currentPlayer + " WON!" document.getElementById("clear").hidden = false; } else { currentPlayer = playerO; document.getElementById("output-text").innerHTML = currentPlayer + "'s turn." } } else { boxes[index].innerHTML = "O" posO[indexO] = index; indexO++; if(marks > 4) { winstate = checkForWin(posO); } if(winstate === true) { document.getElementById("output-text").innerHTML = currentPlayer + " WON!" document.getElementById("clear").hidden = false; } else { currentPlayer = playerX; document.getElementById("output-text").innerHTML = currentPlayer + "'s turn." } } } function checkForWin(player) { const winstates = [ [0,1,2], [3,4,5], [6,7,8], [0,3,6], [1,4,7], [2,5,8], [0,4,8], [2,4,6] ]; let count = 0; for(let j = 0; j < winstates.length; j++) { for(let k = 0; k < player.length; k++) { for(let i = 0; i < winstates[j].length; i++) { if(player[k] == winstates[j][i]) { count++; } } } if(count === 3) { return true; } else { count = 0; } } return false; } function resetAndClear() { for(let i = 0; i < boxes.length; i++) { boxes[i].innerHTML = "" } if(currentPlayer === playerX) { currentPlayer = playerO; } else { currentPlayer = playerX; } for(let i = 0; i < posX.length; i++) { posX[i] = -1; } for(let i = 0; i < posO.length; i++) { posO[i] = -1; } marks = 0; document.getElementById("output-text").innerHTML = currentPlayer + "\'s turn" document.getElementById("clear").hidden = true; }