public LocomotionInputHandler(IMovementInterface inMovementInterface, IPlayerCameraInterface inCameraInterface, IHeldItemInterface inHeldItemInterface) : base() { MovementInterface = inMovementInterface; CameraInterface = inCameraInterface; HeldItemInterface = inHeldItemInterface; AnalogResponses.Add(EInputKey.HorizontalAnalog, OnHorizontalInput); AnalogResponses.Add(EInputKey.VerticalAnalog, OnVerticalInput); AnalogResponses.Add(EInputKey.CameraHorizontal, OnCameraHorizontalInput); AnalogResponses.Add(EInputKey.CameraZoom, OnCameraZoomInput); ButtonResponses.Add(EInputKey.CameraZoomReset, OnCameraZoomReset); ButtonResponses.Add(EInputKey.SprintButton, OnSprintButton); ButtonResponses.Add(EInputKey.PrimaryHeldAction, OnPrimaryHeldAction); ButtonResponses.Add(EInputKey.SecondaryHeldAction, OnSecondaryHeldAction); ButtonResponses.Add(EInputKey.DropHeldItem, OnDropHeldItem); }
protected void OnDestroy() { _heldItem = null; }
private bool NotHoldingAnything(IHeldItemInterface inHeldItemInterface) { return(inHeldItemInterface == null || inHeldItemInterface.GetHeldItem() == null); }
protected void Start() { _heldItem = gameObject.GetComponent <IHeldItemInterface>(); }