/// <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
    }