Exemple #1
0
    // -- 아이템 획득 이펙트 -- //



    public void setGetItemEffect(GetItemEffect eff)
    {
        eff.isEnabled        = false;
        eff.transform.parent = GameManager.me.assetPool;
        _getItemEffectList.Remove(eff);
        _getItemEffectPool.Push(eff);
    }
Exemple #2
0
    public IEnumerator preLoad()
    {
        int i = 0;

        yield return(null);

        for (i = 0; i < 15; ++i)
        {
            tk2dAnimatedSprite spr;

            if (_tk2dAnimatedSpritePool.Count > 0)
            {
                spr = _tk2dAnimatedSpritePool.Pop();
            }
            else
            {
                spr = ((tk2dAnimatedSprite)Instantiate(animatedSprite));
            }
            spr.StopAndResetFrame();
            spr.transform.parent = GameManager.me.assetPool;
            spr.gameObject.SetActive(false);
            _tk2dAnimatedSpritePool.Push(spr);
        }

//		Debug.Log("tk2dAnimatedSprite Complete");

        yield return(null);

        for (i = 0; i < 25; ++i)
        {
            WordEffect we = (WordEffect)Instantiate(wordEffect);
            we.gameObject.SetActive(false);
            we.isEnabled        = false;
            we.transform.parent = GameManager.me.assetPool;
            _getWordEffectPool.Push(we);
        }

//		Debug.Log("WordEffect Complete");
        yield return(null);

        for (i = 0; i < 20; ++i)
        {
            GetItemEffect ge = (GetItemEffect)Instantiate(getItemEffect);
            ge.gameObject.SetActive(false);
            ge.isEnabled        = false;
            ge.transform.parent = GameManager.me.assetPool;
            _getItemEffectPool.Push(ge);
        }

//		Debug.Log("GetItemEffect Complete");
        yield return(null);
    }
Exemple #3
0
    void OnDestroy()
    {
        //Debug.Log("OnDestroy : EffectManager" );

        foreach (tk2dAnimatedSprite ani in _tk2dAnimatedSprites)
        {
            Destroy(ani);
        }
        _tk2dAnimatedSprites.Clear();
        _tk2dAnimatedSprites = null;

        while (_tk2dAnimatedSpritePool.Count > 0)
        {
            Destroy(_tk2dAnimatedSpritePool.Pop().gameObject);
        }
        _tk2dAnimatedSpritePool = null;


        foreach (KeyValuePair <string, Stack <ParticleEffect> > kv in _particleEffectPool)
        {
            while (kv.Value.Count > 0)
            {
                ParticleEffect pe = kv.Value.Pop();
                if (pe != null)
                {
                    Destroy(pe.gameObject);
                }
            }
        }

        int count = _particleEffectList.Count;

        for (int i = count - 1; i >= 0; --i)
        {
            if (_particleEffectList[i] != null)
            {
                _particleEffectList[i].destroyAsset();
                if (_particleEffectList[i] != null && _particleEffectList[i].gameObject != null)
                {
                    Destroy(_particleEffectList[i].gameObject);
                }
            }
        }

        _particleEffectList.Clear();


        while (_attachedEffectPool.Count > 0)
        {
            Destroy(_attachedEffectPool.Pop().gameObject);
        }
        _attachedEffectPool = null;



        while (_getItemEffectPool.Count > 0)
        {
            GetItemEffect ge = _getItemEffectPool.Pop();

            if (ge != null && ge.gameObject != null)
            {
                Destroy(_getItemEffectPool.Pop().gameObject);
            }
        }


        while (_uiGetItemEffectPool.Count > 0)
        {
            try
            {
                Destroy(_uiGetItemEffectPool.Pop().gameObject);
            }
            catch (Exception e)
            {
            }
        }

        _uiGetItemEffectPool.Clear();


        while (_getWordEffectPool.Count > 0)
        {
            Destroy(_getWordEffectPool.Pop());
        }
        _getWordEffectPool = null;


        foreach (KeyValuePair <string, Stack <ElectricEffect> > kv in _electricEffectPool)
        {
            while (kv.Value.Count > 0)
            {
                ElectricEffect e = kv.Value.Pop();
                if (e != null)
                {
                    Destroy(e);
                }
            }
        }

        _electricEffectPool = null;



        while (_cutSceneEffectPool.Count > 0)
        {
            Destroy(_cutSceneEffectPool.Pop());
        }
        _cutSceneEffectPool = null;


        foreach (AttachedEffect ani in _attachedEffectList)
        {
            Destroy(ani.gameObject);
        }
        _attachedEffectList.Clear();
        _attachedEffectList = null;



        foreach (GetItemEffect ani in _getItemEffectList)
        {
            Destroy(ani.gameObject);
        }
        _getItemEffectList.Clear();
        _getItemEffectList = null;

        foreach (WordEffect ani in _getWordEffectList)
        {
            if (ani != null)
            {
                Destroy(ani.gameObject);
            }
        }
        _getWordEffectList.Clear();
        _getWordEffectList = null;


        foreach (ElectricEffect ani in _electricEffectList)
        {
            if (ani != null)
            {
                Destroy(ani.gameObject);
            }
        }
        _electricEffectList.Clear();
        _electricEffectList = null;
    }