DEADSOFTWARE

Fix saves
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / GameScreen.java
index 370d8bd79066baf1db5c385f4d89556b53c6f740..1d47b9074cb9f65144944486e024ad7462a579cd 100644 (file)
@@ -17,23 +17,29 @@ public class GameScreen implements Screen {
     private GameProc mGameProc;
     @CheckForNull
     private GameInputProcessor mGameInputProcessor;
+    @CheckForNull
+    private GameItemsHolder mGameItemsHolder;
 
     @Inject
     public GameScreen(MainConfig mainConfig) {
         mMainConfig = mainConfig;
     }
 
-    public void newGame() {
+    public void newGame(int gameMode) {
         if (mGameProc != null) {
             mGameProc.dispose();
         }
 
+        GameModule.loaded = true;
+
         GameComponent gameComponent = DaggerGameComponent.builder()
                 .mainComponent(mMainConfig.getMainComponent()).build();
 
         mGameProc = gameComponent.getGameProc();
         mGameInputProcessor = gameComponent.getGameInputProcessor();
 
+        mGameProc.setPlayerGameMode(gameMode);
+
         Gdx.input.setInputProcessor(gameComponent.getGameInputProcessor());
     }
 
@@ -42,7 +48,7 @@ public class GameScreen implements Screen {
             mGameProc.dispose();
         }
 
-        GameModule.load(mMainConfig);
+        GameModule.loaded = false;
 
         GameComponent gameComponent = DaggerGameComponent.builder()
                 .mainComponent(mMainConfig.getMainComponent()).build();
@@ -85,6 +91,9 @@ public class GameScreen implements Screen {
 
     @Override
     public void dispose() {
+        if (mGameProc != null) {
+            mGameProc.dispose();
+        }
     }
 
 }