Example #1
0
        public static Pool GetPool(Pooled_MonoBehavior pooled)
        {
            if (pools.ContainsKey(pooled.GetType()))
            {
                return(pools[pooled.GetType()]);
            }

            var poolGameObject = new GameObject($"Pool-{pooled.name}");

            poolGameObject.transform.position = Vector3.zero;
            var pool = poolGameObject.AddComponent(typeof(Pool)) as Pool;

            pool.Pooled = pooled;
            pools.Add(pooled.GetType(), pool);
            return(pool.GrowPool());
        }
Example #2
0
 public void ReturnToPool(Pooled_MonoBehavior pooled)
 {
     pool.Enqueue(pooled);
 }