Example #1
0
    public static void Despawn(MonoPoolable instance)
    {
        if (instance.IsDesignTimeObject)
        {
            instance.gameObject.SetActive(false);
            return;
        }

        var pool = GetPool(instance.Prefab);

        pool.Despawn(instance);
        SetParent(instance.transform, root);
    }
Example #2
0
    private static MonoPool <MonoPoolable> GetPool(MonoPoolable prefab)
    {
        if (pools.ContainsKey(prefab))
        {
            return(pools[prefab]);
        }
        else
        {
            MonoPool <MonoPoolable> newPool = new MonoPool <MonoPoolable>(prefab);
            pools.Add(prefab, newPool);

            return(newPool);
        }
    }
Example #3
0
    public void Despawn(MonoPoolable instance)
    {
        MonoPool <MonoPoolable> pool = GetPool(instance.Prefab);

        pool.Despawn(instance);
    }