From 68d84b9493a0f66bc5acfa9f7daafde06e876313 Mon Sep 17 00:00:00 2001 From: Seraina Date: Sun, 1 May 2022 19:44:10 +0200 Subject: [PATCH] Ensured that noise notifications can only come from non kickedOff passenegers --- .../gamelogic/ServerGameInfoHandler.java | 18 ++++++++---- .../client/gui/game/GameController.java | 28 +++++++++++++------ .../client/gui/lounge/LoungeSceneView.fxml | 2 +- 3 files changed, 32 insertions(+), 16 deletions(-) diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/gamelogic/ServerGameInfoHandler.java b/src/main/java/ch/unibas/dmi/dbis/cs108/gamelogic/ServerGameInfoHandler.java index 4347775..9c2cccd 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/gamelogic/ServerGameInfoHandler.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/gamelogic/ServerGameInfoHandler.java @@ -122,9 +122,12 @@ public class ServerGameInfoHandler { case ClientGameInfoHandler.noiseNotification + 5 + " time(s)": String outMsg = npc.getName() + ": " + noiseRandomizer(); //TODO: add likelyhood - game.getLobby().getAdmin().broadcastNpcChatMessageToLobby(outMsg); - game.getLobby().getAdmin().sendMsgToClientsInLobby(Protocol.printToGUI + "$" + GuiParameters.noiseHeardAtPosition - + "$" + npc.getPosition()); + if(!npc.getKickedOff()) { + game.getLobby().getAdmin().broadcastNpcChatMessageToLobby(outMsg); + game.getLobby().getAdmin().sendMsgToClientsInLobby( + Protocol.printToGUI + "$" + GuiParameters.noiseHeardAtPosition + + "$" + npc.getPosition()); + } break; case ClientGameInfoHandler.ghostVoteRequest: npc.vote(game); @@ -146,9 +149,12 @@ public class ServerGameInfoHandler { case ClientGameInfoHandler.noiseNotification + 4 + " time(s)": case ClientGameInfoHandler.noiseNotification + 5 + " time(s)": String outMsg = npc.getName() + ": " + noiseRandomizer(); - game.getLobby().getAdmin().broadcastNpcChatMessageToLobby(outMsg); - game.getLobby().getAdmin().sendMsgToClientsInLobby(Protocol.printToGUI + "$" + GuiParameters.noiseHeardAtPosition - + "$" + npc.getPosition()); + if(!npc.getKickedOff()) { + game.getLobby().getAdmin().broadcastNpcChatMessageToLobby(outMsg); + game.getLobby().getAdmin().sendMsgToClientsInLobby( + Protocol.printToGUI + "$" + GuiParameters.noiseHeardAtPosition + + "$" + npc.getPosition()); + } break; case ClientGameInfoHandler.humanVoteRequest: npc.vote(game); diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameController.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameController.java index 0c26a83..3bcd3c9 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameController.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameController.java @@ -199,7 +199,7 @@ public class GameController implements Initializable { */ public void addMessageToNotificationText(String msg) { LOGGER.trace("addMessage " + msg); - Text notification = new Text("\\R" + msg); + Text notification = new Text(System.lineSeparator() + msg); notification.setFill(Color.BLACK); notification.setStyle("-fx-font: 50 arial;"); Platform.runLater(new Runnable() { @@ -352,7 +352,9 @@ public class GameController implements Initializable { @Override public void run() { try { - noiseImage0.setImage(loadBellImage()); + if(!gameStateModel.getKickedOff()[0]) { + noiseImage0.setImage(loadBellImage()); + } } catch (Exception e) { LOGGER.debug(e.getMessage()); } @@ -370,7 +372,9 @@ public class GameController implements Initializable { @Override public void run() { try { - noiseImage1.setImage(loadBellImage()); + if(!gameStateModel.getKickedOff()[1]) { + noiseImage1.setImage(loadBellImage()); + } } catch (Exception e) { LOGGER.debug(e.getMessage()); } @@ -387,7 +391,9 @@ public class GameController implements Initializable { @Override public void run() { try { - noiseImage2.setImage(loadBellImage()); + if(!gameStateModel.getKickedOff()[2]) { + noiseImage2.setImage(loadBellImage()); + } } catch (Exception e) { LOGGER.debug(e.getMessage()); ; @@ -405,8 +411,9 @@ public class GameController implements Initializable { @Override public void run() { try { - LOGGER.debug("hello"); - noiseImage3.setImage(loadBellImage()); + if(!gameStateModel.getKickedOff()[3]) { + noiseImage3.setImage(loadBellImage()); + } } catch (Exception e) { LOGGER.debug(e.getMessage()); } @@ -423,8 +430,9 @@ public class GameController implements Initializable { @Override public void run() { try { - LOGGER.debug("hello"); - noiseImage4.setImage(loadBellImage()); + if(!gameStateModel.getKickedOff()[4]) { + noiseImage4.setImage(loadBellImage()); + } } catch (Exception e) { LOGGER.debug(e.getMessage()); } @@ -441,7 +449,9 @@ public class GameController implements Initializable { @Override public void run() { try { - noiseImage5.setImage(loadBellImage()); + if(!gameStateModel.getKickedOff()[5]) { + noiseImage5.setImage(loadBellImage()); + } } catch (Exception e) { LOGGER.debug(e.getMessage()); } diff --git a/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneView.fxml b/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneView.fxml index 1acc649..2d686ec 100644 --- a/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneView.fxml +++ b/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneView.fxml @@ -34,7 +34,7 @@ - +