using System; namespace Svelto.ECS { public class DispatchOnSet { public DispatchOnSet(EGID senderID) { _senderID = senderID; } public T value { set { _value = value; if (_paused == false) _subscribers(_senderID, value); } } public void NotifyOnValueSet(Action action) { _subscribers += action; } public void StopNotify(Action action) { _subscribers -= action; } public void PauseNotify() { _paused = true; } public void ResumeNotify() { _paused = false; } protected T _value; readonly EGID _senderID; Action _subscribers; bool _paused; } }