Show winner
This commit is contained in:
parent
0c7a3d53ea
commit
9b4cecc406
@ -21,6 +21,8 @@ import java.io.IOException;
|
|||||||
public class GameCanvas extends DoubleBufferedCanvas implements Runnable, NetworkListener {
|
public class GameCanvas extends DoubleBufferedCanvas implements Runnable, NetworkListener {
|
||||||
|
|
||||||
private static final String WAIT_MESSAGE = "Please, wait...";
|
private static final String WAIT_MESSAGE = "Please, wait...";
|
||||||
|
private static final int WIN = 1, LOOSE = -1, NOTHING = 0;
|
||||||
|
private static final String WIN_MESSAGE = "YOU WIN", LOOSE_MESSAGE = "YOU LOOSE";
|
||||||
|
|
||||||
private final BufferedImage background;
|
private final BufferedImage background;
|
||||||
private final Font font;
|
private final Font font;
|
||||||
@ -31,7 +33,7 @@ public class GameCanvas extends DoubleBufferedCanvas implements Runnable, Networ
|
|||||||
private final boolean serverInstance;
|
private final boolean serverInstance;
|
||||||
private SocketHelper socketHelper;
|
private SocketHelper socketHelper;
|
||||||
|
|
||||||
private int roundWinCount;
|
private int roundWinCount, winState;
|
||||||
private boolean gameStarted, serverMove;
|
private boolean gameStarted, serverMove;
|
||||||
|
|
||||||
public GameCanvas(boolean serverInstance) {
|
public GameCanvas(boolean serverInstance) {
|
||||||
@ -49,7 +51,13 @@ public class GameCanvas extends DoubleBufferedCanvas implements Runnable, Networ
|
|||||||
final FontMetrics metrics = g.getFontMetrics(font);
|
final FontMetrics metrics = g.getFontMetrics(font);
|
||||||
g.drawImage(background, 0, 0, null);
|
g.drawImage(background, 0, 0, null);
|
||||||
g.setFont(font);
|
g.setFont(font);
|
||||||
if (gameStarted) {
|
if (winState != NOTHING) {
|
||||||
|
g.setColor(Color.WHITE);
|
||||||
|
final String text = (winState == WIN) ? WIN_MESSAGE : LOOSE_MESSAGE;
|
||||||
|
final int x = (Constants.WIDTH - metrics.stringWidth(text)) / 2;
|
||||||
|
final int y = (Constants.HEIGHT + metrics.getHeight()) / 2;
|
||||||
|
g.drawString(text, x, y);
|
||||||
|
} else if (gameStarted) {
|
||||||
terrain.draw(g);
|
terrain.draw(g);
|
||||||
serverTurret.draw(g);
|
serverTurret.draw(g);
|
||||||
clientTurret.draw(g);
|
clientTurret.draw(g);
|
||||||
@ -134,6 +142,7 @@ public class GameCanvas extends DoubleBufferedCanvas implements Runnable, Networ
|
|||||||
gameStarted = true;
|
gameStarted = true;
|
||||||
serverMove = true;
|
serverMove = true;
|
||||||
roundWinCount = 0;
|
roundWinCount = 0;
|
||||||
|
winState = NOTHING;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void newRound(long seed) {
|
private void newRound(long seed) {
|
||||||
@ -167,7 +176,7 @@ public class GameCanvas extends DoubleBufferedCanvas implements Runnable, Networ
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void finishGame(boolean instanceWin) {
|
private void finishGame(boolean instanceWin) {
|
||||||
System.out.println(instanceWin ? "You win" : "Opponent win");
|
winState = (instanceWin) ? WIN : LOOSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean allowMove() {
|
private boolean allowMove() {
|
||||||
|
Loading…
Reference in New Issue
Block a user