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); }
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(); } }