internal static void Actualize(AtomBase atom) { _dirty = true; _updatingNextFrame.Enqueue(atom); if (ReferenceEquals(_current, null) && Application.isPlaying) { var go = new GameObject(nameof(AtomScheduler)); _current = go.AddComponent <AtomScheduler>(); DontDestroyOnLoad(_current); } }
private void CheckSubscribers() { if (subscribers != null) { for (var i = 0; i < subscribersCount; i++) { subscribers[i].Check(); } } else if (options.Has(AtomOptions.AutoActualize)) { AtomScheduler.Actualize(this); } }
protected void ObsoleteSubscribers() { if (subscribers != null) { for (var i = 0; i < subscribersCount; i++) { subscribers[i].Obsolete(); } } else if (options.Has(AtomOptions.AutoActualize)) { AtomScheduler.Actualize(this); } }