Browse Source

Reset game on game end

feature_TicTacToe_BasicPlayfield
kfkama 2 years ago
parent
commit
e5690a005d
  1. 12
      src/main/java/TicTacToe/TicTacToeGame.java
  2. 35
      src/main/java/TicTacToe/cell.java

12
src/main/java/TicTacToe/TicTacToeGame.java

@ -74,13 +74,13 @@ public class TicTacToeGame extends JPanel {
public void endTurn() {
if(checkPlayfield() != 0) {
JOptionPane.showMessageDialog(getParent(),"Player: " + playerID + " Wins!");
System.exit(0);
resetGame();
}
turns++;
if(turns >= playFieldSize) {
JOptionPane.showMessageDialog(getParent(),"Draw!");
System.exit(0);
resetGame();
}
playerID++;
@ -105,6 +105,14 @@ public class TicTacToeGame extends JPanel {
return 0;
}
public void resetGame() {
for (cell c : field) {
c.reset();
}
playerID = 1;
turns = 0;
}
}

35
src/main/java/TicTacToe/cell.java

@ -1,4 +1,5 @@
package TicTacToe;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
@ -9,10 +10,11 @@ public class cell extends JButton {
public int playerID = 0;
private TicTacToeGame ttt;
public cell(TicTacToeGame _ttt) {
ttt = _ttt;
setBackground(new Color(255,255,255));
addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@ -22,23 +24,26 @@ public class cell extends JButton {
}
protected void OnMouseClick() {
if(playerID == 0) {
playerID = ttt.playerID;
if (playerID == 0) {
playerID = ttt.playerID;
ttt.endTurn();
setEnabled(false);
switch (playerID) {
case 1: setBackground(new Color(255,0,0));
break;
case 2: setBackground(new Color(0,0,255));
break;
default: ;
break;
case 1:
setBackground(new Color(255, 0, 0));
break;
case 2:
setBackground(new Color(0, 0, 255));
break;
}
}
}
}
protected void reset() {
playerID = 0;
setEnabled(true);
setBackground(new Color(255,255,255));
}
}
Loading…
Cancel
Save