31 lines
1.0 KiB
C#
31 lines
1.0 KiB
C#
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;
|
|
Cursor.lockState = CursorLockMode.None;
|
|
}
|
|
|
|
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;
|
|
}
|
|
}
|
|
} |