Merge branch 'master' into nightmode

main
Joseph Gardner 8 years ago
commit 851b8aa7a8

@ -67,8 +67,6 @@ public class HostGameController extends Controller {
sliderLength.setShowTickLabels(true); sliderLength.setShowTickLabels(true);
sliderLength.setMajorTickUnit(MAX_RACE_LENGTH-1); sliderLength.setMajorTickUnit(MAX_RACE_LENGTH-1);
sliderLength.setBlockIncrement(1); sliderLength.setBlockIncrement(1);
sliderLength.getStylesheets().add("/css/slider.css");
} }
@ -85,8 +83,8 @@ public class HostGameController extends Controller {
listOfMaps = new ArrayList(Arrays.asList(ac35Map, oMap, iMap, mMap)); listOfMaps = new ArrayList(Arrays.asList(ac35Map, oMap, iMap, mMap));
mapImage.setImage(listOfMaps.get(currentMapIndex)); mapImage.setImage(listOfMaps.get(currentMapIndex));
Platform.runLater(() -> { Platform.runLater(() -> {
mapImage.fitWidthProperty() mapImage.fitHeightProperty()
.bind(mapImage.getScene().getWindow().widthProperty().multiply(0.6)); .bind(mapImage.getScene().getWindow().heightProperty().multiply(0.6));
}); });
} }

