private void OnDestroy() { if (m_Res != null) { m_Res.UnRegisteResListener(OnResLoadFinish); m_Res.SubRef(); m_Res = null; } }
public void ReleaseRes(string name) { if (string.IsNullOrEmpty(name)) { return; } IRes res = ResMgr.Instance.GetRes(name, false); if (res == null) { return; } if (m_WaitLoadList.Remove(res)) { --m_LoadingCount; if (m_LoadingCount == 0) { m_Listener = null; } } if (m_ResArray.Remove(res)) { res.UnRegisteResListener(OnResLoadFinish); res.SubRef(); ResMgr.Instance.SetResMapDirty(); } }
public void ReleaseRes(string name) { if (string.IsNullOrEmpty(name)) { return; } #if UNITY_EDITOR if (ABUtility.SimulateAssetBundleInEditor) { if (mCachedSpriteDict.ContainsKey(name)) { var sprite = mCachedSpriteDict[name]; GameObject.Destroy(sprite); mCachedSpriteDict.Remove(name); } } #endif IRes res = ResMgr.Instance.GetRes(name, false); if (res == null) { return; } if (mWaitLoadList.Remove(res)) { --mLoadingCount; if (mLoadingCount == 0) { mListener = null; } } if (mResArray.Remove(res)) { res.UnRegisteResListener(OnResLoadFinish); res.SubRef(); ResMgr.Instance.SetResMapDirty(); } }