diff --git a/core/src/ru/deadsoftware/cavedroid/menu/MenuRenderer.java b/core/src/ru/deadsoftware/cavedroid/menu/MenuRenderer.java
index 28da58e783551f08a5f9d00461685252b01a4fa2..ee626202a851f48839c3e7250883a9b1e17f9716 100644 (file)
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.utils.Array;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.utils.Array;
+import org.jetbrains.annotations.NotNull;
import ru.deadsoftware.cavedroid.CaveGame;
import ru.deadsoftware.cavedroid.GameScreen;
import ru.deadsoftware.cavedroid.game.GameItems;
import ru.deadsoftware.cavedroid.CaveGame;
import ru.deadsoftware.cavedroid.GameScreen;
import ru.deadsoftware.cavedroid.game.GameItems;
+import ru.deadsoftware.cavedroid.game.GameProc;
import ru.deadsoftware.cavedroid.game.GameSaver;
import ru.deadsoftware.cavedroid.menu.objects.Button;
import ru.deadsoftware.cavedroid.game.GameSaver;
import ru.deadsoftware.cavedroid.menu.objects.Button;
-import ru.deadsoftware.cavedroid.misc.AppState;
+import ru.deadsoftware.cavedroid.misc.InputHandlerGame;
+import ru.deadsoftware.cavedroid.misc.states.AppState;
import ru.deadsoftware.cavedroid.misc.Assets;
import ru.deadsoftware.cavedroid.misc.Renderer;
import ru.deadsoftware.cavedroid.misc.Assets;
import ru.deadsoftware.cavedroid.misc.Renderer;
+import ru.deadsoftware.cavedroid.misc.states.GameState;
+import ru.deadsoftware.cavedroid.misc.states.MenuState;
+
+import static ru.deadsoftware.cavedroid.GameScreen.GP;
+import static ru.deadsoftware.cavedroid.GameScreen.RENDERER;
public class MenuRenderer extends Renderer {
public class MenuRenderer extends Renderer {
}
}
- public void buttonClicked(Button button) {
- if (button.getLabel().toLowerCase().equals("new game")) {
- CaveGame.STATE = AppState.MENU_NEW_GAME;
- } else if (button.getLabel().toLowerCase().equals("load game")) {
- CaveGame.STATE = AppState.GOTO_LOAD_GAME;
- } else if (button.getLabel().toLowerCase().equals("quit")) {
- Gdx.app.exit();
- } else if (button.getLabel().toLowerCase().equals("survival")) {
- GameScreen.NEW_GAME_MODE = 0;
- CaveGame.STATE = AppState.GOTO_NEW_GAME;
- } else if (button.getLabel().toLowerCase().equals("creative")) {
- GameScreen.NEW_GAME_MODE = 1;
- CaveGame.STATE = AppState.GOTO_NEW_GAME;
- } else if (button.getLabel().toLowerCase().equals("back")) {
- CaveGame.STATE = AppState.MENU_MAIN;
+ private void newGame(int gameMode) {
+ GP = new GameProc(gameMode);
+ GP.player.respawn();
+ GameSaver.save(GP);
+ RENDERER = GP.renderer;
+ Gdx.input.setInputProcessor(new InputHandlerGame());
+ CaveGame.APP_STATE = AppState.GAME;
+ CaveGame.GAME_STATE = GameState.PLAY;
+ }
+
+ public void buttonClicked(@NotNull Button button) {
+ switch (button.getLabel().toLowerCase()) {
+ case "new game":
+ CaveGame.MENU_STATE = MenuState.NEW_GAME;
+ break;
+ case "load game":
+ CaveGame.APP_STATE = AppState.LOAD;
+ break;
+ case "quit":
+ Gdx.app.exit();
+ break;
+ case "survival":
+ newGame(0);
+ break;
+ case "creative":
+ newGame(1);
+ break;
+ case "back":
+ CaveGame.MENU_STATE = MenuState.MAIN;
+ break;
}
}
}
}
}
spriter.draw(Assets.gameLogo, getWidth() / 2 - (float) Assets.gameLogo.getWidth() / 2, 8);
}
spriter.draw(Assets.gameLogo, getWidth() / 2 - (float) Assets.gameLogo.getWidth() / 2, 8);
- switch (CaveGame.STATE) {
- case MENU_MAIN:
+ switch (CaveGame.MENU_STATE) {
+ case MAIN:
drawButtons(menuMainBtns);
break;
drawButtons(menuMainBtns);
break;
- case MENU_NEW_GAME:
+ case NEW_GAME:
drawButtons(menuNGBtns);
break;
drawButtons(menuNGBtns);
break;
- case GOTO_NEW_GAME:
- case GOTO_LOAD_GAME:
+ case LOADING:
drawLabel("Generating World...");
drawLabel("Generating World...");
+ CaveGame.APP_STATE = AppState.GAME;
+ CaveGame.GAME_STATE = GameState.PLAY;
break;
break;
- case GOTO_MENU:
+ case SAVING:
drawLabel("Saving Game...");
drawLabel("Saving Game...");
+ CaveGame.APP_STATE = AppState.MENU;
+ CaveGame.MENU_STATE = MenuState.MAIN;
break;
}
drawString("CaveDroid " + CaveGame.VERSION, 0,
getHeight() - Assets.getStringHeight("CaveDroid " + CaveGame.VERSION) * 1.5f);
spriter.end();
break;
}
drawString("CaveDroid " + CaveGame.VERSION, 0,
getHeight() - Assets.getStringHeight("CaveDroid " + CaveGame.VERSION) * 1.5f);
spriter.end();
-
- switch (CaveGame.STATE) {
- case GOTO_NEW_GAME:
- CaveGame.STATE = AppState.NEW_GAME;
- break;
- case GOTO_LOAD_GAME:
- CaveGame.STATE = AppState.LOAD_GAME;
- break;
- case GOTO_MENU:
- CaveGame.STATE = AppState.SAVE_GAME;
- break;
- }
-
}
}
}
}