public void OnJump(InputAction.CallbackContext context) { if (characterState == SimpleCharacterState.Attack) { return; } bool jumpButtonDown = context.ReadValueAsButton(); if (jumpButtonDown) { characterState = SimpleCharacterState.Jump; } if (jumpButtonDown && GetComponent <Rigidbody2D>().velocity == Vector2.zero) { GetComponent <Rigidbody2D>().AddForce(new Vector2(0, jumpPower)); } }
IEnumerator Attack() { //inputVector = Vector2.zero; characterState = SimpleCharacterState.Attack; GetComponent <Animator>().PlayInFixedTime("attack_1", 0, 0); yield return(new WaitForSeconds(0.25f)); if (inputVector == Vector2.zero) { StartCoroutine(Idle()); } else { StartCoroutine(Move()); } }
IEnumerator Idle() { characterState = SimpleCharacterState.Idle; GetComponent <Animator>().PlayInFixedTime("stand", 0, 0); yield return(null); }
IEnumerator Move() { characterState = SimpleCharacterState.Walk; GetComponent <Animator>().PlayInFixedTime("move", 0, 0); yield return(null); }