Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private boolean isAWinningMove(int column, int row, char playerID)
- {
- return isAWinningColumn(column, playerID) || isAWinningRow(row, playerID) || isAWinningD1(column, row, playerID) || isAWinningD2(column, row, playerID);
- }
- private boolean isAWinningColumn(int column, char playerID)
- {
- int number = 0;
- for (int i = 0; i < tab[column].length; ++i)
- {
- if (tab[column][i] == playerID)
- ++number;
- else
- number = 0;
- if (number >= 4)
- return true;
- }
- return false;
- }
- private boolean isAWinningRow(int row, char playerID)
- {
- int number = 0;
- for (int i = 0; i < tab.length; ++i)
- {
- if (tab[i][row] == playerID)
- ++number;
- else
- number = 0;
- if (number >= 4)
- return true;
- }
- return false;
- }
- private boolean isAWinningD1(int column, int row, char playerID)
- {
- for ( ; column > 0 && row > 0; --column, --row) {}
- int number = 0;
- for (int i = 0; column + i < tab.length && row + i < tab[0].length; ++i)
- {
- if (tab[column+i][row+i] == playerID)
- ++number;
- else
- number = 0;
- if (number >= 4)
- return true;
- }
- return false;
- }
- private boolean isAWinningD2(int column, int row, char playerID)
- {
- for ( ; column < tab.length && row > 0; ++column, --row) {}
- int number = 0;
- for (int i = 0; column - i >= 0 && row + i < tab[0].length; ++i)
- {
- if (tab[column-i][row+i] == playerID)
- ++number;
- else
- number = 0;
- if (number >= 4)
- return true;
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement