Beispiel #1
0
        void Awake()
        {
            var variable = DynamicAtoms.CreateVariable <T, V, E1, E2>(CreateChangedEvent, CreateChangedWithHistoryEvent);

            if (variable.Changed != null)
            {
                if (Listener != null)
                {
                    Listener.GameEvent = variable.Changed;
                    Listener.GameEvent.RegisterListener(Listener);
                }
            }
            if (variable.ChangedWithHistory != null)
            {
                if (ListenerWithHistory != null)
                {
                    ListenerWithHistory.GameEvent = variable.ChangedWithHistory;
                    ListenerWithHistory.GameEvent.RegisterListener(ListenerWithHistory);
                }
            }
            if (OnVariableCreate != null)
            {
                OnVariableCreate.Do(variable);
            }
            if (OnVariableCreateWithGO != null)
            {
                OnVariableCreateWithGO.Do(variable, gameObject);
            }
        }