コード例 #1
0
ファイル: EventSO.cs プロジェクト: omar92/SO_System
 public void RegisterListener(EventListenerSO listener, ObjectEvent callback)
 {
     if (!IsRegistered(listener))
     {
         listenersCallbacks.Add(new ListenerEventPair(listener, callback));
     }
 }
コード例 #2
0
ファイル: EventSO.cs プロジェクト: omar92/SO_System
        public void UnregisterListener(EventListenerSO listener)
        {
            ListenerEventPair listenerEventPair = null;

            if (Find(listener, out listenerEventPair))
            {
                listenersCallbacks.Remove(listenerEventPair);
            }
        }
コード例 #3
0
ファイル: EventSO.cs プロジェクト: omar92/SO_System
 private bool IsRegistered(EventListenerSO listener)
 {
     for (int i = listenersCallbacks.Count - 1; i >= 0; i--)
     {
         if (listenersCallbacks[i].listener == listener)
         {
             return(true);
         }
     }
     return(false);
 }
コード例 #4
0
ファイル: EventSO.cs プロジェクト: omar92/SO_System
 private bool Find(EventListenerSO listener, out ListenerEventPair listenerEventPair)
 {
     listenerEventPair = null;
     for (int i = listenersCallbacks.Count - 1; i >= 0; i--)
     {
         if (listenersCallbacks[i].listener == listener)
         {
             listenerEventPair = listenersCallbacks[i];
             return(true);
         }
     }
     return(false);
 }
コード例 #5
0
ファイル: EventSO.cs プロジェクト: omar92/SO_System
 public ListenerEventPair(EventListenerSO listener, ObjectEvent objectEvent)
 {
     this.listener    = listener;
     this.objectEvent = objectEvent;
 }