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); }
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); }
//设置缓存物体无效 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); } }