Advertisement
Guest User

Untitled

a guest
Sep 3rd, 2013
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.89 KB | None | 0 0
  1. void TGameBoard::Set(int _i, EValue _e)
  2. {
  3.     c[_i] = _e;
  4. }
  5.  
  6. bool TGameBoard::CheckWinner(TGameBoard c)
  7. {
  8.     //std::cout << "\nChecking Winner";
  9.  
  10.     //Check horizontals
  11.     for (int i = 0; i < 3; ++i)
  12.     {
  13.         if (c(i, 0) == c(i, 1) && c(i, 1) == c(i, 2) && c(i, 0) != NONE)
  14.         {
  15.             //std::cout << "\nWinner Found";
  16.             return true;
  17.         }
  18.     }
  19.  
  20.     //Check verticles
  21.     for (int i = 0; i < 3; ++i)
  22.     {
  23.         if (c(0, i) == c(1, i) && c(1, i) == c(2, i) && c(0, i) != NONE)
  24.         {
  25.         //  std::cout << "\nWinner Found";
  26.             return true;
  27.         }
  28.     }
  29.  
  30.     //Check Diagonals
  31.     if (c(0, 0) == c(1, 1) && c(1, 1) == c(2, 2) && c(0, 0) != NONE)
  32.     {
  33.         //std::cout << "\nWinner Found";
  34.         return true;
  35.     }
  36.     if (c(2, 0) == c(1, 1) && c(1, 1) == c(0, 2) && c(2, 0) != NONE)
  37.     {
  38.         //std::cout << "\nWinner Found";
  39.         return true;
  40.     }
  41.  
  42.     //std::cout << "\nNo Winner Found";
  43.     return false;
  44. }
  45.  
  46. bool TGameBoard::CheckWinner(TGameBoard c, EPlayer _Player)
  47. {
  48.     //std::cout << "\nChecking Winner";
  49.  
  50.     EValue eGoal;
  51.     if (_Player == COMPUTER)
  52.     {
  53.         eGoal = CROSS;
  54.     }
  55.     else
  56.     {
  57.         eGoal = NAUGHT;
  58.     }
  59.  
  60.     //Check horizontals
  61.     for (int i = 0; i < 3; ++i)
  62.     {
  63.         if (c(i, 0) == c(i, 1) && c(i, 1) == c(i, 2) == eGoal)
  64.         {
  65.             //std::cout << "\nWinner Found";
  66.             return true;
  67.         }
  68.     }
  69.  
  70.     //Check verticles
  71.     for (int i = 0; i < 3; ++i)
  72.     {
  73.         if (c(0, i) == c(1, i) && c(1, i) == c(2, i) && c(0, i) == eGoal)
  74.         {
  75.             //std::cout << "\nWinner Found";
  76.             return true;
  77.         }
  78.     }
  79.  
  80.     //Check Diagonals
  81.     if (c(0, 0) == c(1, 1) && c(1, 1) == c(2, 2) && c(0, 0) == eGoal)
  82.     {
  83.         //std::cout << "\nWinner Found";
  84.         return true;
  85.     }
  86.     if (c(2, 0) == c(1, 1) && c(1, 1) == c(0, 2) && c(2, 0) == eGoal)
  87.     {
  88.         //std::cout << "\nWinner Found";
  89.         return true;
  90.     }
  91.  
  92.     //std::cout << "\nNo Winner Found";
  93.     return false;
  94. }
  95.  
  96. bool TGameBoard::IsFull()
  97. {
  98.     for (int i = 0; i < 9; ++i)
  99.     {
  100.         if (c[i] == NONE)
  101.         {
  102.             return false;
  103.         }
  104.     }
  105.  
  106.     return true;
  107. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement