30 lines
897 B
C#
30 lines
897 B
C#
using UnityEngine;
|
|
|
|
namespace OnlyScove.Scripts
|
|
{
|
|
[System.Serializable]
|
|
public class CameraZoomHandler
|
|
{
|
|
[Header("Zoom Settings")]
|
|
[SerializeField] private float distance = 5;
|
|
[SerializeField] private float minDistance = 2f;
|
|
[SerializeField] private float maxDistance = 15f;
|
|
[SerializeField] private float zoomSensitivity = 1f;
|
|
|
|
public float CurrentDistance => distance;
|
|
public float MinDistance => minDistance;
|
|
|
|
public void HandleZoom(InputReader inputReader)
|
|
{
|
|
if (inputReader == null) return;
|
|
|
|
float scrollDelta = inputReader.ScrollInput.y;
|
|
if (Mathf.Abs(scrollDelta) > 0.1f)
|
|
{
|
|
distance -= scrollDelta * zoomSensitivity * Time.deltaTime;
|
|
distance = Mathf.Clamp(distance, minDistance, maxDistance);
|
|
}
|
|
}
|
|
}
|
|
}
|