Exemplo n.º 1
0
        //Remove um observador de um evento
        public static void RemoveListner(string eventName, UnityAction <Hashtable> listener)
        {
            if (!mng)
            {
                return;
            }                     //Impede que tentemos remover um evento se o singleton nao foi criado ,inicializado ou foi removido.
            HashTableEvent someEvent = null;

            if (instance.events.TryGetValue(eventName, out someEvent))
            {
                someEvent.RemoveListener(listener);
            }
        }
Exemplo n.º 2
0
        //Envia uma mensagem para todos os observadores do evento, passando os parametros necessarios
        public static void BroadcastEvent(string eventName, Hashtable eventParams = default)
        {
            HashTableEvent someEvent = null;

            if (instance.events.TryGetValue(eventName, out someEvent))
            {
                someEvent.Invoke(eventParams);
            }
            else
            {
                Debug.LogWarningFormat("Broadcasting event \"{0}\" but no one is listening", eventName);
            }
        }
Exemplo n.º 3
0
        //Adiciona um observador para um evento
        public static void AddListener(string eventName, UnityAction <Hashtable> listener)
        {
            HashTableEvent someEvent = null;

            if (instance.events.TryGetValue(eventName, out someEvent))
            {
                someEvent.AddListener(listener);
            }
            else
            {
                someEvent = new HashTableEvent();
                someEvent.AddListener(listener);
                instance.events.Add(eventName, someEvent);
            }
        }