A game about forced loneliness, made by TACStudios
1#if UNITY_EDITOR 2using UnityEditor; 3 4namespace Unity.VisualScripting 5{ 6 public class FrameDelayedCallback 7 { 8 private System.Action m_Callback; 9 private int m_FrameDelay; 10 public FrameDelayedCallback(System.Action function, int frameDelay) 11 { 12 m_Callback = function; 13 m_FrameDelay = frameDelay; 14 EditorApplication.update += Update; 15 } 16 17 public void Clear() 18 { 19 EditorApplication.update -= Update; 20 m_FrameDelay = 0; 21 m_Callback = null; 22 } 23 24 private void Update() 25 { 26 if (--m_FrameDelay == 0) 27 { 28 // Clear state before firing callback to ensure reset (callback could call ExitGUI) 29 var callback = m_Callback; 30 Clear(); 31 32 callback?.Invoke(); 33 } 34 } 35 } 36} 37#endif