public override void InitPool(Transform parent) { if (m_inactiveAttractedClones == null) { //First time initialize to number of twitter feeds... m_inactiveAttractedClones = new List <AttractedCube>(); for (int i = 0, count = TwitterManager.Instance.NumImgTweets; i < count; ++i) { AttractedCube cube = (AttractedCube)Instantiate(this, parent); cube.Recycle(); } } }
public override FlyingCube Clone(Transform parent, Vector3 pos, Vector3 vel) { AttractedCube cube = null; //Before we clone, let's see if we can recycle a clone... if (m_inactiveAttractedClones.Count > 0) { cube = m_inactiveAttractedClones[0]; m_inactiveAttractedClones.Remove(cube); Transform cubeTrans = cube.transform; cubeTrans.SetParent(parent); cubeTrans.position = pos; cube.gameObject.SetActive(true); } else { cube = (AttractedCube)Instantiate(this, pos, Quaternion.identity, parent); } cube.Velocity = vel; return(cube); }