【发布时间】:2018-10-13 23:22:11
【问题描述】:
我正在使用协程来设置重复延迟,如下所示。
在我清醒时我有
StartCoroutine(RandomMove());
然后再往下
IEnumerator RandomMove()
{
while (true)
{
// print(Time.time);
yield return new WaitForSeconds(foo);
// print(Time.time);
}
}
其中 'foo' 是一个随机浮点值,我在每次迭代时都会更改。 假设 foo 是 10 秒,并且在延迟的中途我需要重置延迟,以便它再次从 10 开始“倒计时”。
我将如何做到这一点?我应该改用计时器吗?
【问题讨论】:
-
你能再举一个例子吗?我不太清楚你想要完成什么。如果您试图在
foo时间到期之前“重置”延迟,您可能需要再次停止并启动协程。或者您只是想弄清楚如何在每次迭代中创建一个新变量?