【发布时间】:2021-03-14 21:04:40
【问题描述】:
是的,我确实被困在一个简单的协程上。在我的 Unity 游戏中,我一直试图弄清楚如何在公共静态 void 中使用这样的东西:
StartCoroutine(ExampleCoroutine())
我知道没有办法在公共静态 void 中使用该行,但我正在尝试找到一种解决方法来做同样的事情。到目前为止,互联网还没有提供帮助,但我最接近解决问题的方法是创建实例。我不明白,因为我只是一个新手,但这可能是一个线索,因为这是我在创建时遇到的错误:
error CS0120: An object reference is required for the non-static field, method, or property 'MonoBehaviour.StartCoroutine(IEnumerator)'
协程启动的 IEnumerator 被标记为 public static,如果这有帮助的话。 谢谢你的时间和幽默我的愚蠢
编辑:我被要求显示更多代码,所以我开始了!
public static void NeedsToBeAccessedElsewhere()
{
StartCoroutine(NeedsDeley());
//Do Stuff
}
public static IEnumerator NeedsDelay()
{
//results
}
【问题讨论】:
-
没有。我正在尝试在公共静态 void 中启动协程。
-
是的,这就是我想知道该怎么做。
-
我分享了一个相同的错误。
-
编辑完成。
标签: c# unity3d c#-4.0 coroutine ienumerator