using UnityEngine; using PlayerActions = UserInputAction.PlayerActions; namespace _Project.Develop.Runtime.Utils.InputManagement.Inputs { public class PlayerInput : InputBase, IPlayerInput { public InputState Move { get; } public InputState Look { get; } public InputState Attack { get; } public InputState Jump { get; } public InputState Sprint { get; } public InputState Interact { get; } public InputState Crouch { get; } public InputState Previous { get; } public InputState Next { get; } private readonly PlayerActions _playerActions; public PlayerInput(PlayerActions playerActions) { _playerActions = playerActions; Move = Register(_playerActions.Move); Look = Register(_playerActions.Look); Jump = Register(_playerActions.Jump); Attack = Register(_playerActions.Attack); Sprint = Register(_playerActions.Sprint); Interact = Register(_playerActions.Interact); Crouch = Register(_playerActions.Crouch); Previous = Register(_playerActions.Previous); Next = Register(_playerActions.Next); } public void Initialize() { Disable(); } public override void Enable() { base.Enable(); _playerActions.Enable(); } public override void Disable() { base.Disable(); _playerActions.Disable(); } } }