예제 #1
0
        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);
        }
예제 #2
0
        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);
            }
        }
예제 #3
0
 void PoolShape(MergableObject tetrahedron)
 {
     Utility.ObjectPool.Instance.PoolObject(tetrahedron.gameObject);
     //Destroy (tetrahedron.gameObject);
 }