Set fields and variables to final when possible
This commit is contained in:
parent
431924adb6
commit
c70ec31da6
@ -18,9 +18,9 @@ public class GameBoard extends JPanel {
|
|||||||
|
|
||||||
private BufferedImage strikedHor, strikedVer, strikedDiag, strikedDiagRev;
|
private BufferedImage strikedHor, strikedVer, strikedDiag, strikedDiagRev;
|
||||||
private BufferedImage background, figureX, figureO;
|
private BufferedImage background, figureX, figureO;
|
||||||
private Table table;
|
private final Table table;
|
||||||
private TitlePanel title;
|
private final TitlePanel title;
|
||||||
private int imgWidth, imgHeight;
|
private final int imgWidth, imgHeight;
|
||||||
|
|
||||||
public GameBoard(TitlePanel title) {
|
public GameBoard(TitlePanel title) {
|
||||||
this.title = title;
|
this.title = title;
|
||||||
@ -47,10 +47,10 @@ public class GameBoard extends JPanel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void drawTable(Graphics g) {
|
private void drawTable(Graphics g) {
|
||||||
Figure[][] figures = table.getFiguresArray();
|
final Figure[][] figures = table.getFiguresArray();
|
||||||
for (int i = 0; i < figures.length; i++) {
|
for (int i = 0; i < figures.length; i++) {
|
||||||
for (int j = 0; j < figures[0].length; j++) {
|
for (int j = 0; j < figures[0].length; j++) {
|
||||||
char figure = figures[i][j].getFigure();
|
final char figure = figures[i][j].getFigure();
|
||||||
if (figure != Figure.EMPTY) {
|
if (figure != Figure.EMPTY) {
|
||||||
BufferedImage image = ( (figure == Figure.X) ? figureX : figureO );
|
BufferedImage image = ( (figure == Figure.X) ? figureX : figureO );
|
||||||
int x = j * CELL_SIZE + OFFSET + (CELL_SIZE - image.getWidth()) / 2;
|
int x = j * CELL_SIZE + OFFSET + (CELL_SIZE - image.getWidth()) / 2;
|
||||||
@ -62,11 +62,11 @@ public class GameBoard extends JPanel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void drawStrike(Graphics g) {
|
private void drawStrike(Graphics g) {
|
||||||
int strikeMode = table.getStrikedMode();
|
final int strikeMode = table.getStrikedMode();
|
||||||
if (strikeMode != Table.MODE_NOT_STRIKED) {
|
if (strikeMode != Table.MODE_NOT_STRIKED) {
|
||||||
final int strikedSize = strikedHor.getHeight();
|
final int strikedSize = strikedHor.getHeight();
|
||||||
int coord = OFFSET + (CELL_SIZE - strikedSize) / 2;
|
final int coord = OFFSET + (CELL_SIZE - strikedSize) / 2;
|
||||||
int strikePos = strikeMode & 0x03;
|
final int strikePos = strikeMode & 0x03;
|
||||||
|
|
||||||
if ( (strikeMode & Table.MODE_STRIKE_DIAGONAL) != 0 ) {
|
if ( (strikeMode & Table.MODE_STRIKE_DIAGONAL) != 0 ) {
|
||||||
g.drawImage(strikedDiag, coord, coord, null);
|
g.drawImage(strikedDiag, coord, coord, null);
|
||||||
@ -81,16 +81,16 @@ public class GameBoard extends JPanel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void gameBoardMousePressed(MouseEvent evt) {
|
private void gameBoardMousePressed(MouseEvent evt) {
|
||||||
Point id = convertToID( evt.getPoint() );
|
final Point id = convertToID( evt.getPoint() );
|
||||||
//table.computerMove();
|
//table.computerMove();
|
||||||
table.setFigure(id.x, id.y);
|
table.setFigure(id.x, id.y);
|
||||||
|
|
||||||
if (table.getStrikedMode() == Table.MODE_NOT_STRIKED) title.setMessage("");
|
if (table.getStrikedMode() == Table.MODE_NOT_STRIKED) title.setMessage("");
|
||||||
|
|
||||||
if (!table.hasMoreMoves()) {
|
if (!table.hasMoreMoves()) {
|
||||||
char winner = table.checkWinner();
|
final char winner = table.checkWinner();
|
||||||
if (winner != Figure.EMPTY) {
|
if (winner != Figure.EMPTY) {
|
||||||
int winX = (winner == Figure.X) ? 1 : 0;
|
final int winX = (winner == Figure.X) ? 1 : 0;
|
||||||
title.updateWin(winX, 1 - winX);
|
title.updateWin(winX, 1 - winX);
|
||||||
title.setMessage(winner + " is win");
|
title.setMessage(winner + " is win");
|
||||||
} else title.setMessage("Drow");
|
} else title.setMessage("Drow");
|
||||||
|
@ -23,7 +23,7 @@ public class Main extends JFrame {
|
|||||||
setDefaultCloseOperation(EXIT_ON_CLOSE);
|
setDefaultCloseOperation(EXIT_ON_CLOSE);
|
||||||
setLayout(new BorderLayout(0, 0));
|
setLayout(new BorderLayout(0, 0));
|
||||||
|
|
||||||
TitlePanel title = new TitlePanel(this);
|
final TitlePanel title = new TitlePanel(this);
|
||||||
add(title, BorderLayout.NORTH);
|
add(title, BorderLayout.NORTH);
|
||||||
add(new GameBoard(title));
|
add(new GameBoard(title));
|
||||||
|
|
||||||
|
@ -15,10 +15,10 @@ public class Table {
|
|||||||
MODE_STRIKE_DIAGONAL = 0x10,
|
MODE_STRIKE_DIAGONAL = 0x10,
|
||||||
MODE_STRIKE_DIAGONAL_REVERSE = 0x20;
|
MODE_STRIKE_DIAGONAL_REVERSE = 0x20;
|
||||||
|
|
||||||
private boolean nextMoveIsX;
|
private final Figure[][] table;
|
||||||
private Figure[][] table;
|
private final Random random;
|
||||||
private Random random;
|
|
||||||
private int strikedMode;
|
private int strikedMode;
|
||||||
|
private boolean nextMoveIsX;
|
||||||
|
|
||||||
public Table() {
|
public Table() {
|
||||||
table = new Figure[3][3];
|
table = new Figure[3][3];
|
||||||
@ -84,7 +84,7 @@ public class Table {
|
|||||||
{ table[0][0], table[1][1], table[2][2] },
|
{ table[0][0], table[1][1], table[2][2] },
|
||||||
{ table[0][2], table[1][1], table[2][0] }
|
{ table[0][2], table[1][1], table[2][0] }
|
||||||
};
|
};
|
||||||
char[] maybeWinnerArray = new char[array.length];
|
final char[] maybeWinnerArray = new char[array.length];
|
||||||
// Calculate winning situations for computer (zeroes).
|
// Calculate winning situations for computer (zeroes).
|
||||||
for (int i = 0; i < array.length; i++) {
|
for (int i = 0; i < array.length; i++) {
|
||||||
Figure[] figures = array[i];
|
Figure[] figures = array[i];
|
||||||
@ -171,7 +171,7 @@ public class Table {
|
|||||||
|
|
||||||
private boolean isWinnerCombo(Figure f1, Figure f2, Figure f3) {
|
private boolean isWinnerCombo(Figure f1, Figure f2, Figure f3) {
|
||||||
if (f1.isEmpty()) return false;
|
if (f1.isEmpty()) return false;
|
||||||
char figure = f1.getFigure();
|
final char figure = f1.getFigure();
|
||||||
return ( (figure == f2.getFigure()) &&
|
return ( (figure == f2.getFigure()) &&
|
||||||
(figure == f3.getFigure()) );
|
(figure == f3.getFigure()) );
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user