private void Start() { callback = Callback; foreach (GameObject gameObject in gameObjects) { OnEnableListener listener = gameObject.GetComponent <OnEnableListener>(); if (listener == null) { listener = gameObject.AddComponent(typeof(OnEnableListener)) as OnEnableListener; } listener.SetCallback(callback); } }
void OnEnable() { var _actions = Game.Instance.RequestActionMap <T>(); if (_actions.HasValue) { SetCallbacks(_actions.Value, this); DisableInputActions = () => { SetCallbacks(_actions.Value, null); Game.Instance.DisableActionMap <T>(); }; } else { enabled = false; } OnEnableCallback?.Invoke(this, _actions); }
public void SetCallback(OnEnableCallback cb) { callback = cb; }
void OnEnable() => OnEnableCallback?.Invoke();