MergableObject[] ShapesForSplit() { MergableObject[] newShapes = new MergableObject[MergableObjectManager.Instance.countForMerge]; newShapes[0] = this; for (int i = 1; i < MergableObjectManager.Instance.countForMerge; i++) { newShapes[i] = GetShapeFromPool(); } return(newShapes); }
public void Explode() { MergableObject[] mergableObjects = new MergableObject[Size]; SetSize(1, -1); mergableObjects[0] = this; for (int i = 1; i < mergableObjects.Length; i++) { // TODO: GET FROM POOL!! // mergableObjects[i] = GetShapeFromPool (); mergableObjects[i] = Instantiate(this); } foreach (MergableObject mergableObject in mergableObjects) { mergableObject.transform.position = transform.position; mergableObject.enabled = false; mergableObject.gameObject.SetActive(true); } }
void PoolShape(MergableObject tetrahedron) { Utility.ObjectPool.Instance.PoolObject(tetrahedron.gameObject); //Destroy (tetrahedron.gameObject); }