/// <summary> /// 移除Entity; /// </summary> /// <typeparam name="T"></typeparam> /// <param name="entity"></param> public void ReleaseEntity <T>(AbsEntity entity) where T : AbsEntity, new() { RemoveEntity(entity); entity.UnInitialize(); _releaseEntityUIDList.Add(entity.UID); PoolMgr.singleton.ReleaseCsharpObject(entity as T); }
/// 删除Entity; private bool RemoveEntity(AbsEntity entity) { if (!_entityDict.ContainsKey(entity.UID)) { return(false); } _entityList.Remove(entity); _entityDict.Remove(entity.UID); return(true); }
/// 添加Entity; private bool AddEntity(ulong UID, AbsEntity entity) { if (_entityDict.ContainsKey(UID)) { return(false); } _entityList.Add(entity); _entityDict[UID] = entity; return(true); }