X-Git-Url: https://deadsoftware.ru/gitweb?p=cavedroid.git;a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavecraft%2FGameScreen.java;h=2704dbc4e68277ffb5eb44db0cb57b01baa22786;hp=accd1e59cc6ffd25fac1a3f47ae4fd8170e74eca;hb=bea2a3c5b967bcd90ccd83e08e833d58449e963a;hpb=792296717939ac50df33865ae3acbb010e812ad1 diff --git a/core/src/ru/deadsoftware/cavecraft/GameScreen.java b/core/src/ru/deadsoftware/cavecraft/GameScreen.java index accd1e5..2704dbc 100644 --- a/core/src/ru/deadsoftware/cavecraft/GameScreen.java +++ b/core/src/ru/deadsoftware/cavecraft/GameScreen.java @@ -3,11 +3,15 @@ package ru.deadsoftware.cavecraft; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Screen; import ru.deadsoftware.cavecraft.game.GameProc; +import ru.deadsoftware.cavecraft.game.GameSaver; +import ru.deadsoftware.cavecraft.game.Items; import ru.deadsoftware.cavecraft.menu.MenuRenderer; +import ru.deadsoftware.cavecraft.misc.*; public class GameScreen implements Screen { public static int FPS; + public static boolean SHOW_DEBUG = false; private GameProc gameProc; private Renderer renderer; @@ -16,8 +20,7 @@ public class GameScreen implements Screen { public GameScreen() { Assets.load(); Items.load(); - gameProc = new GameProc(); - menuRenderer = new MenuRenderer(CaveGame.TOUCH?320:480); + menuRenderer = new MenuRenderer(CaveGame.TOUCH ? 320 : 480); renderer = menuRenderer; Gdx.input.setInputProcessor(new InputHandlerMenu(menuRenderer)); } @@ -39,14 +42,14 @@ public class GameScreen implements Screen { @Override public void show() { - } @Override public void render(float delta) { - FPS = (int)(1/delta); + FPS = (int) (1 / delta); switch (CaveGame.STATE) { - case GAME_PLAY: case GAME_CREATIVE_INV: + case GAME_PLAY: + case GAME_CREATIVE_INV: game(delta); break; @@ -54,17 +57,29 @@ public class GameScreen implements Screen { menu(); break; - case RESTART: + case NEW_GAME: gameProc = new GameProc(); renderer = gameProc.renderer; Gdx.input.setInputProcessor(new InputHandlerGame(gameProc)); - CaveGame.STATE = GameState.GAME_PLAY; + CaveGame.STATE = AppState.GAME_PLAY; + break; + + case LOAD_GAME: + gameProc = GameSaver.load(); + renderer = gameProc.renderer; + Gdx.input.setInputProcessor(new InputHandlerGame(gameProc)); + CaveGame.STATE = AppState.GAME_PLAY; + break; + + case SAVE_GAME: + GameSaver.save(gameProc); + CaveGame.STATE = AppState.MENU_MAIN; break; case GOTO_MENU: + menuRenderer = new MenuRenderer(CaveGame.TOUCH ? 320 : 480); renderer = menuRenderer; Gdx.input.setInputProcessor(new InputHandlerMenu(menuRenderer)); - CaveGame.STATE = GameState.MENU_MAIN; break; } renderer.render(); @@ -74,10 +89,11 @@ public class GameScreen implements Screen { public void resize(int width, int height) { switch (CaveGame.STATE) { case MENU_MAIN: - menuRenderer = new MenuRenderer(CaveGame.TOUCH?320:480); + menuRenderer = new MenuRenderer(CaveGame.TOUCH ? 320 : 480); renderer = menuRenderer; break; - case GAME_PLAY: case GAME_CREATIVE_INV: + case GAME_PLAY: + case GAME_CREATIVE_INV: gameProc.resetRenderer(); renderer = gameProc.renderer; break;