Unityについての質問です。
下記のコルーチンをシーンで開始しようとすると、開始できず、エラーが起こってしまいます。何がいけないのでしょうか。Monovihaviourでコードを書いていた時はエラーは発生しませんでした。
コルーチン
IEnumerator OutputMessage(string msg)
{
Debug.Log("AAAAA");
m_syori = 1;
// 引数でもらった文字列の文字数分繰り返し for (int i = 0; i < msg.Length; i++) { var outputText = msg.Substring(i, 1); // 先頭からi文字目を切り出す messagewindow.text = messagewindow.text + outputText;// テキストに反映 yield return new WaitForSeconds(0.1f); // x秒待つ } m_syori = 0; MsgB = 1; Debug.Log("hai"); }
textはヒエラルキーにアタッチされてい流のでそれが原因ではないと思います。
DebugLogのAAAAAは出ません。
エラー
Failed to call function OutputMessage of class BattleManager
Calling function OutputMessage with no parameters but the function requires 1.
UnityEngine.MonoBehaviour:StartCoroutine(String, Object)
BattleManager:Start() (at Assets/BattleScene/BattleManager.cs:102)
クラスBattleManagerの関数OutputMessageを呼び出せませんでした
パラメーターなしで関数OutputMessageを呼び出すが、この関数には1が必要です。
UnityEngine.MonoBehaviour:StartCoroutine(String、Object)
BattleManager:Start()(Assets / BattleScene / BattleManager.cs:102)
回答1件
あなたの回答
tips
プレビュー