public DelayedCall(float delay, Action callback)
{
this.delay = delay;
this.callback = callback;
this._startupTime = Time.realtimeSinceStartup;
EditorApplication.update = (EditorApplication.CallbackFunction)Delegate.Combine(EditorApplication.update, new EditorApplication.CallbackFunction(this.Update));
}
private void Update()
{
if (Time.realtimeSinceStartup - this._startupTime >= this.delay)
{
if (EditorApplication.update != null)
{
EditorApplication.update = (EditorApplication.CallbackFunction)Delegate.Remove(EditorApplication.update, new EditorApplication.CallbackFunction(this.Update));
}
if (this.callback != null)
{
this.callback();
}
}
}
在别人插件中看到的一种写法,可以很方便的在Editor中实现DelayCall和在Editor中实现Update 虽然没什么用吧 逃0.0
本人知识不足,水平有限,如有疏漏或错误,欢迎指正