From 507ec6ed4ab1fecc8ef97b25c4eea0ea7050bb70 Mon Sep 17 00:00:00 2001 From: Tobydrama Date: Tue, 21 Apr 2020 15:49:38 +0200 Subject: [PATCH] fixed some bugs with powerdown screens --- .../fiasko/roborally/networking/RoboRallyClientListener.java | 2 +- .../roborally/networking/containers/ErrorResponse.java | 5 ++++- .../java/inf112/fiasko/roborally/objects/RoboRallyGame.java | 3 +-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/inf112/fiasko/roborally/networking/RoboRallyClientListener.java b/src/main/java/inf112/fiasko/roborally/networking/RoboRallyClientListener.java index cc3c189..af7c60e 100644 --- a/src/main/java/inf112/fiasko/roborally/networking/RoboRallyClientListener.java +++ b/src/main/java/inf112/fiasko/roborally/networking/RoboRallyClientListener.java @@ -43,13 +43,13 @@ class RoboRallyClientListener extends Listener { wrapper.server != null, info.getPlayerName(), wrapper.server); } else if (object instanceof ProgrammingCardDeck) { if(((ProgrammingCardDeck) object).isEmpty()){ + wrapper.roboRallyGame.setProgram(new ArrayList<>()); if (wrapper.roboRallyGame.getRobotPowerdown()){ wrapper.roboRallyGame.setGameState(GameState.SKIP_POWER_DOWN_SCREEN); } else { wrapper.roboRallyGame.setGameState(GameState.CHOOSING_POWER_DOWN); } - wrapper.roboRallyGame.setProgram(new ArrayList<>()); } else {wrapper.roboRallyGame.setGameState(GameState.CHOOSING_CARDS);} new Thread(() -> wrapper.roboRallyGame.setPlayerHand((ProgrammingCardDeck) object)).start(); diff --git a/src/main/java/inf112/fiasko/roborally/networking/containers/ErrorResponse.java b/src/main/java/inf112/fiasko/roborally/networking/containers/ErrorResponse.java index 9b010a1..e88ff17 100644 --- a/src/main/java/inf112/fiasko/roborally/networking/containers/ErrorResponse.java +++ b/src/main/java/inf112/fiasko/roborally/networking/containers/ErrorResponse.java @@ -4,7 +4,7 @@ package inf112.fiasko.roborally.networking.containers; * This class represents a response saying that something went wrong with the request */ public class ErrorResponse { - private final String errorMessage; + private String errorMessage; private boolean critical; /** @@ -16,6 +16,9 @@ public class ErrorResponse { this.errorMessage = errorMessage; this.critical = false; } + public ErrorResponse(){ + + } /** * Constructs a new error response diff --git a/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java b/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java index 99ec6cf..b4e6023 100644 --- a/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java +++ b/src/main/java/inf112/fiasko/roborally/objects/RoboRallyGame.java @@ -181,11 +181,10 @@ public class RoboRallyGame implements DrawableGame, InteractableGame { removeNonLockedProgrammingCardsFromPlayers(); } - if (gameBoard.getPowerDown(Objects.requireNonNull(getPlayerFromName(this.playerName)).getRobotID())) { + if (getPlayerFromName(this.playerName)!=null&& gameBoard.getPowerDown(Objects.requireNonNull(getPlayerFromName(this.playerName)).getRobotID())) { setGameState(GameState.CHOOSING_STAY_IN_POWER_DOWN); } else { setGameState(GameState.LOADING); - } }