56 lines
1.6 KiB
C#
56 lines
1.6 KiB
C#
using UnityEngine;
|
|
using UnityEngine.InputSystem;
|
|
using UnityEngine.Windows;
|
|
|
|
public class PlayerInputController : MonoBehaviour
|
|
{
|
|
public InputActionAsset InputActions;
|
|
|
|
private InputAction m_moveAction;
|
|
private InputAction m_lookAction;
|
|
private InputAction m_jumpAction;
|
|
private InputAction m_throwAction;
|
|
private InputAction m_pickupAction;
|
|
private InputAction m_shiftAction;
|
|
|
|
public Vector2 MoveAmount { get; private set; }
|
|
public Vector2 LookAmount { get; private set; }
|
|
|
|
public bool JumpPressed { get; private set; }
|
|
public bool ShiftPressed { get; private set; }
|
|
public bool ThrowPressed { get; private set; }
|
|
public bool PickupPressed { get; private set; }
|
|
|
|
private void Awake()
|
|
{
|
|
var map = InputActions.FindActionMap("Player");
|
|
|
|
m_moveAction = map.FindAction("Move");
|
|
m_lookAction = map.FindAction("Look");
|
|
m_jumpAction = map.FindAction("Jump");
|
|
m_shiftAction = map.FindAction("Shift");
|
|
m_throwAction = map.FindAction("Throw");
|
|
m_pickupAction = map.FindAction("Pickup");
|
|
}
|
|
|
|
private void OnEnable()
|
|
{
|
|
InputActions.FindActionMap("Player").Enable();
|
|
}
|
|
|
|
private void OnDisable()
|
|
{
|
|
InputActions.FindActionMap("Player").Disable();
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
MoveAmount = m_moveAction.ReadValue<Vector2>();
|
|
LookAmount = m_lookAction.ReadValue<Vector2>();
|
|
|
|
ShiftPressed = m_shiftAction.IsPressed();
|
|
JumpPressed = m_jumpAction.WasPressedThisFrame();
|
|
ThrowPressed = m_throwAction.WasPressedThisFrame();
|
|
PickupPressed = m_pickupAction.WasPressedThisFrame();
|
|
}
|
|
} |