aboutsummaryrefslogtreecommitdiff
path: root/src/gui/LevelDetails.java
diff options
context:
space:
mode:
authorsowgro <tpoke.ferrari@gmail.com>2023-05-19 01:15:47 -0400
committersowgro <tpoke.ferrari@gmail.com>2023-05-19 01:15:47 -0400
commit7c106e7dda744e7d3782737262601de693db0dca (patch)
treefccec4b5825bb63e2d1195dce431f063ac87f5cb /src/gui/LevelDetails.java
parentfe9794bdc8270b43ed5ae847d65ea2a2eecd4a79 (diff)
downloadNPEhero-7c106e7dda744e7d3782737262601de693db0dca.tar.gz
NPEhero-7c106e7dda744e7d3782737262601de693db0dca.tar.bz2
NPEhero-7c106e7dda744e7d3782737262601de693db0dca.zip
- overhaul css (not done)
- rewrite driver - add difficulty buttons - remove placeholders (not done)
Diffstat (limited to 'src/gui/LevelDetails.java')
-rw-r--r--src/gui/LevelDetails.java37
1 files changed, 28 insertions, 9 deletions
diff --git a/src/gui/LevelDetails.java b/src/gui/LevelDetails.java
index 93a43cd..427ede0 100644
--- a/src/gui/LevelDetails.java
+++ b/src/gui/LevelDetails.java
@@ -4,18 +4,22 @@ import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
import javafx.scene.control.ListView;
+import javafx.scene.control.ToggleButton;
+import javafx.scene.control.ToggleGroup;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
+import javafx.scene.layout.HBox;
import javafx.scene.layout.Pane;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.Text;
import javafx.scene.text.TextAlignment;
+import main.Level;
public class LevelDetails extends VBox
{
- public LevelDetails(ListView<String> list)
+ public LevelDetails(Level level)
{
VBox details = new VBox();
details.prefWidthProperty().bind(super.prefWidthProperty());
@@ -26,9 +30,10 @@ public class LevelDetails extends VBox
details.setPadding(new Insets(10));
Button play = new Button();
+ play.setDisable(true);
play.setText("Play");
- if (list.getSelectionModel().getSelectedItem() == null)
+ if (level == null)
{
Text desc = new Text();
desc.setText("Select a level from the left pane");
@@ -37,30 +42,44 @@ public class LevelDetails extends VBox
desc.setTextAlignment(TextAlignment.CENTER);
details.setAlignment(Pos.CENTER);
details.getChildren().addAll(desc);
- play.setDisable(true);
}
else
{
Text title = new Text();
- title.setText("Test level 1");
+ title.setText(level.title);
title.setFill(Color.WHITE);
title.setFont(new Font(50));
title.wrappingWidthProperty().bind(super.prefWidthProperty().subtract(10));
Text desc = new Text();
- desc.setText("long description with lots of words. what we write does not actually need to be long i just wan t make sure it can word wrap");
+ desc.setText(level.desc);
desc.setFill(Color.WHITE);
desc.wrappingWidthProperty().bind(super.prefWidthProperty().subtract(10));
ImageView previewView = new ImageView();
- Image preview = new Image("assets/pico.png");
+ Image preview = level.preview;
previewView.setImage(preview);
- //previewView.setFitHeight(100);
previewView.fitWidthProperty().bind(super.prefWidthProperty().multiply(0.5));
previewView.setPreserveRatio(true);
- details.getChildren().addAll(title,desc,previewView);
- play.setOnAction(e -> Driver.setCustomMenu(new LevelSurround()));
+
+ HBox diffBox = new HBox();
+ diffBox.setPadding(new Insets(30,0,0,0));
+ HBox diffSelector = new HBox();
+ diffSelector.setAlignment(Pos.CENTER);
+ ToggleGroup diffToggleGroup = new ToggleGroup();
+ for (String diff : level.diffList)
+ {
+ ToggleButton temp = new ToggleButton();
+ temp.setText(diff);
+ diffToggleGroup.getToggles().add(temp);
+ diffSelector.getChildren().add(temp);
+ }
+ play.disableProperty().bind(diffToggleGroup.selectedToggleProperty().isNull());
+
+ diffBox.getChildren().add(diffSelector);
+ details.getChildren().addAll(title,desc,previewView, diffBox);
+ play.setOnAction(e -> Driver.setMenu(new LevelSurround(level, "easy", Driver.getMenu())));
}
VBox rightBox = new VBox();