WIP: Base for Controller with switchable scene for everyone to work on it. #28
@ -4,25 +4,33 @@
 | 
				
			|||||||
package school_project;
 | 
					package school_project;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import javafx.application.Application;
 | 
					import javafx.application.Application;
 | 
				
			||||||
import javafx.scene.Group;
 | 
					import javafx.scene.Parent;
 | 
				
			||||||
import javafx.scene.Scene;
 | 
					import javafx.scene.Scene;
 | 
				
			||||||
import javafx.scene.control.Button;
 | 
					 | 
				
			||||||
import javafx.stage.Stage;
 | 
					import javafx.stage.Stage;
 | 
				
			||||||
 | 
					import school_project.States.GameMain;
 | 
				
			||||||
 | 
					import school_project.States.GameMenu;
 | 
				
			||||||
 | 
					import school_project.States.GameState;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class Controller extends Application {
 | 
					public class Controller extends Application {
 | 
				
			||||||
 | 
					    public final static String PROGRAM_NAME = "Road to Master";
 | 
				
			||||||
 | 
					    private Parent root;
 | 
				
			||||||
 | 
					    private GameState gameState = GameState.InMenu;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
    public void start(Stage primaryStage) throws Exception {
 | 
					    public void start(Stage primaryStage) throws Exception {
 | 
				
			||||||
        primaryStage.setTitle("test");
 | 
					        primaryStage.setTitle(PROGRAM_NAME);
 | 
				
			||||||
        Button btn = new Button("test");
 | 
					 | 
				
			||||||
        btn.setOnAction(event -> System.out.println("hey"));
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        Group root = new Group();
 | 
					        switch (gameState){
 | 
				
			||||||
        root.getChildren().add(btn);
 | 
					            case InMenu:
 | 
				
			||||||
 | 
					                root = new GameMenu();
 | 
				
			||||||
 | 
					                break;
 | 
				
			||||||
 | 
					            case InGame:
 | 
				
			||||||
 | 
					                root = new GameMain();
 | 
				
			||||||
 | 
					                break;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        Scene scene = new Scene(root, 300,300);
 | 
					        Scene scene = new Scene(root);
 | 
				
			||||||
        primaryStage.setScene(scene);
 | 
					        primaryStage.setScene(scene);
 | 
				
			||||||
 | 
					 | 
				
			||||||
        primaryStage.show();
 | 
					        primaryStage.show();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										8
									
								
								app/src/main/java/school_project/States/GameMain.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								app/src/main/java/school_project/States/GameMain.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,8 @@
 | 
				
			|||||||
 | 
					package school_project.States;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javafx.scene.layout.BorderPane;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class GameMain extends BorderPane {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										12
									
								
								app/src/main/java/school_project/States/GameMenu.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								app/src/main/java/school_project/States/GameMenu.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					package school_project.States;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import javafx.scene.layout.GridPane;
 | 
				
			||||||
 | 
					import javafx.scene.text.Text;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class GameMenu extends GridPane {
 | 
				
			||||||
 | 
					    Text txt = new Text("Here come the menu");
 | 
				
			||||||
 | 
					    public GameMenu() {
 | 
				
			||||||
 | 
					        super();
 | 
				
			||||||
 | 
					        add(txt, 0, 0);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										6
									
								
								app/src/main/java/school_project/States/GameState.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								app/src/main/java/school_project/States/GameState.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					package school_project.States;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public enum GameState {
 | 
				
			||||||
 | 
					    InMenu,
 | 
				
			||||||
 | 
					    InGame
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user