Esempio n. 1
0
 public void UnsubscribeToSpellCooldownEvents(SpellCooldownEventHandler newObserver)
 {
     if (IsObserverSpellCooldownInList(newObserver))
     {
         m_spellCooldownsEvents -= new SpellCooldownEventHandler(newObserver);
     }
 }
Esempio n. 2
0
 public void SubscribeToSpellCooldownEvents(SpellCooldownEventHandler newObserver)
 {
     if (!IsObserverSpellCooldownInList(newObserver))
     {
         m_spellCooldownsEvents += new SpellCooldownEventHandler(newObserver);
         m_spellCooldownsEvents.Invoke(GetSpellCooldownsAsPercent());
     }
 }
Esempio n. 3
0
 private bool IsObserverSpellCooldownInList(SpellCooldownEventHandler newObserver)
 {
     if (m_spellCooldownsEvents != null)
     {
         foreach (var existingHandler in m_spellCooldownsEvents.GetInvocationList())
         {
             if (Delegate.Equals(existingHandler, newObserver))//existingHandler == newObserver) //If it doesn't work use : if(objA.Method.Name == objB.Method.Name && objA.Target.GetType().FullName == objB.Target.GetType().FullName) OR Delegate.Equals(objA, objB)
             {
                 return(true);
             }
         }
     }
     return(false);
 }