前提・実現したいこと
コルーチンの中でコルーチンを呼び出したい
呼び出すコルーチンでもwaitforsecondを使いたい
■■な機能を実装中に以下のエラーメッセージが発生しました。
該当のソースコード
C#
1 public void IsTripleBarrett() 2 { 3 Debug.Log("?"); 4 StartCoroutine("TripleBarrett"); 5 } 6 private IEnumerable TripleBarrett() 7 { 8 Debug.Log("!"); 9 StartCoroutine("BarrettShot"); 10 yield return new WaitForSeconds(0.3f); 11 StartCoroutine("BarrettShot"); 12 yield return new WaitForSeconds(0.3f); 13 StartCoroutine("BarrettShot"); 14 yield return BarrettShot(); 15 } 16 17 private IEnumerator BarrettShot() 18 { 19 if (attackJudge) 20 { 21 attackJudge = false; 22 //生成時間 23 yield return new WaitForSeconds(popTime); 24 25 Vector3 pos = transform.position + new Vector3(0.2f, 0.2f, 0f); 26 27 GameObject BarrettPrefabObj = (GameObject)BarrettPrefabPath; 28 GameObject BarrettPrefab = Instantiate(BarrettPrefabObj, pos, Quaternion.identity, ShotManager); 29 30 var BarrettRb = BarrettPrefab.GetComponent<Rigidbody>(); 31 BarrettRb.AddForce(transform.right * 25f, ForceMode.Impulse); 32 33 //消える時間 34 yield return new WaitForSeconds(destroyTime); 35 Destroy(BarrettPrefab); 36 37 //リロード 38 OnReload = true; 39 } 40 else 41 { 42 yield break; 43 } 44 }
Hのキーを押されたときに呼んでいるのですが押されてほかの処理は通るのにここには入ってくれないので疑問です
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。