public void GameClear()
    {
        IsGesslerBattle = false;
        gameState       = G20_GameState.CLEAR;
        //gameRootAnim.enabled = true;
        //gameRootAnim.CrossFade("ToClear", 0.1f);
        //StartCoroutine(RootAnimOff(2f));

        // 敵(残ってれば)全滅
        G20_EnemyCabinet.GetInstance().KillAllEnemys();
        G20_ScoreApplePopper.GetInstance().DeleteAllScoreApples();
        G20_BGMManager.GetInstance().FadeOut();
        G20_BulletShooter.GetInstance().coutingHitRate = false;
        // クリア演出の開始
        G20_ClearPerformer.GetInstance().Excute(GameEnd);
    }
 public int GetHitRateBonus()
 {
     return(scoreCalcData.HitRateMultyply * (int)(G20_BulletShooter.GetInstance().HitRate * 100));
 }
 // Use this for initialization
 private void Awake()
 {
     G20_BulletShooter.GetInstance().ActionHitObject += UpdateCount;
 }
    IEnumerator ToIngameCoroutine()
    {
        // 演出中は弾の判定なし
        G20_BulletShooter.GetInstance().CanShoot = false;

        titleCanvas.SetActive(false);
        G20_BGMManager.GetInstance().FadeOut();
        var seForest = G20_SEManager.GetInstance().Play(G20_SEType.FOREST, Vector3.zero, false);

        yield return(new WaitForSeconds(isSkipPerformance ? 0.001f : 1f));

        //playerObj.GetComponent<Animator>().SetBool("zoomout", true);

        // 環境光は別のコルーチンで遷移
        StartCoroutine(LightSettingCoroutine());


        // プレイヤー後ずさり等のアニメーション開始
        gameRootAnim.CrossFade("ToIngame", 0f);

        yield return(new WaitForSeconds(5.5f));

        summonParticle.Play();
        yield return(new WaitForSeconds(0.7f));

        paramCanvas.SetActive(true);
        summonParticle.Stop();

        gesslerAnim.enabled = true;

        gesslerShootPerformer.gesslerAnim.PlayAnim(G20_GesslerAnimType.Attack);
        yield return(new WaitForSeconds(0.9f));

        yield return(new WaitForSeconds(0.6f));

        gesslerShootPerformer.gesslerAnim.PlayAnim(G20_GesslerAnimType.Taiki);

        // ゲスラーふわふわアニメーション開始

        // 最初のリンゴ召喚
        G20_StageManager.GetInstance().IngameStart();
        G20_StageManager.GetInstance().nowStageBehaviour.SetEnableUpdateCall(1);


        yield return(new WaitForSeconds(isSkipPerformance ? 0.001f : 1.5f));

        // セリフ再生と字幕表示
        //G20_VoicePerformer.GetInstance().Play(0);

        yield return(new WaitForSeconds(isSkipPerformance ? 0.001f : 0.5f));

        gameRootAnim.enabled = false;
        gesslerShootPerformer.gesslerAnim.PlayAnim(G20_GesslerAnimType.Taiki);

        // 戦闘開始
        G20_BulletShooter.GetInstance().CanShoot = true;
        gameState = G20_GameState.INGAME;
        G20_EnemyCabinet.GetInstance().AllEnemyAIStart();
        // 「SURVIVE!」表示
        uiTextSurvive.SetActive(true);
        // BGM
        G20_BGMManager.GetInstance().Play(G20_BGMType.INGAME_0);
        G20_SEManager.GetInstance().Fadeout(seForest);

        yield return(new WaitForSeconds(isSkipPerformance ? 0.001f : 5f));

        uiTextSurvive.SetActive(false);

        yield return(null);
    }
Beispiel #5
0
    IEnumerator PerformanceRoutine()
    {
        //トータルスコア瞬時表示
        currentTotalScore += G20_ScoreManager.GetInstance().GetBaseScore();
        totalScore.text    = currentTotalScore.ToString();
        var baseScoreStr = G20_ScoreManager.GetInstance().GetBaseScore().ToString();

        baseScore.text = baseScoreStr;
        yield return(new WaitForSeconds(1.0f));

        //チェイン数、チェインボーナス、トータルスコア、カウントアップ
        var preScore = currentTotalScore;

        currentTotalScore += G20_ScoreManager.GetInstance().GetMaxChainBonus();
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(chainValue, 0, G20_ChainCounter.GetInstance().MaxChainCount, chainCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(chainScore, 0, G20_ScoreManager.GetInstance().GetMaxChainBonus(), chainCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(totalScore, preScore, currentTotalScore, chainCountUpDuration);
        yield return(new WaitForSeconds(chainCountUpDuration + 1.0f));

        //命中率、命中率ボーナス、トータルスコア、カウントアップ
        preScore           = currentTotalScore;
        currentTotalScore += G20_ScoreManager.GetInstance().GetHitRateBonus();
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(hitRateValue, 0, (int)(G20_BulletShooter.GetInstance().HitRate * 100), hitRateCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(hitRateScore, 0, G20_ScoreManager.GetInstance().GetHitRateBonus(), hitRateCountUpDuration);
        G20_ScoreCountUpPerformer.GetInstance().StartCountUpScore(totalScore, preScore, currentTotalScore, hitRateCountUpDuration);
        yield return(new WaitForSeconds(hitRateCountUpDuration));

        //RANK表示ドーン
        ShowRank();
        showRankAnim.CrossFade("ShowRank", 0f);
    }