diff --git a/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java b/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java index ab2a84b7..e935847f 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/InGameLobbyController.java @@ -252,7 +252,7 @@ public class InGameLobbyController extends Controller { visualiserRaceEvent.getVisualiserRaceState().getBoats().removeListener(lobbyUpdateListener); RaceViewController rvc = (RaceViewController) - loadScene("raceView.fxml"); + loadScene("newRaceView.fxml"); rvc.startRace(visualiserRaceEvent, controllerClient, isHost); } catch (IOException e) { diff --git a/racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java b/racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java index 6a92c75c..70d51acb 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java @@ -3,7 +3,6 @@ package visualiser.Controllers; import com.interactivemesh.jfx.importer.stl.StlMeshImporter; import javafx.animation.AnimationTimer; import javafx.application.Platform; -import javafx.beans.value.ChangeListener; import javafx.collections.FXCollections; import javafx.collections.ListChangeListener; import javafx.collections.ObservableList; @@ -13,15 +12,16 @@ import javafx.scene.AmbientLight; import javafx.scene.PointLight; import javafx.scene.chart.LineChart; import javafx.scene.control.*; -import javafx.scene.effect.Light; import javafx.scene.input.KeyCode; import javafx.scene.input.KeyEvent; +import javafx.scene.layout.AnchorPane; import javafx.scene.layout.GridPane; import javafx.scene.layout.StackPane; import javafx.scene.paint.Color; import javafx.scene.paint.Material; import javafx.scene.paint.PhongMaterial; -import javafx.scene.shape.*; +import javafx.scene.shape.MeshView; +import javafx.scene.shape.Shape3D; import javafx.scene.transform.Translate; import javafx.util.Callback; import network.Messages.Enums.RaceStatusEnum; @@ -32,11 +32,8 @@ import visualiser.app.App; import visualiser.enums.TutorialState; import visualiser.gameController.ControllerClient; import visualiser.gameController.Keys.ControlKey; -import visualiser.layout.*; -import visualiser.model.*; import visualiser.gameController.Keys.KeyFactory; -import visualiser.layout.Subject3D; -import visualiser.layout.View3D; +import visualiser.layout.*; import visualiser.model.Sparkline; import visualiser.model.VisualiserBoat; import visualiser.model.VisualiserRaceEvent; @@ -94,6 +91,8 @@ public class RaceViewController extends Controller { private @FXML TableColumn boatSpeedColumn; private @FXML LineChart sparklineChart; private @FXML Label tutorialText; + private @FXML AnchorPane infoWrapper; + private @FXML AnchorPane lineChartWrapper; /** * Displays a specified race. @@ -628,23 +627,7 @@ public class RaceViewController extends Controller { * toggles if the info table is shown */ private void toggleTable() { - double tablePercent = 1 - (boatPlacingColumn.getPrefWidth() + - boatTeamColumn.getPrefWidth() + boatMarkColumn.getPrefWidth() - + boatSpeedColumn.getPrefWidth())/racePane.getWidth(); - - if (infoTableShow) { - racePane.setDividerPositions(tablePercent); - arrowPane.setScaleX(0.5); - arrowPane.setScaleY(0.5); - arrowPane.setTranslateX(0 + (arrowPane.getScene().getWidth()/4)*tablePercent); - arrowPane.setTranslateY(0 - arrowPane.getScene().getHeight()/4); - } else { - racePane.setDividerPositions(1); - arrowPane.setScaleX(1); - arrowPane.setScaleY(1); - arrowPane.setTranslateX(0); - arrowPane.setTranslateY(0); - } + infoWrapper.setVisible(infoTableShow); boatInfoTable.refresh(); infoTableShow = !infoTableShow; } diff --git a/racevisionGame/src/main/resources/css/dayMode.css b/racevisionGame/src/main/resources/css/dayMode.css index b62f8391..39903bdb 100644 --- a/racevisionGame/src/main/resources/css/dayMode.css +++ b/racevisionGame/src/main/resources/css/dayMode.css @@ -89,3 +89,15 @@ -fx-focus-color: transparent; -fx-background-color: transparent; } + +#lineChartWrapper{ + -fx-border-color: #02378c; + -fx-background-color: #4783e0; + -fx-border-width: 3; +} + +#boatInfoTable{ + -fx-border-color: #012256; + -fx-border-width: 3; +} + diff --git a/racevisionGame/src/main/resources/css/nightMode.css b/racevisionGame/src/main/resources/css/nightMode.css index deefa51a..514893aa 100644 --- a/racevisionGame/src/main/resources/css/nightMode.css +++ b/racevisionGame/src/main/resources/css/nightMode.css @@ -91,3 +91,14 @@ -fx-focus-color: transparent; -fx-background-color: transparent; } + +#lineChartWrapper{ + -fx-border-color: #02378c; + -fx-background-color: #012256; + -fx-border-width: 3; +} + +#boatInfoTable{ + -fx-border-color: #012256; + -fx-border-width: 3; +} diff --git a/racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml b/racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml new file mode 100644 index 00000000..76195416 --- /dev/null +++ b/racevisionGame/src/main/resources/visualiser/scenes/newRaceView.fxml @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +