Esempio n. 1
0
    public BloodBarUI CreateXueTiao(Ientity entity)
    {
        string     path    = GetXueTiaoPrefabPath(entity);
        BloodBarUI xueTiao = LoadXueTiaoPrefab(entity, path);

        xueTiao.Init(entity);
        xueTiao.ResetBloodBarValue();
        xueTiao.UpdatePosition(entity.realObject.transform);
        xueTiao.gameObject.transform.parent = transform;
        xueTiao.transform.localScale        = Vector3.one;
        xueTiao.gameObject.transform.name   = xueTiaoName + entity.ModelName;
        return(xueTiao);
    }
Esempio n. 2
0
    public BloodBarUI LoadXueTiaoPrefab(Ientity entity, string path)
    {
        //ResourceItem pathLoadUnit = ResourcesManager.Instance.loadImmediate(path, ResourceType.PREFAB);
        //GameObject pathLoad = pathLoadUnit.Asset as GameObject;
        GameObject obj = ObjectPool.Instance.GetGO(path);

//         if (pathLoad == null)
//             Debug.LogError("error Not found  BloodBarUI =  null");
//         GameObject obj = GameObject.Instantiate(pathLoad) as GameObject;
        if (obj == null)
        {
            Debug.LogError("obj = null");
        }
        BloodBarUI xueTiao = obj.GetComponent <BloodBarUI>();

        xueTiao.mResName = path;

        return(xueTiao);
    }
Esempio n. 3
0
    //设置缓存物体无效
    public void DisablePoolGameObject(GameObject go, ObjectItemInfo info)
    {
        //特效Disable
        if (info.type == PoolObjectTypeEnum.Effect)
        {
            ParticleSystem[] particles = go.GetComponentsInChildren <ParticleSystem>(true);
            foreach (ParticleSystem part in particles)
            {
                part.Clear();
            }

            //解绑到poolGameobject节点
            go.transform.parent = objectsPool.transform;

            //拖尾处理
            if (go.tag == "trail")
            {
                info.mCanUse = false;

                TrailRenderer[] trailRenders = go.GetComponentsInChildren <TrailRenderer>();
                foreach (TrailRenderer trail in trailRenders)
                {
                    info.mTrailTimes[trail] = trail.time;
                    trail.time = -10;
                }

                XffectComponent[] xffects = go.GetComponentsInChildren <XffectComponent>(true);
                foreach (XffectComponent xffect in xffects)
                {
                    xffect.DoFinish();
                    xffect.gameObject.SetActive(false);
                }

                MeshRenderer[] renders = go.GetComponentsInChildren <MeshRenderer>(true);
                foreach (MeshRenderer render in renders)
                {
                    render.gameObject.SetActive(false);
                }

                foreach (ParticleSystem part in particles)
                {
                    part.gameObject.SetActive(false);
                }
            }
            else
            {
                info.mCanUse = true;
                go.SetActive(false);
            }
        }
        else if (info.type == PoolObjectTypeEnum.MiniMap)
        {
            //go.transform.parent = objectsPool.transform;
            go.SetActive(false);
        }
        else if (info.type == PoolObjectTypeEnum.Entity)
        {
            //解绑到poolGameobject节点
            go.transform.parent = objectsPool.transform;
            go.SetActive(false);
        }
        else if (info.type == PoolObjectTypeEnum.UITip)
        {
            //解绑到poolGameobject节点
            go.transform.parent = objectsPool.transform;
            go.SetActive(false);
        }
        else if (info.type == PoolObjectTypeEnum.BloodBar)
        {
            go.transform.parent = objectsPool.transform;
            BloodBarUI xt = go.GetComponent <BloodBarUI>();
            xt.SetVisible(false);
        }
    }