예제 #1
0
        //manually emit effect node by expected position.
        public EffectNode EmitNode(string eftName, Vector3 pos)
        {
            List <XffectComponent> cache = EffectDic[eftName];

            if (cache == null)
            {
                Debug.LogError(name + ": cache doesnt exist!");
                return(null);
            }
            if (cache.Count > 1)
            {
                Debug.LogWarning("EmitNode() only support only-one xffect cache!");
            }
            XffectComponent xft = (XffectComponent)cache[0];

            if (!XffectComponent.IsActive(xft.gameObject))
            {
                xft.Active();
            }

            EffectNode ret = xft.EmitByPos(pos);

            if (ret == null)
            {
                Debug.LogError("emit node error! may be node max count is not enough:" + eftName);
            }

            return(ret);
        }