public T FetchFromPool() { if (PoolStack.Count > 0) { return(PoolStack.Pop()); } else { return(CreatePooledObject()); } }
void Awake() { _forces = new PoolStack <Force>(ForceConstructor, _forceSize, _expand); }
public void ReturnToPool(T pooledObject) { pooledObject.GameObject.gameObject.SetActive(false); PoolStack.Push(pooledObject); }
public void ReturnToPool(T pooledObject) { pooledObject.GameObject.gameObject.transform.SetParent(transform); pooledObject.GameObject.gameObject.SetActive(false); PoolStack.Push(pooledObject); }