aboutsummaryrefslogtreecommitdiff
path: root/src/gui/GameOver.java
diff options
context:
space:
mode:
authorsowgro <tpoke.ferrari@gmail.com>2023-05-21 00:45:19 -0400
committersowgro <tpoke.ferrari@gmail.com>2023-05-21 00:45:19 -0400
commitf49a73c6af7445bb4ae92fcab87e13abba527048 (patch)
tree218b7b8c6d64ccd54015d3d47921cb04e11ef503 /src/gui/GameOver.java
parent7c106e7dda744e7d3782737262601de693db0dca (diff)
downloadNPEhero-f49a73c6af7445bb4ae92fcab87e13abba527048.tar.gz
NPEhero-f49a73c6af7445bb4ae92fcab87e13abba527048.tar.bz2
NPEhero-f49a73c6af7445bb4ae92fcab87e13abba527048.zip
add ui scrollbars, game over menu, new font
Diffstat (limited to 'src/gui/GameOver.java')
-rw-r--r--src/gui/GameOver.java113
1 files changed, 113 insertions, 0 deletions
diff --git a/src/gui/GameOver.java b/src/gui/GameOver.java
new file mode 100644
index 0000000..68b6759
--- /dev/null
+++ b/src/gui/GameOver.java
@@ -0,0 +1,113 @@
+package gui;
+
+import javafx.event.ActionEvent;
+import javafx.event.EventHandler;
+import javafx.geometry.Insets;
+import javafx.geometry.Pos;
+import javafx.scene.control.Button;
+import javafx.scene.control.TextField;
+import javafx.scene.layout.BorderPane;
+import javafx.scene.layout.HBox;
+import javafx.scene.layout.Pane;
+import javafx.scene.layout.VBox;
+import javafx.scene.paint.Color;
+import javafx.scene.text.Text;
+import main.Level;
+
+public class GameOver extends Pane
+{
+ public GameOver(int score2, Pane lastMenu, Level level, String diff)
+ {
+ Text topText = new Text();
+ topText.setText("Level Complete");
+ topText.setFill(Color.WHITE);
+ topText.setStyle("-fx-font-size: 50;");
+
+
+ Text levelName = new Text();
+ levelName.setText(level.title);
+ levelName.setFill(Color.WHITE);
+ levelName.setStyle("-fx-font-size: 30;");
+
+ Text levelArtist = new Text();
+ levelArtist.setText(level.aritst+" - "+diff);
+ levelArtist.setFill(Color.WHITE);
+
+ VBox levelDetailsBox = new VBox();
+ levelDetailsBox.getChildren().addAll(levelName,levelArtist);
+ levelDetailsBox.getStyleClass().add("textBox");
+ levelDetailsBox.setPadding(new Insets(5));
+
+
+ Text scoreLabel = new Text();
+ scoreLabel.setText("Final score");
+ scoreLabel.setFill(Color.WHITE);
+
+ Text score = new Text();
+ score.setText(score2+"");
+ score.setFill(Color.WHITE);
+ score.setStyle("-fx-font-size: 30;");
+
+ VBox scoreBox = new VBox();
+ scoreBox.getStyleClass().add("textBox");
+ scoreBox.getChildren().addAll(scoreLabel,score);
+ scoreBox.setPadding(new Insets(5));
+
+
+ Text nameLabel = new Text();
+ nameLabel.setText("Leaderboard entry");
+ nameLabel.setFill(Color.WHITE);
+
+ TextField name = new TextField();
+ name.getStyleClass().remove("text-feild");
+ name.getStyleClass().add("custom-radio-button");
+ name.setText("name");
+
+ Button save = new Button();
+ save.setText("Add");
+ save.setOnAction(new EventHandler<ActionEvent>() {
+ @Override
+ public void handle(ActionEvent event) {
+ save.setDisable(true);
+ name.setDisable(true);
+ }
+ });
+
+ BorderPane b = new BorderPane();
+ b.setRight(save);
+ b.setCenter(name);
+
+ VBox nameBox = new VBox();
+ nameBox.getChildren().addAll(nameLabel,b);
+ nameBox.getStyleClass().add("textBox");
+ nameBox.setSpacing(5);
+ nameBox.setPadding(new Insets(5));
+
+
+ Button exit = new Button();
+ exit.setText("Exit");
+ exit.setOnAction(e -> Driver.setMenu(lastMenu));
+
+ Button replay = new Button();
+ replay.setText("Replay");
+ replay.setOnAction(e -> Driver.setMenu(new LevelSurround(level, diff, lastMenu)));
+
+ BorderPane buttonBox = new BorderPane();
+ buttonBox.setLeft(exit);
+ buttonBox.setRight(replay);
+
+
+ VBox centerBox = new VBox();
+ centerBox.getChildren().addAll(topText,levelDetailsBox,scoreBox,nameBox,buttonBox);
+ centerBox.setSpacing(10);
+ centerBox.setAlignment(Pos.CENTER);
+
+ HBox rootBox = new HBox();
+ rootBox.getChildren().add(centerBox);
+ rootBox.setAlignment(Pos.CENTER);
+ rootBox.prefWidthProperty().bind(super.prefWidthProperty());
+ rootBox.prefHeightProperty().bind(super.prefHeightProperty());
+
+ super.getChildren().add(rootBox);
+ }
+}