Exemplo n.º 1
0
    private IEnumerator Kick_Cor()
    {
        can_Attack = false;
        _controller.Set_Is_Playable(false);
        _anim.SetTrigger("KickTrigger");
        _rigid.velocity = new Vector2(transform.localScale.x * 180f, -200f);

        kick_Collision.Make_Collider_Appear();
        for (float t = 0; t < 0.33f; t += Time.deltaTime)
        {
            _rigid.velocity = new Vector2(transform.localScale.x * 180f, _rigid.velocity.y);
            //敵と衝突時ノックバック
            if (kick_Collision.Hit_Trigger())
            {
                _rigid.velocity = new Vector2(40f * -transform.localScale.x, 180f);
                BeetlePowerManager.Instance.StartCoroutine("Increase_Cor", 8);
                _controller.Change_Animation("JumpBool");
                yield return(new WaitForSeconds(0.15f));

                break;
            }
            yield return(null);
        }
        kick_Collision.Make_Collider_Disappear();

        _controller.Set_Is_Playable(true);
        can_Attack = true;
    }
    //キック発生中の処理
    private IEnumerator Kicking_Cor()
    {
        for (float t = 0; t < 0.35f; t += Time.deltaTime)
        {
            _rigid.velocity = new Vector2(transform.localScale.x * Kick_Velocity(), _rigid.velocity.y);
            _controller.Change_Animation("KickBool");

            //敵と衝突時の処理
            if (kick_Collision.Hit_Trigger())
            {
                Do_Hit_Kick_Process();
                accept_Input = true;                    //敵に当たったとき次のキック入力を受け付ける
                yield return(new WaitForSeconds(0.05f));

                break;
            }
            yield return(null);
        }
        end_Kick = true;
    }