有没有办法在按下按钮时启动新的Coroutine?我制作了一个脚本来检查按下按钮的次数,但我不知道如何实现一个调用,这会增加Corutine中的按键次数(buttonCount ++)。可能吗?
public int buttonCount = 0;
public void Check() {
buttonCount ++;
}
我正在使用StartCoroutine:
public GameObject LeftUp, RightUp, LeftDown, RightDown, ForceSphere;
public int buttonCount = 0;
public void Check() {
buttonCount ++;
}
public void ActivateForceField ()
{
StartCoroutine (CreateForceField ());
forceActive = true;
}
IEnumerator CreateForceField ()
{
LeftUp.SetActive (true);
RightUp.SetActive (true);
yield return new WaitForSeconds (1.0f);
LeftDown.SetActive (true);
RightDown.SetActive (true);
yield return new WaitForSeconds (1.0f);
LeftUp.SetActive (false);
RightUp.SetActive (false);
yield return new WaitForSeconds (1.0f);
LeftDown.SetActive (false);
RightDown.SetActive (false);
//yield return new WaitForSeconds (1.0f);
ForceSphere.SetActive (true);
yield return new WaitForSeconds (10.0f);
ForceSphere.SetActive (false);
forceActive = false;
}
我试过把Check();在我的IEnumerator开始但它没有工作。谢谢:))
答案 0 :(得分:1)
例如,如果包含ActivateForceField
的脚本名为TheScript
,则为
创建一个UI按钮,在检查器中选择您的按钮,然后
- 查看检查器中的按钮脚本,然后
- 查看“点击”
- 然后选择包含gameobject
TheScript
- 然后在下一个选择框中,选择TheScript
- > ActivateForceField()
这样每次单击按钮时,都会调用此函数