Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void TGameBoard::Set(int _i, EValue _e)
- {
- c[_i] = _e;
- }
- bool TGameBoard::CheckWinner(TGameBoard c)
- {
- //std::cout << "\nChecking Winner";
- //Check horizontals
- for (int i = 0; i < 3; ++i)
- {
- if (c(i, 0) == c(i, 1) && c(i, 1) == c(i, 2) && c(i, 0) != NONE)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- }
- //Check verticles
- for (int i = 0; i < 3; ++i)
- {
- if (c(0, i) == c(1, i) && c(1, i) == c(2, i) && c(0, i) != NONE)
- {
- // std::cout << "\nWinner Found";
- return true;
- }
- }
- //Check Diagonals
- if (c(0, 0) == c(1, 1) && c(1, 1) == c(2, 2) && c(0, 0) != NONE)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- if (c(2, 0) == c(1, 1) && c(1, 1) == c(0, 2) && c(2, 0) != NONE)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- //std::cout << "\nNo Winner Found";
- return false;
- }
- bool TGameBoard::CheckWinner(TGameBoard c, EPlayer _Player)
- {
- //std::cout << "\nChecking Winner";
- EValue eGoal;
- if (_Player == COMPUTER)
- {
- eGoal = CROSS;
- }
- else
- {
- eGoal = NAUGHT;
- }
- //Check horizontals
- for (int i = 0; i < 3; ++i)
- {
- if (c(i, 0) == c(i, 1) && c(i, 1) == c(i, 2) == eGoal)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- }
- //Check verticles
- for (int i = 0; i < 3; ++i)
- {
- if (c(0, i) == c(1, i) && c(1, i) == c(2, i) && c(0, i) == eGoal)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- }
- //Check Diagonals
- if (c(0, 0) == c(1, 1) && c(1, 1) == c(2, 2) && c(0, 0) == eGoal)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- if (c(2, 0) == c(1, 1) && c(1, 1) == c(0, 2) && c(2, 0) == eGoal)
- {
- //std::cout << "\nWinner Found";
- return true;
- }
- //std::cout << "\nNo Winner Found";
- return false;
- }
- bool TGameBoard::IsFull()
- {
- for (int i = 0; i < 9; ++i)
- {
- if (c[i] == NONE)
- {
- return false;
- }
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement