Esempio n. 1
0
        public void AddEventListener(IComparable type, SkillEventListener listener)
        {
            HashSet <SkillEventListener> listenerSet = GetOrCreateListenerSet(type);

            if (listenerSet != null)
            {
                if (!listenerSet.Contains(listener))
                {
                    listenerSet.Add(listener);
                }
            }
        }
Esempio n. 2
0
 public void RemoveEventListener(IComparable type, SkillEventListener listener)
 {
     _listeners.TryGetValue(type, out HashSet <SkillEventListener> listenerSet);
     if (listenerSet != null)
     {
         if (!listenerSet.Contains(listener))
         {
             listenerSet.Remove(listener);
             if (listenerSet.Count <= 0)
             {
                 _listeners.Remove(type);
             }
         }
     }
 }