Exemple #1
0
 public T GetLogic <T>(Logic.AbsLogic logic) where T : Logic.AbsLogic
 {
     if (m_Logics.ContainsKey(logic.GetType().GetHashCode()))
     {
         return(m_Logics[logic.GetType().GetHashCode()] as T);
     }
     return(AddLogic <T>(logic) as T);
 }
Exemple #2
0
 public void RemoveLogic(Logic.AbsLogic logic)
 {
     if (m_Logics.ContainsKey(logic.GetType().GetHashCode()))
     {
         m_Logics[logic.GetType().GetHashCode()].OnDisable();
         m_Logics[logic.GetType().GetHashCode()].OnDestroy();
         m_Logics.Remove(logic.GetType().GetHashCode());
     }
 }
Exemple #3
0
 public T AddLogic <T>(Logic.AbsLogic logic) where T : Logic.AbsLogic
 {
     m_Logics.Add(logic.GetType().GetHashCode(), logic);
     return(logic as T);
 }