@ -2,6 +2,7 @@ package visualiser.Controllers;
import com.interactivemesh.jfx.importer.stl.StlMeshImporter; import com.interactivemesh.jfx.importer.stl.StlMeshImporter;
import javafx.animation.AnimationTimer; import javafx.animation.AnimationTimer;
import javafx.application.Platform;
import javafx.collections.FXCollections; import javafx.collections.FXCollections;
import javafx.collections.ObservableList; import javafx.collections.ObservableList;
import javafx.fxml.FXML; import javafx.fxml.FXML;
@ -12,6 +13,7 @@ import javafx.scene.control.RadioButton;
import javafx.scene.control.ToggleGroup; import javafx.scene.control.ToggleGroup;
import javafx.scene.image.Image; import javafx.scene.image.Image;
import javafx.scene.image.ImageView; import javafx.scene.image.ImageView;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.GridPane; import javafx.scene.layout.GridPane;
import javafx.scene.layout.Pane; import javafx.scene.layout.Pane;
import javafx.scene.media.AudioClip; import javafx.scene.media.AudioClip;
@ -42,6 +44,7 @@ import java.util.logging.Logger;
* the game. * the game.
*/ */
public class TitleController extends Controller { public class TitleController extends Controller {
private @FXML AnchorPane titleWrapper;
private @FXML RadioButton dayModeRD; private @FXML RadioButton dayModeRD;
private @FXML RadioButton nightModeRD; private @FXML RadioButton nightModeRD;
private @FXML Button tutorialButton; private @FXML Button tutorialButton;
@ -106,6 +109,8 @@ public class TitleController extends Controller {
} }
}; };
loop.start(); loop.start();
titleWrapper.getStylesheets().add("/css/dayMode.css");
} }
/** /**

@ -81,9 +81,9 @@ public class View3D extends Pane {
/** /**
* Distance to stop zoom * Distance to stop zoom
*/ */
private final double ZOOM_IN_LIMIT = 3; private final double ZOOM_IN_LIMIT = 15;
private final double ZOOM_OUT_LIMIT = 700; private final double ZOOM_OUT_LIMIT = 700;
private final double MAX_ZOOM_LIMIT = 1500; private final double MAX_ZOOM_LIMIT = 1150;
private final double MAX_PITCH = 60; // birds eye view private final double MAX_PITCH = 60; // birds eye view
private final double MIN_PITCH = 5; // third person view private final double MIN_PITCH = 5; // third person view
private final double ZOOM_PER_KEYPRESS = 5; // distance changed per zoom private final double ZOOM_PER_KEYPRESS = 5; // distance changed per zoom
@ -188,7 +188,7 @@ public class View3D extends Pane {
* Configures camera to third person view * Configures camera to third person view
*/ */
public void setThirdPerson() { public void setThirdPerson() {
this.setDistance(ZOOM_IN_LIMIT * 2); this.setDistance(ZOOM_IN_LIMIT * 5);
adjustPitchForZoom(); adjustPitchForZoom();
adjustScaleForZoom(); adjustScaleForZoom();
} }

@ -605,7 +605,7 @@ public class ResizableRaceCanvas extends ResizableCanvas {
//Prepare to draw. //Prepare to draw.
gc.setLineWidth(1); gc.setLineWidth(1);
gc.setFill(Color.DEEPSKYBLUE); gc.setFill(Color.web("#f1f1d4"));
//Calculate the screen coordinates of the boundary. //Calculate the screen coordinates of the boundary.

@ -1,6 +1,6 @@
.root { .root {
-fx-base: rgb(215, 232, 218); -fx-base: rgb(215, 232, 218);
-fx-background: rgb(242, 242, 242); -fx-background: rgba(0, 255, 190, 0.11);
/* make controls (buttons, thumb, etc.) slightly lighter */ /* make controls (buttons, thumb, etc.) slightly lighter */
-fx-color: derive(-fx-base, 2.5%); -fx-color: derive(-fx-base, 2.5%);
@ -25,6 +25,121 @@
-fx-focus-color: rgb(128, 128, 128); -fx-focus-color: rgb(128, 128, 128);
} }
/* Titles */
#title {
-fx-font-size: 32px;
-fx-font-family: "Trebuchet MS";
-fx-text-fill: rgb(10, 123, 125);
}
/* Regular text */
#lblLength {
-fx-font-family: "Trebuchet MS";
}
/* Buttons */
#hostAGameBtn, #hostGameBtn, #btnJoin, #tutorialButton, #controlsBtn,
#mainMenuBtn, #addBtn, #refreshBtn, #joinGameBtn, #spectateButton,
#quitBtn, #startButton
{
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
-fx-text-fill: transparent;
/*-fx-border-color: rgb(10, 123, 125);*/
/*-fx-border-width: 2px;*/
}
/* Smaller buttons */
#mainMenuBtn, #addBtn, #refreshBtn, #joinGameBtn, #spectateButton, #quitBtn, #startButton{
-fx-background-size: 115px;
}
/* Images for buttons */
/* Title menu buttons */
#hostAGameBtn {
-fx-background-image: url("/visualiser/images/hostAGameBtn.png");
}
#hostAGameBtn:pressed {
-fx-background-image: url("/visualiser/images/hostAGameBtnPressed.png");
}
#btnJoin {
-fx-background-image: url("/visualiser/images/JoinAGameBtn.png");
}
#btnJoin:pressed {
-fx-background-image: url("/visualiser/images/JoinAGameBtnPressed.png");
}
#tutorialButton {
-fx-background-image: url("/visualiser/images/howToPlayBtn.png");
}
#tutorialButton:pressed {
-fx-background-image: url("/visualiser/images/howToPlayBtnPressed.png");
}
#controlsBtn {
-fx-background-image: url("/visualiser/images/controlsBtn.png");
}
#controlsBtn:pressed {
-fx-background-image: url("/visualiser/images/controlsBtnPressed.png");
}
/* host game lobby buttons */
#hostGameBtn {
-fx-background-image: url("/visualiser/images/startGameBtn.png");
}
#hostGameBtn:pressed {
-fx-background-image: url("/visualiser/images/startGameBtnPressed.png");
}
#mainMenuBtn {
-fx-background-image: url("/visualiser/images/mainMenuBtn.png");
/*-fx-background-size: 115px;*/
}
#mainMenuBtn:pressed {
-fx-background-image: url("/visualiser/images/mainMenuBtnPressed.png");
}
#startButton{
-fx-background-image: url("/visualiser/images/startBtn.png");
}
#startButton:pressed {
-fx-background-image: url("/visualiser/images/startBtnPressed.png");
}
/* match browsing lobby buttons */
#addBtn {
-fx-background-image: url("/visualiser/images/addBtn.png");
}
#addBtn:pressed {
-fx-background-image: url("/visualiser/images/addBtnPressed.png");
}
#refreshBtn {
-fx-background-image: url("/visualiser/images/refreshBtn.png");
}
#refreshBtn:pressed {
-fx-background-image: url("/visualiser/images/refreshBtnPressed.png");
}
#joinGameBtn {
-fx-background-image: url("/visualiser/images/participateBtn.png");
}
#joinGameBtn:pressed {
-fx-background-image: url("/visualiser/images/participateBtnPressed.png");
}
#spectateButton {
-fx-background-image: url("/visualiser/images/spectateBtn.png");
}
#spectateButton:pressed {
-fx-background-image: url("/visualiser/images/spectateBtnPressed.png");
}
/* in-game lobby buttons */
#quitBtn {
-fx-background-image: url("/visualiser/images/quitBtn.png");
}
#quitBtn:pressed {
-fx-background-image: url("/visualiser/images/quitBtnPressed.png");
}
/* Fix derived prompt color for text fields */ /* Fix derived prompt color for text fields */
.text-input { .text-input {
-fx-prompt-text-fill: derive(-fx-control-inner-background, +0%); -fx-prompt-text-fill: derive(-fx-control-inner-background, +0%);
@ -56,39 +171,45 @@
-fx-graphic: url("/visualiser/images/arrow.png"); -fx-graphic: url("/visualiser/images/arrow.png");
} }
#nextButton { /* Host Game / Map Selection */
-fx-background-image: url("/visualiser/images/ArrowRoundRight.png"); #nextButton, #previousButton {
-fx-background-size: 60px; -fx-background-image: url("/visualiser/images/ArrowClick.png");
-fx-background-repeat: no-repeat; -fx-background-size: 60px;
-fx-background-position: center center; -fx-background-repeat: no-repeat;
-fx-focus-color: transparent; -fx-background-position: center center;
-fx-background-color: transparent; -fx-focus-color: transparent;
} -fx-background-color: transparent;
#nextButton:pressed { -fx-border-color: transparent;
-fx-background-image: url("/visualiser/images/ArrowRoundRightClicked.png"); }
-fx-background-size: 60px;
-fx-background-repeat: no-repeat; #nextButton {
-fx-background-position: center center; -fx-rotate: 180;
-fx-focus-color: transparent; }
-fx-background-color: transparent;
} #nextButton:pressed {
-fx-background-image: url("/visualiser/images/ArrowSelect.png");
#previousButton { }
-fx-background-image: url("/visualiser/images/ArrowRoundLeft.png");
-fx-background-size: 60px; #previousButton:pressed {
-fx-background-repeat: no-repeat; -fx-background-image: url("/visualiser/images/ArrowSelect.png");
-fx-background-position: center center; }
-fx-focus-color: transparent;
-fx-background-color: transparent; .slider .thumb {
} -fx-background-image: url("/visualiser/images/sun.png");
#previousButton:pressed { -fx-background-size: 25px;
-fx-background-image: url("/visualiser/images/ArrowRoundLeftClicked.png"); -fx-pref-height: 25px;
-fx-background-size: 60px; -fx-pref-width: 25px;
-fx-background-repeat: no-repeat; -fx-background-position: top;
-fx-background-position: center center; -fx-background-repeat: no-repeat;
-fx-focus-color: transparent; -fx-focus-color: transparent;
-fx-background-color: transparent; -fx-background-color: transparent;
} }
.slider .track {
-fx-control-inner-background: #166df1;
-fx-border-color: #6a80ff;
-fx-border-radius: 0.25em, 0.25em, 0.166667em;
}
#lineChartWrapper{ #lineChartWrapper{
-fx-border-color: #02378c; -fx-border-color: #02378c;

