/// <summary> /// Remove object pool. /// </summary> public void RemovePool(GameObject goPrefab) { #if USING_CORE_GAME_KIT // +++++ Replace PoolingSystem with DarkTonic's CoreGameKit. +++++ InitializePoolBoss(); PoolBoss.DestroyPoolItem(goPrefab.transform); m_poolPrefabTransformList.Remove(goPrefab.transform); #else int key = goPrefab.GetInstanceID(); if (m_pooledBulletDic.ContainsKey(key) == false) { return; } PoolingParam poolParam = m_pooledBulletDic[key]; poolParam.m_searchStartIndex = 0; for (int i = 0; i < poolParam.m_bulletList.Count; i++) { Destroy(poolParam.m_bulletList[i].gameObject); Destroy(poolParam.m_bulletList[i]); poolParam.m_bulletList[i] = null; } poolParam.m_bulletList.Clear(); #endif }
/// <summary> /// Remove object pool. /// </summary> public void RemovePool(GameObject goPrefab) { #if USING_CORE_GAME_KIT // +++++ Replace PoolingSystem with DarkTonic's CoreGameKit. +++++ InitializePoolBoss(); Transform transPrefab = goPrefab.transform; PoolBoss.DestroyPoolItem(transPrefab); m_poolPrefabTransformList.Remove(transPrefab); #else int key = goPrefab.GetInstanceID(); if (m_pooledBulletDic.ContainsKey(key)) { PoolingParam poolParam = m_pooledBulletDic[key]; RemovePoolParam(poolParam); } #endif }
/// <summary> /// Remove all object pool. /// </summary> public void RemoveAllPool() { #if USING_CORE_GAME_KIT // +++++ Replace PoolingSystem with DarkTonic's CoreGameKit. +++++ InitializePoolBoss(); foreach (Transform transPrefab in m_poolPrefabTransformList) { if (transPrefab != null) { PoolBoss.DestroyPoolItem(transPrefab); m_poolPrefabTransformList.Remove(transPrefab); } } m_poolPrefabTransformList.Clear(); #else foreach (PoolingParam poolParam in m_pooledBulletDic.Values) { RemovePoolParam(poolParam); } #endif }