DEADSOFTWARE

Add option for dynamic camera
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / MainConfig.java
index b48b78df896ebe46b878bc1675dcc44007fdafdc..64950f2d43e17325d3afd348d073c066ae989088 100644 (file)
@@ -1,15 +1,24 @@
 package ru.deadsoftware.cavedroid;
 
 import ru.deadsoftware.cavedroid.game.GameUiWindow;
+import ru.deadsoftware.cavedroid.game.input.Joystick;
 
+import javax.annotation.CheckForNull;
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 import javax.inject.Singleton;
 
 @Singleton
 public class MainConfig {
 
+    private final CaveGame mCaveGame;
+
+    @CheckForNull
     private MainComponent mMainComponent;
 
+    @CheckForNull
+    private Joystick mJoystick;
+
     private GameUiWindow mGameUiWindow;
     private String mGameFolder;
 
@@ -20,13 +29,25 @@ public class MainConfig {
     private float mWidth;
     private float mHeight;
 
+    private boolean mUseDynamicCamera = true;
+
+    @Nullable
+    private String mAssetsPackPath = null;
+
     @Inject
-    public MainConfig() {
+    public MainConfig(CaveGame caveGame) {
+        mCaveGame = caveGame;
+
         mGameUiWindow = GameUiWindow.NONE;
         mGameFolder = "";
     }
 
+    public CaveGame getCaveGame() {
+        return mCaveGame;
+    }
+
     public MainComponent getMainComponent() {
+        assert mMainComponent != null;
         return mMainComponent;
     }
 
@@ -38,10 +59,6 @@ public class MainConfig {
         return mGameUiWindow == gameUiWindow;
     }
 
-    public GameUiWindow getGameUiWindow() {
-        return mGameUiWindow;
-    }
-
     public void setGameUiWindow(GameUiWindow gameUiWindow) {
         mGameUiWindow = gameUiWindow;
     }
@@ -93,4 +110,30 @@ public class MainConfig {
     public void setShowMap(boolean showMap) {
         mShowMap = showMap;
     }
+
+    @Nullable
+    public String getAssetsPackPath() {
+        return mAssetsPackPath;
+    }
+
+    public void setAssetsPackPath(@Nullable String assetsPackPath) {
+        mAssetsPackPath = assetsPackPath;
+    }
+
+    @CheckForNull
+    public Joystick getJoystick() {
+        return mJoystick;
+    }
+
+    public void setJoystick(@CheckForNull Joystick joystick) {
+        mJoystick = joystick;
+    }
+
+    public boolean isUseDynamicCamera() {
+        return mUseDynamicCamera;
+    }
+
+    public void setUseDynamicCamera(boolean useDynamicCamera) {
+        mUseDynamicCamera = useDynamicCamera;
+    }
 }