[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / input / handler / mouse / CreativeInventoryScrollMouseInputHandler.kt
diff --git a/core/src/ru/deadsoftware/cavedroid/game/input/handler/mouse/CreativeInventoryScrollMouseInputHandler.kt b/core/src/ru/deadsoftware/cavedroid/game/input/handler/mouse/CreativeInventoryScrollMouseInputHandler.kt
index 352d04bcb5fba0e98d439af2da68edcc5e4f0a0c..8acdb7e1d5cdd7437d61c9c64c678a5ce0a2aff1 100644 (file)
package ru.deadsoftware.cavedroid.game.input.handler.mouse
+import ru.deadsoftware.cavedroid.misc.annotations.multibinding.BindMouseInputHandler
import com.badlogic.gdx.math.MathUtils
import ru.deadsoftware.cavedroid.MainConfig
import ru.deadsoftware.cavedroid.game.GameItemsHolder
import ru.deadsoftware.cavedroid.game.GameScope
import ru.deadsoftware.cavedroid.game.GameUiWindow
import ru.deadsoftware.cavedroid.game.ui.windows.GameWindowsManager
-import ru.deadsoftware.cavedroid.game.input.IGameInputHandler
+import ru.deadsoftware.cavedroid.game.input.IMouseInputHandler
import ru.deadsoftware.cavedroid.game.input.action.MouseInputAction
import ru.deadsoftware.cavedroid.game.input.action.keys.MouseInputActionKey
import ru.deadsoftware.cavedroid.game.input.isInsideWindow
import kotlin.math.abs
@GameScope
+@BindMouseInputHandler
class CreativeInventoryScrollMouseInputHandler @Inject constructor(
private val mainConfig: MainConfig,
private val gameWindowsManager: GameWindowsManager,
private val gameItemsHolder: GameItemsHolder,
-) : IGameInputHandler<MouseInputAction> {
+) : IMouseInputHandler {
private val creativeInventoryTexture get() = requireNotNull(Assets.textureRegions["creative"])
}
private fun checkStartDragConditions(action: MouseInputAction): Boolean {
- return (action.actionKey is MouseInputActionKey.Touch) &&
+ return (action.actionKey is MouseInputActionKey.Screen) &&
!action.actionKey.touchUp && !gameWindowsManager.isDragging
}
private fun checkEndDragConditions(action: MouseInputAction): Boolean {
- return action.actionKey is MouseInputActionKey.Touch &&
+ return action.actionKey is MouseInputActionKey.Screen &&
action.actionKey.touchUp && gameWindowsManager.isDragging
}
override fun handle(action: MouseInputAction) {
when (action.actionKey) {
- is MouseInputActionKey.Touch -> handleStartOrEndDrag(action)
+ is MouseInputActionKey.Screen -> handleStartOrEndDrag(action)
is MouseInputActionKey.Dragged -> handleDrag(action)
is MouseInputActionKey.Scroll -> handleScroll(action)
else -> return