DEADSOFTWARE

Refactor input handrling
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / render / TouchControlsRenderer.kt
index e8b19d013f0d5a1431f27582f0d39b59c4b137b2..d9dc5c48ab9b01818874852802643cc256aafe2f 100644 (file)
@@ -3,17 +3,19 @@ package ru.deadsoftware.cavedroid.game.render
 import com.badlogic.gdx.graphics.g2d.SpriteBatch
 import com.badlogic.gdx.graphics.glutils.ShapeRenderer
 import com.badlogic.gdx.math.Rectangle
-import ru.deadsoftware.cavedroid.game.GameInput
+import ru.deadsoftware.cavedroid.MainConfig
 import ru.deadsoftware.cavedroid.game.GameScope
+import ru.deadsoftware.cavedroid.game.mobs.MobsController
+import ru.deadsoftware.cavedroid.game.mobs.Player.ControlMode
 import ru.deadsoftware.cavedroid.misc.Assets
-import ru.deadsoftware.cavedroid.misc.ControlMode
 import ru.deadsoftware.cavedroid.misc.utils.ArrayMapExtensions.component1
 import ru.deadsoftware.cavedroid.misc.utils.ArrayMapExtensions.component2
 import javax.inject.Inject
 
 @GameScope
 class TouchControlsRenderer @Inject constructor(
-    private val gameInput: GameInput
+    private val mainConfig: MainConfig,
+    private val mobsController: MobsController,
 ) : IGameRenderer {
 
     override val renderLayer get() = RENDER_LAYER
@@ -21,6 +23,10 @@ class TouchControlsRenderer @Inject constructor(
     private val shadeTexture get() = Assets.textureRegions[SHADE_KEY]
 
     override fun draw(spriteBatch: SpriteBatch, shapeRenderer: ShapeRenderer, viewport: Rectangle, delta: Float) {
+        if (!mainConfig.isTouch) {
+            return
+        }
+
         val touchControlsMap = Assets.guiMap
 
         touchControlsMap.forEach { (key, value) ->
@@ -35,7 +41,7 @@ class TouchControlsRenderer @Inject constructor(
         }
 
         // FIXME: Add pressed state for buttons
-        if (gameInput.controlMode == ControlMode.CURSOR) {
+        if (mobsController.player.controlMode == ControlMode.CURSOR) {
             val altKeyRect = touchControlsMap.get("alt").rect
             spriteBatch.draw(shadeTexture, altKeyRect.x, altKeyRect.y, altKeyRect.width, altKeyRect.height)
         }