// Update is called once per frame void Update() { if (charState.IsIdleOrRunning() && !charController.enabled) { charController.enabled = true; } if (charState.IsIdle() && animator.GetBool(anim_wallClimbHash)) { animator.SetBool(anim_wallClimbHash, false); } if (charState.IsFalling() && !rb.useGravity) { rb.useGravity = true; } }
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); } }