Exemple #1
0
 void StartRoutine(G20_GameState _state)
 {
     if (_state == G20_GameState.INGAME)
     {
         StartCoroutine(CheckEnemyHit());
     }
 }
 //ランキング用スコアの取得
 public void Scorereceive(G20_GameState state)
 {
     if (state == G20_GameState.INGAME)
     {
         StartCoroutine(ScoreReceiveCoroutine());
     }
 }
    ////////////////↑受信系↑////////////////////////////


    ////////////////↓送信系↓////////////////////////////
    //クリア後スコアを送信
    public void Scoresend(G20_GameState state)
    {
        if (state == G20_GameState.CLEAR)
        {
            StartCoroutine(ScoreSendCoroutine());
        }
    }
 public void GameFailed()
 {
     gameState      = G20_GameState.GAMEOVER;
     Time.timeScale = 0;
     G20_BGMManager.GetInstance().Play(G20_BGMType.GAMEOVER);
     G20_VoicePerformer.GetInstance().PlayWithCaption(G20_VoiceType.GAME_OVER1);
     //ゲームオーバー演出の開始
     G20_FailedPerformer.GetInstance().Excute(GameEnd);
 }
    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);
    }