Skip to content

Commit ddefd49

Browse files
committed
have added turnwise code
1 parent 505f88e commit ddefd49

File tree

1 file changed

+35
-10
lines changed

1 file changed

+35
-10
lines changed

tic-tac-toe/src/App.js

Lines changed: 35 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ import "./App.css";
33

44
function App() {
55
const NUMBER_OF_BOXES = 9;
6-
const [xTurn, setXTurn] = useState(true)
7-
const [xInput, setXInput] = useState([])
8-
const [oInput, setOInput] = useState([])
6+
const [xTurn, setXTurn] = useState(true);
7+
const [xInput, setXInput] = useState([]);
8+
const [oInput, setOInput] = useState([]);
99

1010
const winnings = [
1111
[0, 1, 2],
@@ -27,28 +27,53 @@ function App() {
2727
item[2] === array[2]
2828
) {
2929
didWin = true;
30+
alert("win");
3031
}
3132
});
3233
return didWin;
3334
};
3435

3536
const handleClick = (i) => {
36-
let tempX = [...xInput, i]
37-
setXInput(tempX)
38-
if (tempX.length >= 3) {
39-
let didWin = checkWins(tempX);
40-
console.log("didWin", didWin);
37+
setXTurn(!xTurn);
38+
39+
if (xTurn) {
40+
let tempX = [...xInput, i];
41+
setXInput(tempX);
42+
43+
if (tempX.length >= 3) {
44+
let didWin = checkWins(tempX);
45+
console.log("didWin", didWin);
46+
}
47+
} else {
48+
let tempO = [...oInput, i];
49+
setOInput(tempO);
50+
51+
if (tempO.length >= 3) {
52+
let didWin = checkWins(tempO);
53+
console.log("didWin", didWin);
54+
}
4155
}
4256
};
4357

44-
console.log('xInput', xInput)
58+
console.log("xInput", xInput);
59+
console.log("oInput", oInput);
60+
console.log("xTurn", xTurn);
61+
62+
const renderBoardValue = (i) => {
63+
if (xInput.includes(i)) {
64+
return "X";
65+
} else if (oInput.includes(i)) {
66+
return "0";
67+
}
68+
return "";
69+
};
4570

4671
const renderBoard = () => {
4772
let arr = [];
4873
for (let i = 0; i < NUMBER_OF_BOXES; i++) {
4974
arr.push(
5075
<div onClick={() => handleClick(i)} className="box" key={i}>
51-
{i}
76+
{renderBoardValue(i)}
5277
</div>
5378
);
5479
}

0 commit comments

Comments
 (0)