Exemple #1
0
    private bool returnObject(List <PooledObject> pool, PooledObject obj, bool broadcastMessage = true)
    {
        if (broadcastMessage)
        {
            obj.BroadcastMessage(POOL_RETURN_METHOD, SendMessageOptions.DontRequireReceiver);
        }

        if (pool.Count < pool.Capacity)
        {
            obj.transform.SetParent(null);
            obj.gameObject.SetActive(false);
            pool.Add(obj);
            return(true);
        }
        Debug.LogWarning("Over pool capacity for " + obj.gameObject.name + " when attempting to return to pool");
        return(false);
    }
 private bool returnObject(List<PooledObject> pool, PooledObject obj)
 {
     if (pool.Count < pool.Capacity)
     {
         obj.BroadcastMessage(POOL_RETURN_METHOD, SendMessageOptions.DontRequireReceiver);
         obj.transform.parent = null;
         obj.gameObject.SetActive(false);
         pool.Add(obj);
         return true;
     }
     return false;
 }