@ -1,3 +1,7 @@
.label, .list-view {
-fx-text-fill: black;
}
.list-view .list-cell { .list-view .list-cell {
-fx-cell-size: 40; -fx-cell-size: 40;
-fx-font-family: "Tahoma"; -fx-font-family: "Tahoma";

@ -102,3 +102,236 @@
-fx-border-color: #012256; -fx-border-color: #012256;
-fx-border-width: 3; -fx-border-width: 3;
} }
/* Title menu buttons */
#hostAGameBtn {
-fx-background-image: url("/visualiser/images/hostAGameBtn.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#hostAGameBtn:pressed {
-fx-background-image: url("/visualiser/images/hostAGameBtnPressed.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#btnJoin {
-fx-background-image: url("/visualiser/images/JoinAGameBtn.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#btnJoin:pressed {
-fx-background-image: url("/visualiser/images/JoinAGameBtnPressed.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#tutorialButton {
-fx-background-image: url("/visualiser/images/howToPlayBtn.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#tutorialButton:pressed {
-fx-background-image: url("/visualiser/images/howToPlayBtnPressed.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#controlsBtn {
-fx-background-image: url("/visualiser/images/controlsBtn.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#controlsBtn:pressed {
-fx-background-image: url("/visualiser/images/controlsBtnPressed.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
/* host game lobby buttons */
#hostGameBtn {
-fx-background-image: url("/visualiser/images/startGameBtn.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#hostGameBtn:pressed {
-fx-background-image: url("/visualiser/images/startGameBtnPressed.png");
-fx-background-size: 150px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#mainMenuBtn {
-fx-background-image: url("/visualiser/images/mainMenuBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#mainMenuBtn:pressed {
-fx-background-image: url("/visualiser/images/mainMenuBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
/* match browsing lobby buttons */
#addBtn {
-fx-background-image: url("/visualiser/images/addBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#addBtn:pressed {
-fx-background-image: url("/visualiser/images/addBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#refreshBtn {
-fx-background-image: url("/visualiser/images/refreshBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#refreshBtn:pressed {
-fx-background-image: url("/visualiser/images/refreshBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#refreshBtn {
-fx-background-image: url("/visualiser/images/refreshBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#joinGameBtn {
-fx-background-image: url("/visualiser/images/participateBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#joinGameBtn:pressed {
-fx-background-image: url("/visualiser/images/participateBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#spectateButton {
-fx-background-image: url("/visualiser/images/spectateBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#spectateButton:pressed {
-fx-background-image: url("/visualiser/images/spectateBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
/* in-game lobby buttons */
#quitBtn {
-fx-background-image: url("/visualiser/images/quitBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#quitBtn:pressed {
-fx-background-image: url("/visualiser/images/quitBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#startButton {
-fx-background-image: url("/visualiser/images/startBtn.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
#startButton:pressed {
-fx-background-image: url("/visualiser/images/startBtnPressed.png");
-fx-background-size: 115px;
-fx-background-repeat: no-repeat;
-fx-background-position: center center;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}

@ -1,16 +0,0 @@
.slider .thumb {
-fx-background-image: url("/visualiser/images/sun.png");
-fx-background-size: 25px;
-fx-pref-height: 25px;
-fx-pref-width: 25px;
-fx-background-position: top;
-fx-background-repeat: no-repeat;
-fx-focus-color: transparent;
-fx-background-color: transparent;
}
.slider .track {
-fx-control-inner-background: dodgerblue;
-fx-border-color: rgba(30, 144, 255, 0.44);
-fx-border-radius: 0.25em, 0.25em, 0.166667em;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 MiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

@ -9,11 +9,11 @@
<?import javafx.scene.layout.RowConstraints?> <?import javafx.scene.layout.RowConstraints?>
<?import javafx.scene.text.Font?> <?import javafx.scene.text.Font?>
<AnchorPane fx:id="gameLobbyWrapper" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="780.0" style="-fx-background-color: rgba(100, 100, 100, 0.2);" xmlns="http://javafx.com/javafx/8.0.112" xmlns:fx="http://javafx.com/fxml/1" fx:controller="visualiser.Controllers.InGameLobbyController"> <AnchorPane fx:id="gameLobbyWrapper" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="780.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="visualiser.Controllers.InGameLobbyController">
<children> <children>
<GridPane style="-fx-background-color: rgba(0, 0, 0, 0.3);" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0"> <GridPane AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<children> <children>
<Button fx:id="quitButton" mnemonicParsing="false" onAction="#menuBtnPressed" text="Quit" GridPane.rowIndex="2"> <Button fx:id="quitBtn" maxHeight="50.0" maxWidth="125.0" mnemonicParsing="false" onAction="#menuBtnPressed" GridPane.rowIndex="2">
<GridPane.margin> <GridPane.margin>
<Insets left="20.0" /> <Insets left="20.0" />
</GridPane.margin> </GridPane.margin>
@ -66,7 +66,10 @@
<Font name="Cabin-Bold" size="17.0" /> <Font name="Cabin-Bold" size="17.0" />
</font> </font>
</Label> </Label>
<Button fx:id="startButton" disable="true" mnemonicParsing="false" onAction="#startBtnPressed" text="Start!" visible="false" GridPane.columnIndex="2" GridPane.rowIndex="2" /> <Button fx:id="startButton" disable="true" maxHeight="50.0" maxWidth="125.0" mnemonicParsing="false" onAction="#startBtnPressed" visible="false" GridPane.columnIndex="2" GridPane.halignment="RIGHT" GridPane.rowIndex="2">
<GridPane.margin>
<Insets right="20.0" />
</GridPane.margin></Button>
</children> </children>
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />

@ -20,13 +20,13 @@
<ColumnConstraints hgrow="NEVER" prefWidth="170.0" /> <ColumnConstraints hgrow="NEVER" prefWidth="170.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints prefHeight="50.0" vgrow="NEVER" /> <RowConstraints maxHeight="118.0" minHeight="56.5" prefHeight="76.0" vgrow="NEVER" />
<RowConstraints prefHeight="419.5" vgrow="NEVER" /> <RowConstraints maxHeight="413.5" minHeight="329.5" prefHeight="370.0" vgrow="NEVER" />
<RowConstraints prefHeight="50.0" vgrow="NEVER" /> <RowConstraints maxHeight="76.5" minHeight="0.0" prefHeight="54.0" vgrow="NEVER" />
<RowConstraints prefHeight="80.0" vgrow="NEVER" /> <RowConstraints maxHeight="130.0" minHeight="84.5" prefHeight="100.5" vgrow="NEVER" />
</rowConstraints> </rowConstraints>
<children> <children>
<Button fx:id="hostGameBtn" mnemonicParsing="false" onAction="#hostGamePressed" text="Start Game" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.rowIndex="3" GridPane.valignment="CENTER"> <Button fx:id="hostGameBtn" maxHeight="80.0" maxWidth="200.0" mnemonicParsing="false" onAction="#hostGamePressed" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.rowIndex="3" GridPane.valignment="CENTER">
<font> <font>
<Font size="20.0" /> <Font size="20.0" />
</font> </font>
@ -34,17 +34,21 @@
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" /> <Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
</GridPane.margin> </GridPane.margin>
</Button> </Button>
<Label text="Address: 127.0.0.1" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.valignment="TOP"> <Label fx:id="title" text="Map Selection"
<font> GridPane.columnIndex="1" GridPane.halignment="CENTER"
<Font size="17.0" /> GridPane.valignment="CENTER">
</font>
</Label>
<Label text="Port: 4942" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.valignment="BOTTOM">
<font>
<Font size="17.0" />
</font>
</Label> </Label>
<Button mnemonicParsing="false" onAction="#menuBtnPressed" text="Main Menu" GridPane.halignment="LEFT" GridPane.valignment="TOP"> <!--<Label text="Address: 127.0.0.1" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.valignment="TOP">-->
<!--<font>-->
<!--<Font size="17.0" />-->
<!--</font>-->
<!--</Label>-->
<!--<Label text="Port: 4942" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.valignment="BOTTOM">-->
<!--<font>-->
<!--<Font size="17.0" />-->
<!--</font>-->
<!--</Label>-->
<Button fx:id="mainMenuBtn" maxHeight="50.0" maxWidth="125.0" minHeight="50.0" minWidth="125.0" mnemonicParsing="false" onAction="#menuBtnPressed" prefHeight="50.0" prefWidth="125.0" scaleShape="false" GridPane.halignment="LEFT" GridPane.valignment="TOP">
<GridPane.margin> <GridPane.margin>
<Insets bottom="10.0" left="10.0" right="10.0" top="10.0" /> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" />
</GridPane.margin> </GridPane.margin>

@ -17,16 +17,16 @@
<children> <children>
<GridPane fx:id="connection" prefHeight="600.0" prefWidth="780.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0"> <GridPane fx:id="connection" prefHeight="600.0" prefWidth="780.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="600.0" minWidth="10.0" prefWidth="600.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="600.0" minWidth="10.0" prefWidth="303.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="600.0" minWidth="10.0" prefWidth="600.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="600.0" minWidth="10.0" prefWidth="477.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints maxHeight="182.0" minHeight="10.0" prefHeight="182.0" vgrow="SOMETIMES" /> <RowConstraints maxHeight="182.0" minHeight="10.0" prefHeight="116.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="434.0" minHeight="10.0" prefHeight="434.0" vgrow="SOMETIMES" /> <RowConstraints maxHeight="434.0" minHeight="10.0" prefHeight="348.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="174.0" minHeight="10.0" prefHeight="174.0" vgrow="SOMETIMES" /> <RowConstraints maxHeight="174.0" minHeight="10.0" prefHeight="157.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<TableView fx:id="lobbyTable" prefHeight="200.0" prefWidth="1080.0" GridPane.columnSpan="2" GridPane.rowIndex="1"> <TableView fx:id="lobbyTable" prefHeight="342.0" prefWidth="680.0" GridPane.columnSpan="2" GridPane.rowIndex="1">
<columns> <columns>
<TableColumn fx:id="gameNameColumn" prefWidth="223.0" text="Game Name" /> <TableColumn fx:id="gameNameColumn" prefWidth="223.0" text="Game Name" />
<TableColumn fx:id="hostNameColumn" prefWidth="280.0" text="Host Name" /> <TableColumn fx:id="hostNameColumn" prefWidth="280.0" text="Host Name" />
@ -36,7 +36,8 @@
<Insets left="50.0" right="50.0" /> <Insets left="50.0" right="50.0" />
</GridPane.margin> </GridPane.margin>
</TableView> </TableView>
<Label text="Available Games" GridPane.columnSpan="2" GridPane.halignment="CENTER"> <Label fx:id="title" text="Available Games"
GridPane.columnSpan="2" GridPane.halignment="CENTER">
<font> <font>
<Font size="36.0" /> <Font size="36.0" />
</font> </font>
@ -44,23 +45,22 @@
<GridPane fx:id="ipPortGridPane" GridPane.rowIndex="2"> <GridPane fx:id="ipPortGridPane" GridPane.rowIndex="2">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" /> <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" />
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<TextField fx:id="addressFld" promptText="Address"> <TextField fx:id="addressFld" promptText="Address" GridPane.valignment="TOP">
<GridPane.margin> <GridPane.margin>
<Insets left="50.0" right="20.0" /> <Insets left="50.0" right="20.0" top="20.0" />
</GridPane.margin> </GridPane.margin>
<opaqueInsets> <opaqueInsets>
<Insets /> <Insets />
</opaqueInsets> </opaqueInsets>
</TextField> </TextField>
<TextField fx:id="portFld" promptText="Port Number" GridPane.columnIndex="1"> <TextField fx:id="portFld" promptText="Port Number">
<GridPane.margin> <GridPane.margin>
<Insets left="20.0" right="20.0" /> <Insets left="50.0" right="20.0" />
</GridPane.margin> </GridPane.margin>
</TextField> </TextField>
</children> </children>
@ -70,31 +70,31 @@
</GridPane> </GridPane>
<GridPane fx:id="buttonsGridPane" GridPane.columnIndex="1" GridPane.rowIndex="2"> <GridPane fx:id="buttonsGridPane" GridPane.columnIndex="1" GridPane.rowIndex="2">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="145.0" minWidth="10.0" prefWidth="132.0" />
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="133.0" minWidth="10.0" prefWidth="125.0" />
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" /> <ColumnConstraints hgrow="SOMETIMES" maxWidth="181.0" minWidth="10.0" prefWidth="132.0" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<Button mnemonicParsing="false" onAction="#refreshBtnPressed" text="Refresh" GridPane.columnIndex="1"> <Button fx:id="refreshBtn" maxHeight="50.0" maxWidth="125.0" mnemonicParsing="false" onAction="#refreshBtnPressed" GridPane.columnIndex="1">
<GridPane.margin> <GridPane.margin>
<Insets left="10.0" right="10.0" /> <Insets />
</GridPane.margin></Button> </GridPane.margin></Button>
<Button mnemonicParsing="false" onAction="#addConnectionPressed" text="Add"> <Button fx:id="addBtn" maxHeight="50.0" maxWidth="125.0" mnemonicParsing="false" onAction="#addConnectionPressed">
<GridPane.margin> <GridPane.margin>
<Insets left="20.0" /> <Insets />
</GridPane.margin></Button> </GridPane.margin></Button>
<VBox alignment="CENTER" prefHeight="200.0" prefWidth="100.0" spacing="8.0" GridPane.columnIndex="2"> <VBox alignment="CENTER" prefHeight="200.0" prefWidth="100.0" spacing="8.0" GridPane.columnIndex="2">
<children> <children>
<Button fx:id="joinGameBtn" mnemonicParsing="false" onAction="#connectParticipate" text="Participate!" /> <Button fx:id="joinGameBtn" maxHeight="50.0" maxWidth="125.0" mnemonicParsing="false" onAction="#connectParticipate" prefHeight="50.0" prefWidth="125.0" />
<Button fx:id="spectateButton" mnemonicParsing="false" onAction="#connectSpectate" text="Spectate!" /> <Button fx:id="spectateButton" maxHeight="50.0" maxWidth="125.0" mnemonicParsing="false" onAction="#connectSpectate" prefHeight="50.0" prefWidth="125.0" />
</children> </children>
</VBox> </VBox>
</children> </children>
</GridPane> </GridPane>
<Button mnemonicParsing="false" onAction="#menuBtnPressed" text="Main Menu"> <Button fx:id="mainMenuBtn" maxHeight="50.0" maxWidth="125.0" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" onAction="#menuBtnPressed" prefHeight="50.0" prefWidth="125.0">
<GridPane.margin> <GridPane.margin>
<Insets left="50.0" /> <Insets left="50.0" />
</GridPane.margin> </GridPane.margin>

@ -5,6 +5,10 @@
<?import javafx.scene.image.*?> <?import javafx.scene.image.*?>
<?import javafx.scene.layout.*?> <?import javafx.scene.layout.*?>
<?import javafx.scene.text.*?> <?import javafx.scene.text.*?>
<?import java.lang.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.text.*?>
<?import javafx.scene.control.Button?> <?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?> <?import javafx.scene.control.Label?>
<?import javafx.scene.control.RadioButton?> <?import javafx.scene.control.RadioButton?>
@ -40,14 +44,14 @@
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints> </rowConstraints>
<children> <children>
<Button fx:id="btnJoin" mnemonicParsing="false" onAction="#joinAGame" prefHeight="31.0" prefWidth="130.0" text="Join a Game" GridPane.halignment="RIGHT" GridPane.rowIndex="2"> <Button fx:id="btnJoin" maxHeight="80.0" maxWidth="200.0" mnemonicParsing="false" onAction="#joinAGame" GridPane.halignment="RIGHT" GridPane.rowIndex="2">
<font> <font>
<Font name="System Font" size="13.0" /> <Font name="System Font" size="13.0" />
</font> </font>
</Button> </Button>
<Button mnemonicParsing="false" onAction="#showControls" text="Controls" GridPane.halignment="RIGHT" GridPane.rowIndex="4" /> <Button fx:id="controlsBtn" maxHeight="80.0" maxWidth="200.0" mnemonicParsing="false" onAction="#showControls" GridPane.halignment="RIGHT" GridPane.rowIndex="4" />
<Button fx:id="tutorialButton" mnemonicParsing="false" onAction="#tutorialStartPressed" text="How to Play" GridPane.halignment="RIGHT" GridPane.rowIndex="3" /> <Button fx:id="tutorialButton" maxHeight="80.0" maxWidth="200.0" mnemonicParsing="false" onAction="#tutorialStartPressed" GridPane.halignment="RIGHT" GridPane.rowIndex="3" />
<Button mnemonicParsing="false" onAction="#hostAGame" prefHeight="31.0" prefWidth="130.0" text="Host a Game" GridPane.halignment="RIGHT" GridPane.rowIndex="1" /> <Button fx:id="hostAGameBtn" maxHeight="80.0" maxWidth="200.0" mnemonicParsing="false" onAction="#hostAGame" GridPane.halignment="RIGHT" GridPane.rowIndex="1" />
<RadioButton fx:id="nightModeRD" mnemonicParsing="false" onAction="#setNightMode" text="Night Mode" textFill="WHITE" GridPane.columnIndex="3" GridPane.halignment="CENTER" GridPane.rowIndex="5" /> <RadioButton fx:id="nightModeRD" mnemonicParsing="false" onAction="#setNightMode" text="Night Mode" textFill="WHITE" GridPane.columnIndex="3" GridPane.halignment="CENTER" GridPane.rowIndex="5" />
<RadioButton fx:id="dayModeRD" mnemonicParsing="false" onAction="#setDayMode" selected="true" text="Day Mode" textFill="WHITE" GridPane.columnIndex="2" GridPane.halignment="CENTER" GridPane.rowIndex="5" /> <RadioButton fx:id="dayModeRD" mnemonicParsing="false" onAction="#setDayMode" selected="true" text="Day Mode" textFill="WHITE" GridPane.columnIndex="2" GridPane.halignment="CENTER" GridPane.rowIndex="5" />
<Label text="Smooth Sailing" textFill="WHITE" GridPane.columnSpan="2" GridPane.halignment="RIGHT"> <Label text="Smooth Sailing" textFill="WHITE" GridPane.columnSpan="2" GridPane.halignment="RIGHT">

Loading…
Cancel
Save