X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fgame%2Finput%2Fhandler%2Fmouse%2FCursorMouseInputHandler.kt;h=454337eefb744f6f8a4803283299ddd28a2e694a;hb=19b878cb64fd7153355fbdf748707726765a434a;hp=585a5ab09d181a62cb0ff1767664118282c4047c;hpb=10751913ec4e5613dd5934711e2332bbc93b81e0;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/game/input/handler/mouse/CursorMouseInputHandler.kt b/core/src/ru/deadsoftware/cavedroid/game/input/handler/mouse/CursorMouseInputHandler.kt index 585a5ab..454337e 100644 --- a/core/src/ru/deadsoftware/cavedroid/game/input/handler/mouse/CursorMouseInputHandler.kt +++ b/core/src/ru/deadsoftware/cavedroid/game/input/handler/mouse/CursorMouseInputHandler.kt @@ -71,7 +71,7 @@ class CursorMouseInputHandler @Inject constructor( } private fun getPlayerHeadRotation(mouseWorldX: Float, mouseWorldY: Float): Float { - val h = mouseWorldX - player.x + val h = mouseWorldX - (player.x + player.width / 2) val v = mouseWorldY - player.y return MathUtils.atan(v / h) * MathUtils.radDeg @@ -88,6 +88,12 @@ class CursorMouseInputHandler @Inject constructor( player.cursorY = worldY.bl player.headRotation = getPlayerHeadRotation(worldX, worldY) + + if (worldX < player.x + player.width / 2) { + player.setDir(Mob.Direction.LEFT) + } else { + player.setDir(Mob.Direction.RIGHT) + } } private fun getCreativeTooltip(action: MouseInputAction): String? { @@ -125,7 +131,10 @@ class CursorMouseInputHandler @Inject constructor( } player.checkCursorBounds(gameWorld) - setPlayerDirectionToCursor() + + if (player.controlMode == Player.ControlMode.WALK && mainConfig.isTouch) { + setPlayerDirectionToCursor() + } if (player.cursorX != pastCursorX || player.cursorY != pastCursorY) { player.blockDamage = 0f