diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationDayController.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationDayController.java index 155a3e9..f0aecc8 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationDayController.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationDayController.java @@ -1,6 +1,7 @@ package ch.unibas.dmi.dbis.cs108.multiplayer.client.gui; import ch.unibas.dmi.dbis.cs108.BudaLogConfig; +import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.game.GameController; import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.lounge.LoungeSceneViewController; import java.net.URL; import java.util.ResourceBundle; @@ -20,9 +21,21 @@ public class TrainAnimationDayController implements Initializable { public static final BudaLogConfig l = new BudaLogConfig(LOGGER); @FXML - public ImageView wagonWallImageView; + private ImageView wagonWallImageView; @FXML - public ImageView foreGroundAnimationImageView1; + private ImageView foreGroundAnimationImageView1; + @FXML + private ImageView room0ImageView; + @FXML + private ImageView room1ImageView; + @FXML + private ImageView room2ImageView; + @FXML + private ImageView room3ImageView; + @FXML + private ImageView room4ImageView; + @FXML + private ImageView room5ImageView; @FXML private ImageView backGroundAnimationImageView; @FXML @@ -54,11 +67,31 @@ public class TrainAnimationDayController implements Initializable { } public void updateSprites(){ - shadowTrain.setImage(Sprites.getShadow()); - wagonBGImageView.setImage(Sprites.getSecondWagon()); - wagonFloorImageView.setImage(Sprites.getEmptyWagon()); - wagonFullImageView.setImage(Sprites.getFullWagon()); - lokiImageView.setImage(Sprites.getLoki()); + Platform.runLater(new Runnable() { + @Override + public void run() { + try{ + shadowTrain.setImage(Sprites.getShadow()); + wagonBGImageView.setImage(Sprites.getSecondWagon()); + wagonFloorImageView.setImage(Sprites.getEmptyWagon()); + wagonFullImageView.setImage(Sprites.getFullWagon()); + lokiImageView.setImage(Sprites.getLoki()); + if(GameController.getGameStateModel().getDayClone()) { + Sprites.updateDayRoomSprites(GameController.getGameStateModel().getPassengerTrainClone()[1], GameController.getGameStateModel().getKickedOff()); + } else { + Sprites.updateNightRoomSprites(GameController.getGameStateModel().getPassengerTrainClone()[1], GameController.getGameStateModel().getKickedOff()); + } + room0ImageView.setImage(Sprites.getARoom(0)); + room1ImageView.setImage(Sprites.getARoom(1)); + room2ImageView.setImage(Sprites.getARoom(2)); + room3ImageView.setImage(Sprites.getARoom(3)); + room4ImageView.setImage(Sprites.getARoom(4)); + room5ImageView.setImage(Sprites.getARoom(5)); + } catch (Exception e) { + LOGGER.info(e.getMessage()); + } + } + }); } public ChatApp getChatApp() { @@ -81,6 +114,133 @@ public class TrainAnimationDayController implements Initializable { return wagonFullImageView; } + public void moveRoom0Up() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room0ImageView.setY(-20); + } + }); + } + + public void moveRoom0Down() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room0ImageView.setY(0); + } + }); + } + + public void moveRoom1Up() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room1ImageView.setY(-20); + } + }); + } + + public void moveRoom1Down() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room1ImageView.setY(0); + } + }); + } + + public void moveRoom2Up() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room2ImageView.setY(-20); + } + }); + } + + public void moveRoom2Down() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room2ImageView.setY(0); + } + }); + } + + public void moveRoom3Up() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room3ImageView.setY(-20); + } + }); + } + + public void moveRoom3Down() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room3ImageView.setY(0); + } + }); + } + + public void moveRoom4Up() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room4ImageView.setY(-20); + } + }); + } + + public void moveRoom4Down() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room4ImageView.setY(0); + } + }); + } + + public void moveRoom5Up() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room5ImageView.setY(-20); + } + }); + } + + public void moveRoom5Down() { + Platform.runLater(new Runnable() { + @Override + public void run() { + room5ImageView.setY(0); + } + }); + } + + + public void showFullWagon() { + Platform.runLater(new Runnable() { + @Override + public void run() { + wagonFullImageView.setVisible(true); + } + }); + } + + public void dontShowFullWagon() { + Platform.runLater(new Runnable() { + @Override + public void run() { + wagonFullImageView.setVisible(false); + } + }); + } + @Override public void initialize(URL location, ResourceBundle resources) { LoungeSceneViewController.setTrainAnimationDayController(this); @@ -101,61 +261,4 @@ public class TrainAnimationDayController implements Initializable { } }); } - - public void showFullWagon() { - Platform.runLater(new Runnable() { - @Override - public void run() { - wagonFullImageView.setVisible(true); - } - }); - } - - public void dontShowFullWagon() { - Platform.runLater(new Runnable() { - @Override - public void run() { - wagonFullImageView.setVisible(false); - } - }); - } - - /** - * Adds the gameView to the existing LobbyView - */ - public void addGameView(ChatApp c) { - Platform.runLater(new Runnable() { - @Override - public void run() { - try { - TrainAnimationDayController controller = new TrainAnimationDayController(); - LOGGER.debug(gamePane); - LOGGER.debug(loki); - LOGGER.debug(cApp); - gameAnchorPane.getChildren().add(c.game); - wagonFullImageView.setVisible(false); - } catch (Exception e) { - LOGGER.debug("Not yet initialized"); - e.printStackTrace(); - } - } - }); - } - - /** - * Removes the GameView again - needed when a game is over or a lobby is left - */ - public void removeGameView(ChatApp c) { - Platform.runLater(new Runnable() { - @Override - public void run() { - try { - gameAnchorPane.getChildren().clear(); - wagonFullImageView.setVisible(true); - } catch (Exception e) { - LOGGER.debug("Not yet initialized"); - } - } - }); - } } 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 96080f9..9dc374f 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 @@ -7,6 +7,7 @@ import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.GameStateModel; import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.Sprites; import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.SpritesDay; import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.TrainAnimationDayController; +import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.lounge.LoungeSceneViewController; import ch.unibas.dmi.dbis.cs108.multiplayer.helpers.GuiParameters; import ch.unibas.dmi.dbis.cs108.BudaLogConfig; import ch.unibas.dmi.dbis.cs108.multiplayer.client.gui.ClientModel; @@ -138,12 +139,12 @@ public class GameController implements Initializable { } else { Sprites.updateNightRoomSprites(gameStateModel.getPassengerTrainClone()[1], gameStateModel.getKickedOff()); } - room0ImageView.setImage(Sprites.getARoom(0)); + /*room0ImageView.setImage(Sprites.getARoom(0)); room1ImageView.setImage(Sprites.getARoom(1)); room2ImageView.setImage(Sprites.getARoom(2)); room3ImageView.setImage(Sprites.getARoom(3)); room4ImageView.setImage(Sprites.getARoom(4)); - room5ImageView.setImage(Sprites.getARoom(5)); + room5ImageView.setImage(Sprites.getARoom(5));*/ trainAnimation.updateSprites(); } catch (Exception e) { LOGGER.info(e.getMessage()); @@ -160,6 +161,7 @@ public class GameController implements Initializable { return chatAreaGame; } + public void setVoteButtonVisibilityDay(GameStateModel g){ Platform.runLater(new Runnable() { @Override @@ -236,21 +238,11 @@ public class GameController implements Initializable { } public void moveRoom0Up() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room0ImageView.setY(-20); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom0Up(); } public void moveRoom0Down() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room0ImageView.setY(0); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom0Down(); } /** @@ -261,21 +253,11 @@ public class GameController implements Initializable { .sendMsgToServer(Protocol.votedFor + "$" + client.getClient().getPosition() + "$" + 1); } public void moveRoom1Up() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room1ImageView.setY(-20); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom1Up(); } public void moveRoom1Down() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room1ImageView.setY(0); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom1Down(); } /** @@ -287,21 +269,11 @@ public class GameController implements Initializable { } public void moveRoom2Up() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room2ImageView.setY(-20); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom2Up(); } public void moveRoom2Down() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room2ImageView.setY(0); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom2Down(); } /** @@ -312,21 +284,11 @@ public class GameController implements Initializable { .sendMsgToServer(Protocol.votedFor + "$" + client.getClient().getPosition() + "$" + 3); } public void moveRoom3Up() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room3ImageView.setY(-20); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom3Up(); } public void moveRoom3Down() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room3ImageView.setY(0); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom3Down(); } /** @@ -337,21 +299,11 @@ public class GameController implements Initializable { .sendMsgToServer(Protocol.votedFor + "$" + client.getClient().getPosition() + "$" + 4); } public void moveRoom4Up() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room4ImageView.setY(-20); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom4Up(); } public void moveRoom4Down() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room4ImageView.setY(0); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom4Down(); } /** @@ -362,21 +314,11 @@ public class GameController implements Initializable { .sendMsgToServer(Protocol.votedFor + "$" + client.getClient().getPosition() + "$" + 5); } public void moveRoom5Up() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room5ImageView.setY(-20); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom5Up(); } public void moveRoom5Down() { - Platform.runLater(new Runnable() { - @Override - public void run() { - room5ImageView.setY(0); - } - }); + LoungeSceneViewController.getTrainAnimationDayController().moveRoom5Down(); } /** @@ -423,16 +365,20 @@ public class GameController implements Initializable { Text notification = new Text(System.lineSeparator() + msg); notification.setFill(Color.BLACK); notification.setStyle("-fx-font: 50 arial;"); - Platform.runLater(new Runnable() { - @Override - public void run() { - try { - notificationText.getChildren().add(notification); - } catch (Exception e) { - LOGGER.debug(e.getMessage()); + try { + Platform.runLater(new Runnable() { + @Override + public void run() { + try { + notificationText.getChildren().add(notification); + } catch (Exception e) { + LOGGER.debug(e.getMessage()); + } } - } - }); + }); + } catch (Exception e) { + LOGGER.warn(e.getMessage()); + } //TODO: Wait for a certain time, then clear all again } @@ -709,6 +655,7 @@ public class GameController implements Initializable { @Override public void initialize(URL location, ResourceBundle resources) { + noiseButton.toFront(); ChatApp.setGameController(this); } } diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java index a8e8c1d..702c0cd 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java @@ -49,7 +49,9 @@ public class LoungeSceneViewController implements Initializable { public static final BudaLogConfig l = new BudaLogConfig(LOGGER); @FXML - public AnchorPane buttonPane; + private AnchorPane buttonPane; + @FXML + private AnchorPane buttonLobbyPane; @FXML private AnchorPane backGroundAnimationPane; @@ -264,10 +266,9 @@ public class LoungeSceneViewController implements Initializable { @Override public void run() { try { - LOGGER.debug(" in addGameView()" + chatApp); - newGameButton.setVisible(false); - startGame.setVisible(false); - trainAnimationDayController.addGameView(chatApp); + LOGGER.debug(" in GameView()" + chatApp); + buttonLobbyPane.setVisible(false); + gameDisplayAnchorPane.getChildren().add(chatApp.game); } catch (Exception e) { LOGGER.debug("Not yet initialized"); } @@ -283,9 +284,8 @@ public class LoungeSceneViewController implements Initializable { @Override public void run() { try { - newGameButton.setVisible(true); - startGame.setVisible(true); - trainAnimationDayController.removeGameView(chatApp); + buttonLobbyPane.setVisible(true); + gameDisplayAnchorPane.getChildren().clear(); } catch (Exception e) { LOGGER.debug("Not yet initialized"); } @@ -316,7 +316,7 @@ public class LoungeSceneViewController implements Initializable { public void run() { try { LOGGER.debug("in addBackgroundDay() run()"); - gameDisplayAnchorPane.getChildren().add(chatApp.backgroundDay); + backGroundAnimationPane.getChildren().add(chatApp.backgroundDay); } catch (Exception e) { e.printStackTrace(); } @@ -402,7 +402,6 @@ public class LoungeSceneViewController implements Initializable { */ public void startGame() { client.getClient().sendMsgToServer(Protocol.startANewGame); - //addGameView(); } /** diff --git a/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationViewDay.fxml b/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationViewDay.fxml index d122ccf..761ee42 100644 --- a/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationViewDay.fxml +++ b/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/TrainAnimationViewDay.fxml @@ -26,6 +26,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameDayAll.fxml b/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameDayAll.fxml index 67cef01..af1e173 100644 --- a/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameDayAll.fxml +++ b/src/main/resources/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/game/GameDayAll.fxml @@ -11,32 +11,32 @@ - + - + - + - + - + - + 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 13af840..b30bdcd 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 @@ -10,37 +10,45 @@ + + + + +