diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Buttons/MenuButtons/OptionButton.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Buttons/MenuButtons/OptionButton.java index 19e6e805f7cd224122fbff482d2f28842adde39a..f74c059226520101df17623c9f7cb777b4266b43 100644 --- a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Buttons/MenuButtons/OptionButton.java +++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Buttons/MenuButtons/OptionButton.java @@ -30,7 +30,7 @@ public class OptionButton extends ImButton{ * Constructor * */ - public OptionButton(float x, float y, float width, float height, PauseMenuUI ui) { + public OptionButton(float x, float y, float width, float height, PauseMenuUI ui, MainMenu mainMenu) { super(new Texture("options_select2.png"), x, y, width, height); this.addListener(new ClickListener() { public void clicked(InputEvent event, float x, float y) { @@ -38,6 +38,7 @@ public class OptionButton extends ImButton{ } }); this.pauseMenuUI = ui; + this.mainMenu = mainMenu; } /** @@ -46,7 +47,12 @@ public class OptionButton extends ImButton{ public void leftClick() { //ui.render(); - System.out.println("Dieser Button wurde gedrueckt, jedoch noch nicht implementiert."); + if(mainMenu != null){ + mainMenu.createOptions(); + } + else { + System.out.println("Fehler"); + } } } diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/GamePlay.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/GamePlay.java index c63cee1bc48a8d64bf0599d208df5d5eff4365dd..9136f768bdeaf29910851a73761d63c97b56a113 100644 --- a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/GamePlay.java +++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/GamePlay.java @@ -326,7 +326,7 @@ public class GamePlay implements Screen { * opens in game options */ public void createOptions() { - optionUI = new OptionUI(main, pauseStage, this); + optionUI = new OptionUI(main, pauseStage, this, null); } /** diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/MainMenu.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/MainMenu.java index 7f2c9c2351385d3de365a90ddddfa28ba2b4b9b4..8dbd2b59f05ecb955ea73dc45e4524f878942066 100644 --- a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/MainMenu.java +++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/Screen/MainMenu.java @@ -11,6 +11,7 @@ import com.galaxytrucker.galaxytruckerreloaded.Main; import com.galaxytrucker.galaxytruckerreloaded.View.Buttons.MenuButtons.NewGameButton; import com.galaxytrucker.galaxytruckerreloaded.View.Buttons.MenuButtons.OptionButton; import com.galaxytrucker.galaxytruckerreloaded.View.Buttons.MenuButtons.QuitButton; +import com.galaxytrucker.galaxytruckerreloaded.View.UI.Options.OptionUI; import com.galaxytrucker.galaxytruckerreloaded.View.UI.Options.PauseMenuUI; /** @@ -27,17 +28,19 @@ public class MainMenu implements Screen { private Viewport viewport; private PauseMenuUI ui; + private OptionUI optionUI; private NewGameButton newGame; private OptionButton optionButton; private QuitButton quit; + /** Constructor */ public MainMenu(Main main){ this.main = main; background = new Texture("1080p.png"); newGame = new NewGameButton(main.WIDTH/2 - 124, main.HEIGHT/2 - 25, 248, 50, this); - optionButton = new OptionButton(main.WIDTH/2 - 97, main.HEIGHT/2 -50 - 25, 194, 50, ui); + optionButton = new OptionButton(main.WIDTH/2 - 97, main.HEIGHT/2 -50 - 25, 194, 50, ui,this); quit = new QuitButton(main.WIDTH/2 - 124 , main.HEIGHT/2 - 100 - 25, 248, 50, this); viewport = new FitViewport(main.WIDTH, main.HEIGHT); @@ -123,6 +126,16 @@ public class MainMenu implements Screen { dispose(); } + public void createOptions(){ + optionUI = new OptionUI(main,stage,null, this); + + } + + public void deleteOptions(){ + optionUI = null; + } + + /** * resumes the existing game. * called by button diff --git a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/UI/Options/OptionUI.java b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/UI/Options/OptionUI.java index 44a6070959dabca867f71b10a9fb5127f776baf5..21d2c440f0a86da14c58d050edfa1b7b3efc9711 100644 --- a/core/src/com/galaxytrucker/galaxytruckerreloaded/View/UI/Options/OptionUI.java +++ b/core/src/com/galaxytrucker/galaxytruckerreloaded/View/UI/Options/OptionUI.java @@ -9,6 +9,7 @@ import com.galaxytrucker.galaxytruckerreloaded.View.Buttons.InGameButtons.Option import com.galaxytrucker.galaxytruckerreloaded.View.Buttons.InGameButtons.OptionButtons.OptionenBackButton; import com.galaxytrucker.galaxytruckerreloaded.View.Buttons.InGameButtons.OptionButtons.Video.VideoButton; import com.galaxytrucker.galaxytruckerreloaded.View.Screen.GamePlay; +import com.galaxytrucker.galaxytruckerreloaded.View.Screen.MainMenu; /** * Ingame Option screen @@ -36,16 +37,19 @@ public class OptionUI { private float x, y; + private MainMenu mainMenu; + /** * Constructor * * @param main - main class */ - public OptionUI(Main main, Stage stage, GamePlay game) { + public OptionUI(Main main, Stage stage, GamePlay game, MainMenu mainMenu) { this.main = main; this.game = game; this.stage = stage; - this.pauseMenuUI = game.getPauseMenuUI(); + this.mainMenu = mainMenu; + if(game != null){this.pauseMenuUI = game.getPauseMenuUI(); } optionsBackgroundTexture = new Texture("options/options.png"); x = main.WIDTH/2 - optionsBackgroundTexture.getWidth()/2; @@ -81,7 +85,12 @@ public class OptionUI { optionenBackButton.remove(); generalButton.remove(); videoButton.remove(); - game.deleteOptions(); + if(mainMenu ==null){ + game.deleteOptions(); + } + else{ + mainMenu.(); + } } /**