using UnityEngine; namespace OnlyScove.Scripts { [System.Serializable] public class CameraDynamicFOV { [Header("Dynamic FOV")] [SerializeField] private bool useDynamicFOV = true; [SerializeField] private float baseFOV = 60f; [SerializeField] private float sprintFOV = 70f; [SerializeField] private float fovSmoothTime = 5f; public void HandleDynamicFOV(Camera cam, InputReader inputReader) { if (!useDynamicFOV || cam == null || inputReader == null) return; float targetFOV = baseFOV; if (inputReader.MoveInput.magnitude > 0.1f && inputReader.IsSprintHeld) { targetFOV = sprintFOV; } cam.fieldOfView = Mathf.Lerp(cam.fieldOfView, targetFOV, fovSmoothTime * Time.deltaTime); } } }