private void Jump(GameEvent gameEvent)
    {
        if (gameEvent == GameEvent.Jump && charState.IsIdleOrMoving())
        {
            animator.SetBool("WallBounce", false);

            EventManager.OnCharEvent(GameEvent.Jump);
            InputController.jumpReleased = false;

            //jumpTime = Time.time;

            // Change the forward speed based on what kind of jump it is
            if (charState.IsIdle())
            {
                animator.SetTrigger(anim_idleJump);
            }

            else if (charState.IsRunning())
            {
                animator.SetTrigger(anim_runningJump);
            }

            else if (charState.IsSprinting())
            {
                animator.SetBool(anim_sprintJump, true);
                RSUtil.OrientCapsuleCollider(cCollider, false);
                //Debug.Break();
            }
        }

        //print (gameEvent);
        else if (gameEvent == GameEvent.Jump && charState.IsIdleOrRunningJumping() && !hasDoubleJumped)
        {
            animator.SetTrigger(anim_doubleJump);
        }
    }