public static void AddToPool(Poolable poolable) { if (poolsDictionary.ContainsKey(poolable.objectName)) { var list = poolsDictionary[poolable.objectName]; if (!list.InsertPoolable(poolable)) { GameObject.Destroy(poolable.gameObject); } } else { var list = new PoolableList(poolable, deactivatedObjectsParent.transform); poolsDictionary[poolable.objectName] = list; } }
public static void AddToPool(PoolableData data, Poolable poolable) { poolable.gameObject.SetActive(false); if (poolsDictionary.ContainsKey(data.objectName)) { var poolableList = poolsDictionary[data.objectName]; if (!poolableList.InsertPoolable(poolable)) { GameObject.Destroy(poolable.gameObject); } } else { var poolableList = new PoolableList(data, poolable, deactivatedObjectsParent.transform); poolsDictionary[data.objectName] = poolableList; } }