Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示Unity C#对话,每个字母部署两次,然后再部署下一个字母_C#_Unity3d_Text - Fatal编程技术网

显示Unity C#对话,每个字母部署两次,然后再部署下一个字母

显示Unity C#对话,每个字母部署两次,然后再部署下一个字母,c#,unity3d,text,C#,Unity3d,Text,所以我正在做一个游戏,当你点击游戏的某些部分时,我会在游戏的某些部分显示一些文本。我有一个函数,它启动一个协同程序,使每个字母一次出现一个。这在我的一个文本对象上非常有效,但当我在一个带有文本组件的TextMesh对象上尝试时,每个字母的拼写都是原来的两倍。有什么想法吗 private GameObject roomText; private string roomString; IEnumerator TypeTextSentence(string sentence) { room

所以我正在做一个游戏,当你点击游戏的某些部分时,我会在游戏的某些部分显示一些文本。我有一个函数,它启动一个协同程序,使每个字母一次出现一个。这在我的一个文本对象上非常有效,但当我在一个带有文本组件的TextMesh对象上尝试时,每个字母的拼写都是原来的两倍。有什么想法吗

private GameObject roomText;

private string roomString;

IEnumerator TypeTextSentence(string sentence)
{
    roomText.GetComponent<TextMesh>().text = "";
    foreach (char letter in sentence.ToCharArray())
    {   
        roomText.GetComponent<TextMesh>().text += letter;
        yield return null;
    }
}
private GameObject roomText;
私有字符串roomString;
IEnumerator类型文本句子(字符串句子)
{
roomText.GetComponent().text=“”;
foreach(句子中的字符。ToCharArray())
{   
roomText.GetComponent().text+=字母;
收益返回空;
}
}
然后当它被执行的时候

roomText = GameObject.Find("CouchText");
roomString = roomText.GetComponent<Text>().text;
StopAllCoroutines();
StartCoroutine(TypeTextSentence(roomString));
roomText=GameObject.Find(“CouchText”);
roomString=roomText.GetComponent().text;
StopAllCoroutines();
start例程(typetextstence(roomString));

文本网格位于一个组中,如果这改变了情况/

您似乎要启动两次协同程序。我无法作出其他解释

使用

查看是否有两个对象在同一对象上工作。将其添加到“yield return null”之前的协同程序中


双击日志会显示相应的游戏对象。

非常感谢!我有相同的脚本在两个不同的对象上运行,我从来没有想过要看那里!你是个救生员!有一次我得到了“未设置为对象的实例”,但检查器显示它已设置(公共变量)-这些错误从未存在-有一个实例未设置。但这当然是另一个剧本:)
Debug.Log("my name is " + transform.name + " and I add this letter: " + letter, this.gameObject);