有人可以解释 WaitForSeconds() 吗?
Can somebody please explain WaitForSeconds()?
我试图让我的代码在执行某些操作之前等待 x
秒。我查阅了如何执行此操作,并找到了 WaitForSeconds()
函数。不幸的是,每当我尝试使用它时,我的代码中都会出现红色下划线。我正在努力让它在你死后等待几秒钟再重生:
void Respawn()
{
yield return new WaitForSeconds(5);
gameObject.transform.position = spawnPoint;
}
我也知道我需要在某处放置类似 StartCoroutine(Example());
的东西,但我也不知道该把它放在哪里。我该如何正确执行此操作?
yield return new WaitForSeconds(5);
必须在协程函数中使用。现在,您正在 void
函数 void Respawn()
中使用它。将 void
更改为 IEnumerator
应该可以解决您的问题。
IEnumerator Respawn()
{
yield return new WaitForSeconds(5);
gameObject.transform.position = spawnPoint;
}
然后就可以用StartCoroutine(Respawn());
调用了。每次调用它,它都会等待 5
秒,然后执行 gameObject.transform.position = spawnPoint;
。如果您想了解其工作原理,请访问 here。
我试图让我的代码在执行某些操作之前等待 x
秒。我查阅了如何执行此操作,并找到了 WaitForSeconds()
函数。不幸的是,每当我尝试使用它时,我的代码中都会出现红色下划线。我正在努力让它在你死后等待几秒钟再重生:
void Respawn()
{
yield return new WaitForSeconds(5);
gameObject.transform.position = spawnPoint;
}
我也知道我需要在某处放置类似 StartCoroutine(Example());
的东西,但我也不知道该把它放在哪里。我该如何正确执行此操作?
yield return new WaitForSeconds(5);
必须在协程函数中使用。现在,您正在 void
函数 void Respawn()
中使用它。将 void
更改为 IEnumerator
应该可以解决您的问题。
IEnumerator Respawn()
{
yield return new WaitForSeconds(5);
gameObject.transform.position = spawnPoint;
}
然后就可以用StartCoroutine(Respawn());
调用了。每次调用它,它都会等待 5
秒,然后执行 gameObject.transform.position = spawnPoint;
。如果您想了解其工作原理,请访问 here。