public void LoadEffect(int id) { if (!this.m_dicAllPreLoadAssetRequest.ContainsKey(id)) { if (!this.m_EffectDatas.ContainsKey(id)) { EffectLogger.Error("!m_EffectDatas.ContainsKey(id):" + id); } else { this.m_dicAllPreLoadAssetRequest[id] = new List <IAssetRequest>(); EffectData effectData = this.m_EffectDatas[id]; for (int i = 0; i < effectData.InstanceDatas.Count; i++) { EffectInstanceData effectInstanceData = effectData.InstanceDatas[i]; IAssetRequest assetRequest = ResourceManager.singleton.LoadEffect(effectInstanceData.Path, null, AssetPRI.DownloadPRI_Low); if (null != assetRequest) { this.m_dicAllPreLoadAssetRequest[id].Add(assetRequest); } } } } }
public bool Load(XmlNode effectNode) { this.m_InstanceDatas.Clear(); this.m_CameraShakeData = null; bool result; if (null == effectNode) { result = false; } else { foreach (XmlNode xmlNode in effectNode.ChildNodes) { string text = xmlNode.Name.ToLower(); if (text != null) { if (!(text == "id")) { if (!(text == "life")) { if (!(text == "hitpoint")) { if (!(text == "instance")) { if (text == "camerashake") { this.m_CameraShakeData = new CameraShakeData(); if (!this.m_CameraShakeData.Load(xmlNode)) { this.m_CameraShakeData = null; } } } else { EffectInstanceData effectInstanceData = new EffectInstanceData(); if (effectInstanceData.Load(xmlNode)) { this.m_InstanceDatas.Add(effectInstanceData); } } } else { this.HitPointTime = (float)Convert.ToDouble(xmlNode.InnerText); } } else { this.Life = (float)Convert.ToDouble(xmlNode.InnerText); } } else { this.Id = Convert.ToInt32(xmlNode.InnerText); } } } if (null != this.m_CameraShakeData) { if (this.m_CameraShakeData.Type == CameraShakeData.CameraShakeType.Animation) { if (null != this.m_CameraShakeData.ShakeObjectPath) { UnityEngine.Object obj = ResourceManager.singleton.Load(this.m_CameraShakeData.ShakeObjectPath); this.OnShakeAnimObjLoaded(obj); } } } result = true; } return(result); }