From 661ea42152d33d6b7b725d3d60aa3a963220c6fb Mon Sep 17 00:00:00 2001 From: RandomityGuy <31925790+RandomityGuy@users.noreply.github.com> Date: Tue, 11 Jun 2024 21:13:12 +0530 Subject: [PATCH] add camera swipe extent --- src/Settings.hx | 10 +++++++++- src/gui/TouchOptionsGui.hx | 6 ++++++ src/touch/CameraInput.hx | 2 +- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Settings.hx b/src/Settings.hx index d00a0bbc..2294a177 100644 --- a/src/Settings.hx +++ b/src/Settings.hx @@ -85,6 +85,7 @@ typedef TouchSettings = { var rewindButtonSize:Float; var buttonJoystickMultiplier:Float; var hideControls:Bool; + var cameraSwipeExtent:Float; } typedef GamepadSettings = { @@ -174,7 +175,8 @@ class Settings { rewindButtonPos: [300, 100], rewindButtonSize: 60, buttonJoystickMultiplier: 2.5, - hideControls: false + hideControls: false, + cameraSwipeExtent: 10.0 } public static var gamepadSettings:GamepadSettings = { @@ -397,7 +399,13 @@ class Settings { if (touchSettings.hideControls == null) { touchSettings.hideControls = false; } + if (touchSettings.cameraSwipeExtent == null) { + touchSettings.cameraSwipeExtent = 10.0; + } #end + if (touchSettings.cameraSwipeExtent == 0) { + touchSettings.cameraSwipeExtent = 10.0; + } if (json.gamepad != null) { gamepadSettings = json.gamepad; } diff --git a/src/gui/TouchOptionsGui.hx b/src/gui/TouchOptionsGui.hx index 0a3f946d..cdd2a6da 100644 --- a/src/gui/TouchOptionsGui.hx +++ b/src/gui/TouchOptionsGui.hx @@ -68,6 +68,12 @@ class TouchOptionsGui extends GuiImage { }, 0.5, 118); cameraMultiplier.setCurrentOption(Std.int(Util.clamp((Settings.touchSettings.buttonJoystickMultiplier - 0.5) / 0.5, 0, 6))); + var swipeExtent = optionCollection.addOption(1, "Camera Swipe Extent", ["5", "10", "15", "20", "25", "30", "35"], (idx) -> { + Settings.touchSettings.cameraSwipeExtent = 5 + (idx * 5); + return true; + }, 0.5, 118); + swipeExtent.setCurrentOption(Std.int(Util.clamp((Settings.touchSettings.cameraSwipeExtent - 5) / 5, 0, 6))); + var hideCtrls = optionCollection.addOption(1, "Hide Controls", ["No", "Yes"], (idx) -> { Settings.touchSettings.hideControls = idx == 1; return true; diff --git a/src/touch/CameraInput.hx b/src/touch/CameraInput.hx index eb164a50..ec97215b 100644 --- a/src/touch/CameraInput.hx +++ b/src/touch/CameraInput.hx @@ -103,7 +103,7 @@ class CameraInput { } function applyNonlinearScale(value:Float) { - var clamped = Util.clamp(value, -10, 10); + var clamped = Util.clamp(value, -Settings.touchSettings.cameraSwipeExtent, Settings.touchSettings.cameraSwipeExtent); return Math.abs(clamped) < 3 ? Math.pow(Math.abs(clamped / 2), 2.7) * (clamped >= 0 ? 1 : -1) : clamped; }