I am making a TicTacToe game and this code is intended as a win condition checking mechanism. I have tried converting this code from if statements into loops but I am not sure what I am doing wrong. Here is my base code with all the If statements:
{
char winner = '_';
for (int i = 0; i < 3; i++)
{
//check win for p1
if(cells[i,0] == p1 && cells[i,1] == p1 && cells[i,2] == p1) //horizontal
{
winner = p1;
}
else if (cells[0, i] == p1 && cells[1, i] == p1 && cells[2, i] == p1)//vertical
{
winner = p1;
}
else if (cells[0, 0] == p1 && cells[1, 1] == p1 && cells[2, 2] == p1)//diagonal left to right
{
winner = p1;
}
else if (cells[0, 2] == p1 && cells[1, 1] == p1 && cells[2, 0] == p1)//diagonal right to left
{
winner = p1;
}
//check win for p2
else if (cells[i, 0] == p2 && cells[i, 1] == p2 && cells[i, 2] == p2)//horizontal
{
winner = p2;
}
else if (cells[0, i] == p2 && cells[1, i] == p2 && cells[2, i] == p2)//vertical
{
winner = p2;
}
else if (cells[0, 0] == p2 && cells[1, 1] == p2 && cells[2, 2] == p2)//diagonal left to right
{
winner = p2;
}
else if (cells[0, 2] == p2 && cells[1, 1] == p2 && cells[2, 0] == p2)//diagonal right to left
{
winner = p2;
}
}
return winner;
}
Aucun commentaire:
Enregistrer un commentaire