void FishingCancel(InputAction.CallbackContext context) { switch (m_currState) { // cancel out fishing entirely case FishingState.Aiming: if (m_currFishingSign != null) { m_currFishingSign.SetInteractable(true); m_currFishingSign.ResetLookat(); } m_playerMovement.SetFrozen(false); m_fishingReticle.SetActive(false); m_fishingRod.SetActive(false); m_playerControls.Fishing.Disable(); m_playerInput.SwitchCurrentActionMap("Player"); m_playerControls.Player.Enable(); m_uiManager.ToggleInstructions(""); ChangeState(FishingState.NotFishing); break; // recast case FishingState.Waiting: m_currFishingSign.FishingArea.ActivateFish(false); m_fishingReticle.SetAnimTriggCastEnd(); m_fishingRod.SetAnimTriggCastEnd(); m_uiManager.ToggleInstructions("Aiming"); ChangeState(FishingState.Aiming); break; } }