X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fmenu%2FMenuProc.java;h=8bc9dd6615f37fec87e79aa0acda38bdd4bb1ac4;hb=f4d52e3e4a3712050532786fca0aded5ff8b5a03;hp=0ab0bac0af1bfb6f7f778c3764816c026b9f1586;hpb=0ed259db50b9cab761cd5dca5cb229e69886854b;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/menu/MenuProc.java b/core/src/ru/deadsoftware/cavedroid/menu/MenuProc.java index 0ab0bac..8bc9dd6 100644 --- a/core/src/ru/deadsoftware/cavedroid/menu/MenuProc.java +++ b/core/src/ru/deadsoftware/cavedroid/menu/MenuProc.java @@ -1,8 +1,9 @@ package ru.deadsoftware.cavedroid.menu; +import com.badlogic.gdx.Gdx; import com.badlogic.gdx.utils.ObjectMap; import ru.deadsoftware.cavedroid.CaveGame; -import ru.deadsoftware.cavedroid.GameScreen; +import ru.deadsoftware.cavedroid.game.GameScreen; import ru.deadsoftware.cavedroid.menu.objects.Button; import ru.deadsoftware.cavedroid.menu.submenus.Menu; import ru.deadsoftware.cavedroid.menu.submenus.MenuMain; @@ -22,9 +23,9 @@ public class MenuProc extends Renderer { private Menu currentMenu; public MenuProc(int width) { - super(width, width * GameScreen.getHeight() / GameScreen.getWidth()); - mainMenu = new MenuMain(getWidth(), getHeight()); - newGameMenu = new MenuNewGame(getWidth(), getHeight()); + super(width, width * Gdx.graphics.getHeight() / Gdx.graphics.getWidth()); + mainMenu = new MenuMain(getWidth(), getHeight(), this::drawButton); + newGameMenu = new MenuNewGame(getWidth(), getHeight(), this::drawButton); currentMenu = mainMenu; } @@ -36,10 +37,31 @@ public class MenuProc extends Renderer { (button.getY() + button.getHeight() / 2) - (float) getStringHeight(button.getLabel()) / 2); } + private void update() { +// switch (CaveGame.MENU_STATE) { +// case MAIN: +// currentMenu = mainMenu; +// break; +// case NEW_GAME: +// currentMenu = newGameMenu; +// break; +// case LOADING: +// drawString("Generating World..."); +// CaveGame.APP_STATE = AppState.GAME; +// CaveGame.GAME_STATE = GameState.PLAY; +// break; +// case SAVING: +// drawString("Saving Game..."); +// CaveGame.APP_STATE = AppState.MENU; +// CaveGame.MENU_STATE = MenuState.MAIN; +// break; +// } + } + @Override public boolean touchUp(int screenX, int screenY, int pointer, int mb) { - screenX *= getWidth() / GameScreen.getWidth(); - screenY *= getHeight() / GameScreen.getHeight(); + screenX *= getWidth() / Gdx.graphics.getWidth(); + screenY *= getHeight() / Gdx.graphics.getHeight(); for (ObjectMap.Entry entry : currentMenu.getButtons()) { Button button = entry.value; if (button.getRect().contains(screenX, screenY)) { @@ -53,27 +75,10 @@ public class MenuProc extends Renderer { } @Override - public void render() { + public void render(float delta) { + update(); spriter.begin(); - switch (CaveGame.MENU_STATE) { - case MAIN: - currentMenu = mainMenu; - break; - case NEW_GAME: - currentMenu = newGameMenu; - break; - case LOADING: - drawString("Generating World..."); - CaveGame.APP_STATE = AppState.GAME; - CaveGame.GAME_STATE = GameState.PLAY; - break; - case SAVING: - drawString("Saving Game..."); - CaveGame.APP_STATE = AppState.MENU; - CaveGame.MENU_STATE = MenuState.MAIN; - break; - } - currentMenu.draw(spriter, this::drawButton, getWidth(), getHeight()); + currentMenu.draw(spriter); drawString("CaveDroid " + CaveGame.VERSION, 0, getHeight() - getStringHeight("CaveDroid " + CaveGame.VERSION) * 1.5f); spriter.end();