public override void Execute(Vector3 hit_point) { if (reactionIntervalTimer > reactionInterval) { // 他ボイス再生中は再生しない if (G20_VoicePerformer.GetInstance().IsPlaying) { return; } reactionIntervalTimer = 0f; int playNum = 0; if (isRandomPlay) { do { playNum = Random.Range(0, voices.Count); }while (prePlayNum == playNum); } else { //listの並び順に再生 playNum = prePlayNum + 1; if (playNum >= voices.Count) { playNum = 0; } } G20_VoicePerformer.GetInstance().PlayWithNoControll(voices[playNum]); prePlayNum = playNum; } }
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); }
void PlayDamageVoice() { if (stageBoss.HP <= 0) { return; } if (currentVoice == null) { currentVoice = voices.GetEnumerator(); currentVoice.MoveNext(); } G20_VoicePerformer.GetInstance().PlayWithNoControll(currentVoice.Current); currentVoice.MoveNext(); }
public override void StartPerformance() { //Debug.Log("voicePlay"); G20_VoicePerformer.GetInstance().PlayWithNoCaption(voiceType); //G20_SEManager.GetInstance().Play((G20_SEType)( G20_SEType.VOICE0 + (int)voiceType ), Vector3.zero, false); }
public void PlayVoiceWithCaption(int num) { G20_VoicePerformer.GetInstance().PlayWithCaption((G20_VoiceType)num); }
IEnumerator GesslerShootCoroutine(System.Action on_end_action) { BattleSetUP(); var anim = GameObject.Find("G20_Root").GetComponent <Animator>(); anim.enabled = true; anim.CrossFade("ToGesslerBattle", 0.3f); G20_BGMManager.GetInstance().FadeOut(); yield return(new WaitForSeconds(1.0f)); G20_BGMManager.GetInstance().Play(G20_BGMType.BOSS); yield return(new WaitForSeconds(1.9f)); anim.enabled = false; G20_VoicePerformer.GetInstance().PlayWithNoControll(G20_VoiceType.INGAME2); //counterWall(ゲスラーの反撃判定壁)をアクティブに counterWall.SetActive(true); hitCounterApple = counterWall.GetComponent <G20_HitCounterApple>(); yield return(null); // 「SHOOT」表示 ActivateShootObject(true); StartCoroutine(NextGesslerMove()); // ゲスラー撃てるようになる stageBoss.IsInvincible = false; //gesslerにhiteefect追従するように bossHitEffect = stageBoss.GetComponent <G20_HitEffect>(); bossHitEffect.effctParent = stageBoss.transform; bossHitEffect.ChangeEffectType(G20_EffectType.HIT_GESSLER_BODY); Destroy(stageBoss.GetComponent <G20_HitSE>()); stageBoss.GetComponent <G20_HitObject>().ChangeHitTag(G20_HitTag.ASSIST); stageBoss.GetComponent <G20_HitObject>().IsHitRateUp = true; while (stageBoss.HP > 0) { yield return(null); } //counterWall(ゲスラーの反撃判定壁)を非アクティブに counterWall.SetActive(false); gesslerAnim.PlayAnim(G20_GesslerAnimType.Yarare); // 「SHOOT」非表示 foreach (var o in activateObjs) { o.SetActive(false); } G20_VoicePerformer.GetInstance().PlayWithCaption(G20_VoiceType.GAME_CLEAR1); StartCoroutine(GesslerDownMove()); StartCoroutine(ApprochToGessler()); yield return(new WaitForSeconds(1.0f)); // ゲスラー撃破 if (on_end_action != null) { on_end_action(); } }