public void Destroy(Object target, bool checkIsExists = true, bool isAutoDispose = false) { if (checkIsExists) { if (AssetMapper != default) { bool flag = AssetMapper.Keys.Contains(target); #if LOG_ASSET_QUOTEDER "error:Asset {0} do not contains in quoteder, raw name is {1}".Log(!flag, target.name, mRaw.name); #endif if (!flag) { return; } else { } } else { } } else { } AssetMapper.Remove(target); #if LOG_ASSET_QUOTEDER "log".Log("Destroy asset".Append(target.name, " count remains ", Count.ToString())); #endif Object.Destroy(target); RemoveAssetQuoted(); Count--; if (Count <= 0) { if (isAutoDispose) { Dispose(); } else { } } else { } }
private void CleanAllAsset() { List <Object> keys = AssetMapper.Keys; List <AssetQuoteder> list = AssetMapper.Values; List <Object> deletes = new List <Object>(); int max = list.Count; for (int i = 0; i < max; i++) { if (list[i].MapperID == MapperID) { deletes.Add(keys[i]); } else { } } Object asset; max = deletes.Count; for (int i = 0; i < max; i++) { asset = deletes[i]; if (asset != default) { #if LOG_ASSET_QUOTEDER "log:Asset quoteder {0} clean all asset, ({1})".Log(mRaw.name, asset.name); #endif AssetMapper.Remove(asset); Object.Destroy(asset); } else { } } }