Example #1
0
 public void RegisterObjectBehaviour(ObjectBehaviour obj, BehaviourFunc behaviour)
 {
     // 添加到“待添加”字典中,防止在update过程中添加破坏迭代器
     if (!m_behaviourPool.ContainsKey(obj) && !m_prepareAdd.Contains(behaviour))
     {
         m_prepareAdd.Push(behaviour);
     }
 }
Example #2
0
 protected ObjectBehaviour()
 {
     if (m_mgr == null)
     {
         m_mgr = Singleton.GetInstance <ObjectBehaviourMgr>();
     }
     m_enable = true;
     OnEnable();
     Awake();
     m_behaviour = new BehaviourFunc()
     {
         obj                = this,
         StartHandler       = Start,
         FixedUpdateHandler = FixedUpdate,
         UpdateHandler      = Update,
         LateUpdateHandler  = LateUpdate
     };
     m_mgr.RegisterObjectBehaviour(this, m_behaviour);
 }