protected ElementObject CreateNewObject() { ElementObject newPoolObject = new ElementObject(); newPoolObject.instance = Instantiate(element); newPoolObject.inPool = true; newPoolObject.instance.transform.SetParent(transform); newPoolObject.SetReferences(); newPoolObject.Sleep(); return(newPoolObject); }
public ElementObject Pop() { for (int i = 0; i < pool.Count; i++) { if (pool[i].inPool) { pool[i].inPool = false; pool[i].WakeUp(transform.position); return(pool[i]); } } ElementObject newPoolObject = new ElementObject(); newPoolObject.instance = element; newPoolObject.inPool = false; newPoolObject.instance.transform.SetParent(transform); newPoolObject.SetReferences(); pool.Add(newPoolObject); return(newPoolObject); }