C# 如何在unity3d中将字符串参数传递给另一个脚本
目前正在开发插件,现在卡住了。试图寻找,但不知道要找什么,救命。。 在我决定延迟使用couroutines之前,我一切都很顺利。我需要将temp传递给另一个脚本。查找//错误。谢谢C# 如何在unity3d中将字符串参数传递给另一个脚本,c#,unity3d,unity5,C#,Unity3d,Unity5,目前正在开发插件,现在卡住了。试图寻找,但不知道要找什么,救命。。 在我决定延迟使用couroutines之前,我一切都很顺利。我需要将temp传递给另一个脚本。查找//错误。谢谢 第一个脚本: void Start() { skinnedMeshRenderer = GetComponent(); Speakers speakers = new Speakers();
第一个脚本:
void Start()
{
skinnedMeshRenderer = GetComponent();
Speakers speakers = new Speakers();
SwaitTime = speakers.waitTime;
StalkSpeed = speakers.talkSpeed;
}
public void click()
{
foreach (Speakers i in speakerList)
{
string[] temp = split(i);
//ERROR
newLetterCombo = gameObject.AddComponent(); //able to access couroutine in 2nd script but does not pass temp argument like below.
//letterCombo newLetterCombo = new letterCombo(temp); [worked earlier but does not access couroutine, also puts up monobehavior new keyword not allowed]
newLetterCombo.switchStarter();
}
}
第二个脚本:
public string[] letters;
public letterCombo(string[] _letters)
{
letters = _letters;
}
public void switchStarter()
{
StartCoroutine(comboswitch());
}
private IEnumerator comboswitch()
{
foreach (string combo in letters)
{
switch (combo)
{
case "AA":
print("AA");
yield return new WaitForSeconds(2);
break;
[/code]
就打电话
newLetterCombo.switchStarter(temp);
并将其他功能更改为
public void switchStarter(string[] temp)
{
StartCoroutine(comboswitch(temp));
}
private IEnumerator comboswitch(string[] temp)
{
//...
}
就打电话
newLetterCombo.switchStarter(temp);
并将其他功能更改为
public void switchStarter(string[] temp)
{
StartCoroutine(comboswitch(temp));
}
private IEnumerator comboswitch(string[] temp)
{
//...
}
您只需传递参数。@GunnarB。请解释或更正该行,谢谢。您只需传递参数。@GunnarB。请解释或更正该行,谢谢。