diff --git a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java index 1609e700..22c76426 100644 --- a/racevisionGame/src/main/java/visualiser/Controllers/HostController.java +++ b/racevisionGame/src/main/java/visualiser/Controllers/HostController.java @@ -1,21 +1,18 @@ package visualiser.Controllers; import javafx.fxml.FXML; -import javafx.scene.control.TextField; +import javafx.scene.control.Alert; +import javafx.scene.control.ButtonType; +import javafx.scene.control.SplitPane; +import javafx.scene.image.ImageView; import javafx.scene.layout.AnchorPane; import mock.app.Event; -import org.xml.sax.SAXException; import mock.exceptions.EventConstructionException; -import shared.exceptions.InvalidBoatDataException; -import shared.exceptions.InvalidRaceDataException; -import shared.exceptions.InvalidRegattaDataException; -import shared.exceptions.XMLReaderException; -import javax.xml.bind.JAXBException; -import javax.xml.parsers.ParserConfigurationException; import java.io.IOException; import java.net.Socket; import java.net.URL; +import java.util.Optional; import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; @@ -26,15 +23,27 @@ import java.util.logging.Logger; public class HostController extends Controller { - @FXML - TextField gameNameField; +// @FXML +// TextField gameNameField; +// +// @FXML +// TextField hostNameField; @FXML - TextField hostNameField; + private ImageView imageView; @FXML AnchorPane hostWrapper; + @FXML + AnchorPane imagePane; + + @FXML + SplitPane splitPane; + + @FXML + AnchorPane specPane; + private Event game; @@ -81,12 +90,33 @@ public class HostController extends Controller { * Hosts a game. */ public void hostGame(){ + splitPane.setResizableWithParent(specPane, false); + splitPane.lookupAll(".split-pane-divider").stream().forEach(div -> div.setMouseTransparent(true)); + imageView.fitWidthProperty().bind(imagePane.widthProperty()); + imageView.fitHeightProperty().bind(imagePane.heightProperty()); hostWrapper.setVisible(true); } + /** + * Menu button pressed. Prompt alert then return to menu + */ public void menuBtnPressed(){ - hostWrapper.setVisible(false); - parent.enterTitle(); + Alert alert = new Alert(Alert.AlertType.CONFIRMATION); + alert.setTitle("Quitting race"); + alert.setContentText("Do you wish to quit the race?"); + alert.setHeaderText("You are about to quit the race"); + Optional result = alert.showAndWait(); + if(result.get() == ButtonType.OK){ + hostWrapper.setVisible(false); + parent.enterTitle(); + } + } + + /** + * Start button pressed. Currently only prints out start + */ + public void startBtnPressed(){ + System.out.println("Should start the race. This button is only visible for the host"); } } diff --git a/racevisionGame/src/main/java/visualiser/app/App.java b/racevisionGame/src/main/java/visualiser/app/App.java index eeae5a5d..31dcae24 100644 --- a/racevisionGame/src/main/java/visualiser/app/App.java +++ b/racevisionGame/src/main/java/visualiser/app/App.java @@ -96,15 +96,15 @@ public class App extends Application { ); updateMessage("Preparing ingredients . . ."); - Thread.sleep(1000); + Thread.sleep(200); for (int i = 0; i < burgerFilling.size(); i++) { - Thread.sleep(800); + Thread.sleep(100); updateProgress(i + 1, burgerFilling.size()); String nextFilling = burgerFilling.get(i); addedFilling.add(nextFilling); updateMessage("Adding the " + nextFilling + " . . ."); } - Thread.sleep(400); + Thread.sleep(100); updateMessage("Burger's done!"); return addedFilling; diff --git a/racevisionGame/src/main/resources/visualiser/images/lobby.gif b/racevisionGame/src/main/resources/visualiser/images/lobby.gif new file mode 100644 index 00000000..c70d8df6 Binary files /dev/null and b/racevisionGame/src/main/resources/visualiser/images/lobby.gif differ diff --git a/racevisionGame/src/main/resources/visualiser/scenes/hostgame.fxml b/racevisionGame/src/main/resources/visualiser/scenes/hostgame.fxml index ced36627..ab14abaf 100644 --- a/racevisionGame/src/main/resources/visualiser/scenes/hostgame.fxml +++ b/racevisionGame/src/main/resources/visualiser/scenes/hostgame.fxml @@ -1,40 +1,44 @@ - + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + diff --git a/racevisionGame/src/main/resources/visualiser/scenes/main.fxml b/racevisionGame/src/main/resources/visualiser/scenes/main.fxml index 074a9b31..7aff44c0 100644 --- a/racevisionGame/src/main/resources/visualiser/scenes/main.fxml +++ b/racevisionGame/src/main/resources/visualiser/scenes/main.fxml @@ -7,7 +7,7 @@ - + diff --git a/racevisionGame/src/main/resources/visualiser/scenes/title.fxml b/racevisionGame/src/main/resources/visualiser/scenes/title.fxml index f448a226..255381af 100644 --- a/racevisionGame/src/main/resources/visualiser/scenes/title.fxml +++ b/racevisionGame/src/main/resources/visualiser/scenes/title.fxml @@ -1,61 +1,61 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +