/// <summary> /// lz-2017.12.29 为了优化新枪第一枪特效加载卡顿,因此在装备枪的时候就预加载粒子特效和音效 /// </summary> /// <param name="equipment"></param> void PreLoadEquipmentEffect(PEEquipment equipment) { if (equipment is PEGun) { PEGun gun = equipment as PEGun; SkData skData = null; //音效 SkData.s_SkillTbl.TryGetValue(gun.m_ShootSoundID, out skData); if (skData != null && skData._effMainOneTime != null && skData._effMainOneTime._seId > 0) { int soundEffectID = skData._effMainOneTime._seId; SoundAsset.SESoundBuff buff = SoundAsset.SESoundBuff.GetSESoundData(soundEffectID); if (buff != null && AudioManager.instance != null) { AudioManager.instance.GetAudioClip(buff.mName); } } skData = null; //粒子特效 SkData.s_SkillTbl.TryGetValue(gun.GetSkillID(0), out skData); if (skData != null && skData._effMainOneTime != null && skData._effMainOneTime._effId != null && skData._effMainOneTime._effId.Length > 0) { int[] effectArray = skData._effMainOneTime._effId; for (int i = 0; i < effectArray.Length; i++) { int id = effectArray[i]; if (id > 0) { Effect.EffectData data = Effect.EffectData.GetEffCastData(id); if (data != null && !string.IsNullOrEmpty(data.m_path) && Effect.EffectBuilder.Instance != null) { Effect.EffectBuilder.Instance.GetEffect(data.m_path); } } } } } }
public EffectRequest(int argid, object argData) { m_ID = argid; m_Data = argData; m_EffectData = EffectData.GetEffCastData(m_ID); }