Exemplo n.º 1
0
 /// <summary>
 /// Safe method for removing a listener without needing to test whether a gamemanager is setup.
 /// </summary>
 /// <param name="msg"></param>
 /// <returns></returns>
 public static void SafeRemoveListener <T>(Messenger.MessageListenerDelegate handler) where T : BaseMessage
 {
     if (!IsActive || Messenger == null)
     {
         return;
     }
     Messenger.RemoveListener <T>(handler);
 }
Exemplo n.º 2
0
 /// <summary>
 /// Shortcut and safe method for removing a listener without needing to test whether a gamemanager is setup.
 /// </summary>
 /// <param name="messageType"></param>
 /// <param name="handler"></param>
 /// <returns></returns>
 public static bool SafeRemoveListener(Type messageType, Messenger.MessageListenerDelegate handler)
 {
     if (!IsActive || Messenger == null)
     {
         return(false);
     }
     Messenger.RemoveListener(messageType, handler);
     return(true);
 }
Exemplo n.º 3
0
 /// <summary>
 /// Shortcut and safe method for removing a listener without needing to test whether a gamemanager is setup.
 /// </summary>
 /// <param name="handler"></param>
 /// <returns></returns>
 public static bool SafeRemoveListener <T>(Messenger.MessageListenerDelegate handler) where T : BaseMessage
 {
     if (!IsActive || Messenger == null)
     {
         return(false);
     }
     Messenger.RemoveListener <T>(handler);
     return(true);
 }
 /// <summary>
 /// Remove GameCondition listeners.
 /// </summary>
 /// <returns></returns>
 public static void RemoveListeners(IEnumerable <GameConditionReference> gameConditionReferences, Messenger.MessageListenerDelegate handler)
 {
     System.Type[] listeningMessageTypes = GetListeningMessages(gameConditionReferences);
     foreach (var type in listeningMessageTypes)
     {
         GameManager.SafeRemoveListener(type, handler);
     }
 }