Add a Load Level Button
This commit is contained in:
parent
ac6c8611e7
commit
9a244dccc4
@ -9,6 +9,7 @@ import javafx.stage.Screen;
|
||||
import javafx.stage.Stage;
|
||||
import school_project.Menu.MenuAccueil;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
|
||||
|
||||
@ -19,6 +20,7 @@ public class Controller extends Application {
|
||||
|
||||
@Override
|
||||
public void start(Stage primaryStage) throws IOException {
|
||||
new File("save.slevel");
|
||||
stage = primaryStage;
|
||||
screen_size = new Vec2(
|
||||
(int) Screen.getPrimary().getBounds().getWidth(),
|
||||
|
@ -7,29 +7,83 @@ import javafx.scene.layout.BorderPane;
|
||||
import javafx.scene.paint.Color;
|
||||
import javafx.scene.text.Font;
|
||||
import school_project.Controller;
|
||||
public class MenuAccueil extends BorderPane {
|
||||
import school_project.GameUI;
|
||||
import school_project.MapGenerator;
|
||||
import school_project.Parsers.FileParser;
|
||||
import school_project.Parsers.FileParserFactory;
|
||||
import school_project.Parsers.SerializeParser.*;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
|
||||
|
||||
public MenuAccueil(){
|
||||
super();
|
||||
//create all the objet that i need
|
||||
Button Play = new Button("Play");
|
||||
//create all the objet that I need
|
||||
ChoiceBox<String> SlctDifficulty = new ChoiceBox<>();
|
||||
SlctDifficulty.getItems().addAll("Easy", "Medium", "Difficult");
|
||||
|
||||
Label RdmLvl = new Label("Random Level : ");
|
||||
Button LoadLvl = new Button("Load game");
|
||||
Button SelectLevel= new Button("Select Level");
|
||||
Button Trophy = new Button("Trophy");
|
||||
Label Title = new Label("Welcome to Road to Master");
|
||||
//set up all the Button where i need
|
||||
setTop(Title);
|
||||
setLeft(Play);
|
||||
setRight(SelectLevel);
|
||||
setBottom(Trophy);
|
||||
Title.setFont(Font.font(20));
|
||||
Title.setTextFill(Color.GOLD);
|
||||
setAlignment(Title, Pos.CENTER);
|
||||
setAlignment(Play,Pos.CENTER);
|
||||
setAlignment(SelectLevel,Pos.CENTER);
|
||||
setAlignment(Trophy,Pos.CENTER);
|
||||
setPadding(new Insets(20,60,20,60));
|
||||
SlctDifficulty.setOnAction(event -> {
|
||||
String choosediff = SlctDifficulty.getSelectionModel().getSelectedItem();
|
||||
System.out.println(choosediff);
|
||||
switch (choosediff) {
|
||||
case "Easy":
|
||||
try {
|
||||
Controller.switchRoot(new GameUI(MapGenerator.generate(MapGenerator.Difficulty.Easy)));
|
||||
} catch (FileNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
break;
|
||||
case "Medium":
|
||||
try {
|
||||
Controller.switchRoot(new GameUI(MapGenerator.generate(MapGenerator.Difficulty.Medium)));
|
||||
} catch (FileNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
break;
|
||||
case "Difficult":
|
||||
try {
|
||||
Controller.switchRoot(new GameUI(MapGenerator.generate(MapGenerator.Difficulty.Difficult)));
|
||||
} catch (FileNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
//set up all the Button where I need
|
||||
getChildren().addAll(Title,SlctDifficulty,SelectLevel,RdmLvl,LoadLvl);
|
||||
RdmLvl.setFont(Font.font(25));
|
||||
RdmLvl.setTextFill(Color.GOLD);
|
||||
Title.setFont(Font.font(40));
|
||||
Title.setTextFill(Color.RED);
|
||||
setAlignment(Title, Pos.TOP_CENTER);
|
||||
setAlignment(LoadLvl,Pos.BOTTOM_CENTER);
|
||||
setAlignment(SlctDifficulty,Pos.CENTER_LEFT);
|
||||
setAlignment(SelectLevel,Pos.CENTER_RIGHT);
|
||||
setAlignment(RdmLvl, Pos.CENTER_LEFT);
|
||||
|
||||
setMargin(RdmLvl,new Insets(0,0,0,100));
|
||||
setMargin(SlctDifficulty,new Insets(0,0,0,300));
|
||||
setMargin(SelectLevel,new Insets(0,300,0,0));
|
||||
setMargin(Title,new Insets(200,0,0,0));
|
||||
setMargin(LoadLvl,new Insets(0,0,200,0));
|
||||
|
||||
SelectLevel.setOnAction(event -> Controller.switchRoot(new MenuLevel(1)));
|
||||
LoadLvl.setOnAction(event -> {
|
||||
try {
|
||||
FileParserFactory.loadMapFromFile(new File("save.slevel"));
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
});
|
||||
|
||||
getStyleClass().add("BorderPane");
|
||||
getStylesheets().add(String.valueOf(getClass().getResource("StyleMenuAcceuil.css")));
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user