コード例 #1
0
        public override void UnregisterListener(GameEvent.GameEventHandler eventHandler)
        {
            //if (ReferenceEquals(listener, null))
            //	return;

            switch (_assignmentType)
            {
            case AssignmentType.PersonalVariable:
                if (ReferenceEquals(_instancedVariable, null) || ReferenceEquals(IDToken, null))
                {
                    return;
                }
                _instancedVariable.UnregisterListener(IDToken, eventHandler);
                break;

            case AssignmentType.GlobalVariable:
                if (ReferenceEquals(_globalVariable, null))
                {
                    return;
                }
                _globalVariable.UnregisterListener(eventHandler);
                break;

            case AssignmentType.Constant:
            default:
                return;
            }
        }
コード例 #2
0
        // TODO: I wish these could be in base class ValueReference...
        public override void RegisterListener(GameEvent.GameEventHandler eventHandler, UnityEngine.Object listener)
        {
                    #if UNITY_EDITOR
            if (!Application.isPlaying)
            {
                return;
            }
                    #endif

            //if (ReferenceEquals(listener, null))
            //	return;

            switch (_assignmentType)
            {
            case AssignmentType.PersonalVariable:
                if (ReferenceEquals(_instancedVariable, null) || ReferenceEquals(IDToken, null))
                {
                    return;
                }
                _instancedVariable.RegisterListener(IDToken, eventHandler, listener);
                break;

            case AssignmentType.GlobalVariable:
                if (ReferenceEquals(_globalVariable, null))
                {
                    return;
                }
                _globalVariable.RegisterListener(eventHandler, listener);
                break;

            case AssignmentType.Constant:
            default:
                return;
            }
        }
コード例 #3
0
        public void RegisterListener(object key, GameEvent.GameEventHandler eventHandler, Object listener)
        {
            if (ReferenceEquals(eventHandler, null))
            {
                return;
            }

            GetList(key).RegisterListener(eventHandler, listener);
        }
コード例 #4
0
        public void UnregisterListener(object key, GameEvent.GameEventHandler eventHandler)
        {
            if (ReferenceEquals(eventHandler, null))
            {
                return;
            }

            GetVariable(key).UnregisterListener(eventHandler);
        }
コード例 #5
0
        public void RegisterListener(object key, GameEvent.GameEventHandler eventHandler, UnityEngine.Object listener)
        {
            if (ReferenceEquals(eventHandler, null))
            {
                return;
            }

            GetVariable(key).RegisterListener(eventHandler, listener);
        }
コード例 #6
0
        private void OnEnable()
        {
            _eventHandlers.Clear();

            foreach (var binding in _bindings)
            {
                var cachedBinding = binding;

                GameEvent.GameEventHandler eventHandler = () => { OnGameEvent(cachedBinding); };
                _eventHandlers.Add(eventHandler);

                binding.variable.RegisterListener(eventHandler, this);
            }
        }
コード例 #7
0
 public abstract void UnregisterListener(GameEvent.GameEventHandler eventHandler);
コード例 #8
0
 public abstract void RegisterListener(GameEvent.GameEventHandler eventHandler, Object listener);
コード例 #9
0
 public abstract void RegisterListener(GameEvent.GameEventHandler eventHandler, UnityEngine.Object listener);