コード例 #1
0
 public void Remove(IRecieve recieve, Type type)
 {
     if (signals.TryGetValue(type.GetHashCode(), out List <IRecieve> cachedSignals))
     {
         cachedSignals.Remove(recieve);
     }
 }
コード例 #2
0
        public void Add(IRecieve recieve, Type type)
        {
            if (signals.TryGetValue(type.GetHashCode(), out List <IRecieve> cachedSignals))
            {
                cachedSignals.Add(recieve);
                return;
            }

            signals.Add(type.GetHashCode(), new List <IRecieve> {
                recieve
            });
        }
コード例 #3
0
        public void Remove(IRecieve recieve, Type type)
        {
            List <IRecieve> cachedSignals;

            Timer.Add(Time.DeltaTime, () =>
            {
                if (signals.TryGetValue(type.GetHashCode(), out cachedSignals))
                {
                    cachedSignals.Remove(recieve);
                }
            });
        }
コード例 #4
0
        public void Add <T>(IRecieve recieve)
        {
            List <IRecieve> cachedSignals;

            if (signals.TryGetValue(typeof(T).GetHashCode(), out cachedSignals))
            {
                cachedSignals.Add(recieve);
                return;
            }

            signals.Add(typeof(T).GetHashCode(), new List <IRecieve> {
                recieve
            });
        }
コード例 #5
0
ファイル: Actor.cs プロジェクト: XpycT/Actors-2D-Roguelike
 public void SignalRemove <T>(IRecieve recieve)
 {
     signals.Remove <T>(recieve);
 }
コード例 #6
0
ファイル: Actor.cs プロジェクト: XpycT/Actors-2D-Roguelike
 public void SignalAdd <T>(IRecieve recieve)
 {
     signals.Add <T>(recieve);
 }