示例#1
0
        public void HideEntity(int entityId, object userData)
        {
            if (IsLoadingEntity(entityId))
            {
                m_EntitiesToReleaseOnLoad.Add(entityId);
                return;
            }

            m_EntityInfos enittyInfo = GetEntityInfo(entityId);

            if (entityInfo == null)
            {
            }

            InternalHideEntity(m_EntityInfos, userData);
        }
示例#2
0
        internal override void Update()
        {
            while (m_RecycleQueue.Count > 0)
            {
                m_EntityInfos entityInfo = m_RecycleQueue.First.Value;
                m_RecycleQueue.RemoveFirst();
                IEntity        entity      = entityInfo.Entity;
                m_EntityGroups entityGroup = (EntityGroup)entity.EntityGroup;

                entityInfo.Status = EntityStatus.WillRecycle;
                entity.OnRecycle();
                entityInfo.Status = EntityStatus.Recycled;
                entityGroup.UnspawnEntity(entity);
            }

            foreach (KeyValuePair <string, EntityGroup> entityGroup in m_EntityGroups)
            {
                entityGroup.Value.Update();
            }
        }