Esempio n. 1
0
    private IEnumerator Melody_A1_Cor()
    {
        base.Set_Can_Switch_Attack(false);
        //移動
        Warp(Config.nutral_Pos);
        yield return(new WaitForSeconds(1.5f));

        //ショット
        while (true)
        {
            _effect.Play_Power_Charge_Effect_Small();
            yield return(new WaitForSeconds(1.0f));

            _effect.Play_Burst_Effect(Color.green);
            UsualSoundManager.Instance.Play_Shoot_Sound();
            _shoot.Shoot_Vine_Shoot(8);
            //待つ、メロディ切り替わったら抜ける
            _shoot.Shoot_Bound_Shoot();
            yield return(new WaitForSeconds(2.0f));

            for (float t = 0; t < 3.0f; t += Time.deltaTime)
            {
                if (melody_Manager.Get_Now_Melody() != MelodyManager.Melody.A1)
                {
                    base.Set_Can_Switch_Attack(true);
                    base.Restart_Attack();
                    Stop_Melody_A1();
                }
                yield return(new WaitForSeconds(0));
            }
        }
    }
Esempio n. 2
0
    private IEnumerator Last_Attack_Cor()
    {
        _attack.Stop_Attack();
        float max_Time_Count = time_Count;

        float[] time_Border = { time_Count * 0.8f, time_Count * 0.55f, time_Count * 0.3f, 0 };

        _effect.Play_Roaring_Effect();
        yield return(new WaitForSeconds(2.0f));

        _last_Shoot.Start_Wing_Shoot();
        _last_Shoot.Start_First_Shoot();
        _effect.Play_Burst_Effect(Color.green);

        while (time_Count > time_Border[0])
        {
            yield return(null);
        }

        _last_Shoot.Start_Second_Shoot();
        _effect.Play_Burst_Effect(Color.yellow);

        while (time_Count > time_Border[1])
        {
            yield return(null);
        }

        _last_Shoot.Start_Third_Shoot();
        _effect.Play_Burst_Effect(Color.red);

        while (time_Count > time_Border[2])
        {
            yield return(null);
        }

        _last_Shoot.Start_Forth_Shoot();
        _effect.Play_Burst_Effect(new Color(1f, 0.2f, 1f));

        while (time_Count > 0)
        {
            yield return(null);
        }

        _last_Shoot.Stop_Shoot();
        _eternal.Damaged(1000, "");
    }