Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.55 KB | None | 0 0
  1. private boolean isAWinningMove(int column, int row, char playerID)
  2.     {
  3.         return isAWinningColumn(column, playerID) || isAWinningRow(row, playerID) || isAWinningD1(column, row, playerID) || isAWinningD2(column, row, playerID);
  4.     }
  5.    
  6.     private boolean isAWinningColumn(int column, char playerID)
  7.     {
  8.         int number = 0;
  9.        
  10.         for (int i = 0; i < tab[column].length; ++i)
  11.         {
  12.             if (tab[column][i] == playerID)
  13.                 ++number;
  14.             else
  15.                 number = 0;
  16.            
  17.             if (number >= 4)
  18.                 return true;
  19.         }
  20.        
  21.         return false;
  22.     }
  23.    
  24.     private boolean isAWinningRow(int row, char playerID)
  25.     {
  26.         int number = 0;
  27.        
  28.         for (int i = 0; i < tab.length; ++i)
  29.         {
  30.             if (tab[i][row] == playerID)
  31.                 ++number;
  32.             else
  33.                 number = 0;
  34.            
  35.             if (number >= 4)
  36.                 return true;
  37.         }
  38.        
  39.         return false;
  40.     }
  41.    
  42.     private boolean isAWinningD1(int column, int row, char playerID)
  43.     {
  44.         for ( ; column > 0 && row > 0; --column, --row) {}
  45.        
  46.         int number = 0;
  47.        
  48.         for (int i = 0; column + i < tab.length && row + i < tab[0].length; ++i)
  49.         {
  50.             if (tab[column+i][row+i] == playerID)
  51.                 ++number;
  52.             else
  53.                 number = 0;
  54.            
  55.             if (number >= 4)
  56.                 return true;
  57.         }
  58.        
  59.         return false;
  60.     }
  61.    
  62.     private boolean isAWinningD2(int column, int row, char playerID)
  63.     {
  64.         for ( ; column < tab.length && row > 0; ++column, --row) {}
  65.        
  66.         int number = 0;
  67.        
  68.         for (int i = 0; column - i >= 0 && row + i < tab[0].length; ++i)
  69.         {
  70.             if (tab[column-i][row+i] == playerID)
  71.                 ++number;
  72.             else
  73.                 number = 0;
  74.            
  75.             if (number >= 4)
  76.                 return true;
  77.         }
  78.        
  79.         return false;
  80.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement