using UnityEngine; namespace Code.Gameplay.Camera.CameraStates { public class MainMenuState : BaseCameraState, ICameraState { public MainMenuState(CameraStateMachineContext context) : base(context) { } public override void EnterState() { base.EnterState(); Camera.fieldOfView = Context.CameraSettingsConfigs[CameraMode.MainMenu].fov; } protected override void HandlePosition(float deltaTime, float zoomInput, Quaternion targetRotation) { Camera.transform.position = FollowTransform.position; } public CameraMode GetCameraMode() => CameraMode.MainMenu; protected override void HandleRotationInput(float deltaTime, Vector3 rotationInput, out Quaternion targetRotation) { if(FollowTransform) Camera.transform.rotation = FollowTransform.rotation; targetRotation = Camera.transform.rotation; } } }