Exemplo n.º 1
0
        public virtual void Explode()
        {
            mg_JetpackReboot active         = MinigameManager.GetActive <mg_JetpackReboot>();
            mg_jr_Resources  resources      = active.Resources;
            GameObject       pooledResource = resources.GetPooledResource(mg_jr_ResourceList.GAME_PREFAB_EFFECT_OBSTACLE_EXPLOSION);
            Bounds           bounds         = WidestBounds();

            if (bounds.size.x < 1.5f)
            {
                pooledResource.transform.localScale = new Vector3(0.5f, 0.5f, 0.5f);
            }
            SpriteRenderer component = pooledResource.GetComponent <SpriteRenderer>();

            Assert.NotNull(component, "Explosion effect must have a spriterenderer");
            component.sortingOrder = mg_jr_SpriteDrawingLayers.Instance.SpriteOrder(mg_jr_SpriteDrawingLayers.DrawingLayers.OBSTACLE_0);
            Vector3 center = component.bounds.center;
            Vector3 vector = pooledResource.transform.position - center;

            pooledResource.transform.position = bounds.center + vector;
            pooledResource.transform.parent   = active.GameLogic.transform;
            if (Random.value >= 0.5f)
            {
                active.PlaySFX(mg_jr_Sound.OBSTACLE_EXPLODE_01.ClipName());
            }
            else
            {
                active.PlaySFX(mg_jr_Sound.OBSTACLE_EXPLODE_02.ClipName());
            }
            resources.ReturnPooledResource(base.gameObject);
        }
 private void Update()
 {
     if (!m_miniGame.IsPaused)
     {
         float num = m_renderer.bounds.max.x + 0.25f;
         if (num < m_miniGame.VisibleWorldBounds.min.x)
         {
             base.gameObject.transform.parent = null;
             m_resources.ReturnPooledResource(base.gameObject);
         }
     }
 }
Exemplo n.º 3
0
        public void DestroyLevel()
        {
            mg_jr_Resources  resources = MinigameManager.GetActive <mg_JetpackReboot>().Resources;
            List <Transform> list      = new List <Transform>();

            foreach (Transform item in base.transform)
            {
                list.Add(item);
            }
            foreach (Transform item2 in list)
            {
                resources.ReturnPooledResource(item2.gameObject);
            }
            Object.Destroy(base.gameObject);
        }
Exemplo n.º 4
0
        private void Update()
        {
            if (m_miniGame.IsPaused)
            {
                return;
            }
            bool flag = false;

            SpriteRenderer[] renderers = m_renderers;
            foreach (SpriteRenderer spriteRenderer in renderers)
            {
                flag = spriteRenderer.bounds.Intersects(m_miniGame.VisibleWorldBounds);
                if (flag)
                {
                    break;
                }
            }
            if (!flag)
            {
                base.gameObject.transform.parent = null;
                m_resources.ReturnPooledResource(base.gameObject);
            }
        }