예제 #1
0
 public void PreLoadResource(ref ActorPreloadTab loadInfo, LoaderHelper loadHelper)
 {
     if (this.SpawnType == ESpawnObjectType.Tailsman)
     {
         CharmLib dataByKey = GameDataMgr.charmLib.GetDataByKey((long)this.ConfigId);
         if (dataByKey != null)
         {
             for (int i = 0; i < 10; i++)
             {
                 if (dataByKey.astCharmId[i].iParam == 0)
                 {
                     break;
                 }
                 int        iParam = dataByKey.astCharmId[i].iParam;
                 ShenFuInfo info   = GameDataMgr.shenfuBin.GetDataByKey((long)iParam);
                 if (info != null)
                 {
                     AssetLoadBase item = new AssetLoadBase {
                         assetPath = StringHelper.UTF8BytesToString(ref info.szShenFuResPath)
                     };
                     loadInfo.mesPrefabs.Add(item);
                     loadHelper.AnalyseSkillCombine(ref loadInfo, info.iBufId);
                 }
             }
         }
     }
 }
예제 #2
0
 public void AnalyseSoundBanks(ref ActorPreloadTab loadInfo, ref CActorInfo charInfo, ref ActorServerData serverData)
 {
     if (charInfo.SoundBanks != null && charInfo.SoundBanks.Length > 0)
     {
         for (int i = 0; i < charInfo.SoundBanks.Length; i++)
         {
             AssetLoadBase assetLoadBase = default(AssetLoadBase);
             assetLoadBase.assetPath = charInfo.SoundBanks[i];
             loadInfo.soundBanks.Add(assetLoadBase);
         }
     }
     if (serverData.SkinId != 0u)
     {
         ResHeroSkin heroSkin = CSkinInfo.GetHeroSkin((uint)loadInfo.theActor.ConfigId, serverData.SkinId);
         if (heroSkin != null && !string.IsNullOrEmpty(heroSkin.szSkinSoundResPack))
         {
             AssetLoadBase assetLoadBase2 = default(AssetLoadBase);
             assetLoadBase2.assetPath = heroSkin.szSkinSoundResPack + "_SFX";
             loadInfo.soundBanks.Add(assetLoadBase2);
             assetLoadBase2           = default(AssetLoadBase);
             assetLoadBase2.assetPath = heroSkin.szSkinSoundResPack + "_VO";
             loadInfo.soundBanks.Add(assetLoadBase2);
         }
     }
 }
예제 #3
0
 public void BuildActionHelper(ref ActorPreloadTab loadInfo)
 {
     ActionHelper[] array = Object.FindObjectsOfType <ActionHelper>();
     if (array == null || array.Length == 0)
     {
         return;
     }
     for (int i = 0; i < array.Length; i++)
     {
         ActionHelper actionHelper = array[i];
         for (int j = 0; j < actionHelper.actionHelpers.Length; j++)
         {
             ActionHelperStorage actionHelperStorage = actionHelper.actionHelpers[j];
             DebugHelper.Assert(actionHelperStorage != null && actionHelperStorage.actionName != null, "storage is null or action name is null. storage = {0}, storage.actionName={1}", new object[]
             {
                 (actionHelperStorage != null && actionHelperStorage.helperName != null) ? actionHelperStorage.helperName : "null",
                 (actionHelperStorage != null && actionHelperStorage.actionName != null) ? actionHelperStorage.actionName : "null"
             });
             if (actionHelperStorage != null && !string.IsNullOrEmpty(actionHelperStorage.actionName) && !this.ageCheckerSet.ContainsKey(actionHelperStorage.actionName))
             {
                 AssetLoadBase assetLoadBase = default(AssetLoadBase);
                 assetLoadBase.assetPath = actionHelperStorage.actionName;
                 loadInfo.ageActions.Add(assetLoadBase);
                 this.ageCheckerSet.Add(actionHelperStorage.actionName, true);
             }
         }
     }
 }
예제 #4
0
 public void AnalyseSoundBanks(ref ActorPreloadTab loadInfo, ref CActorInfo charInfo, ref ActorServerData serverData)
 {
     if ((charInfo.SoundBanks != null) && (charInfo.SoundBanks.Length > 0))
     {
         for (int i = 0; i < charInfo.SoundBanks.Length; i++)
         {
             AssetLoadBase item = new AssetLoadBase {
                 assetPath = charInfo.SoundBanks[i]
             };
             loadInfo.soundBanks.Add(item);
         }
     }
     if (serverData.SkinId != 0)
     {
         ResHeroSkin heroSkin = CSkinInfo.GetHeroSkin((uint)loadInfo.theActor.ConfigId, serverData.SkinId);
         if ((heroSkin != null) && !string.IsNullOrEmpty(heroSkin.szSkinSoundResPack))
         {
             AssetLoadBase base3 = new AssetLoadBase {
                 assetPath = heroSkin.szSkinSoundResPack + "_SFX"
             };
             loadInfo.soundBanks.Add(base3);
             base3 = new AssetLoadBase {
                 assetPath = heroSkin.szSkinSoundResPack + "_VO"
             };
             loadInfo.soundBanks.Add(base3);
         }
     }
 }
예제 #5
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     for (int i = 1; i <= 4; i++)
     {
         preloadTab.AddSprite(CSkillData.GetEffectSlotBg((SkillEffectType)i));
     }
 }
예제 #6
0
 public void AnalyseHeroTalent(ref ActorPreloadTab loadInfo, ResTalentHero talentCfg)
 {
     for (int i = 0; i < talentCfg.astTalentList.Length; i++)
     {
         RESDT_TALENT_DETAIL resdt_talent_detail = talentCfg.astTalentList[i];
         ResTalentLib        dataByKey           = GameDataMgr.talentLib.GetDataByKey(resdt_talent_detail.dwLvl1ID);
         if (dataByKey != null)
         {
             this.AnalyseSkill(ref loadInfo, (int)dataByKey.dwSkillID);
             this.AnalysePassiveSkill(ref loadInfo, (int)dataByKey.dwPassiveSkillID);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID1);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID2);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID3);
         }
         dataByKey = GameDataMgr.talentLib.GetDataByKey(resdt_talent_detail.dwLvl2ID);
         if (dataByKey != null)
         {
             this.AnalyseSkill(ref loadInfo, (int)dataByKey.dwSkillID);
             this.AnalysePassiveSkill(ref loadInfo, (int)dataByKey.dwPassiveSkillID);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID1);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID2);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID3);
         }
         dataByKey = GameDataMgr.talentLib.GetDataByKey(resdt_talent_detail.dwLvl3ID);
         if (dataByKey != null)
         {
             this.AnalyseSkill(ref loadInfo, (int)dataByKey.dwSkillID);
             this.AnalysePassiveSkill(ref loadInfo, (int)dataByKey.dwPassiveSkillID);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID1);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID2);
             this.AnalyseSkillCombine(ref loadInfo, (int)dataByKey.dwEffectID3);
         }
     }
 }
예제 #7
0
    public void AnalyseHeroBornAndReviveAge(ref ActorPreloadTab loadInfo, int configID)
    {
        ResHeroCfgInfo dataByKey = GameDataMgr.heroDatabin.GetDataByKey((uint)configID);

        if (dataByKey != null)
        {
            AssetLoadBase item = new AssetLoadBase {
                assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szBorn_Age)
            };
            string checkerKey = this.GetCheckerKey(item.assetPath, loadInfo.MarkID);
            if (!this.ageCheckerSet.ContainsKey(checkerKey))
            {
                loadInfo.ageActions.Add(item);
                this.ageCheckerSet.Add(checkerKey, true);
            }
            AssetLoadBase base3 = new AssetLoadBase {
                assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szRevive_Age)
            };
            string key = this.GetCheckerKey(base3.assetPath, loadInfo.MarkID);
            if (!this.ageCheckerSet.ContainsKey(key))
            {
                loadInfo.ageActions.Add(base3);
                this.ageCheckerSet.Add(key, true);
            }
        }
    }
예제 #8
0
    public ActorPreloadTab GetGlobalPreload()
    {
        ActorPreloadTab loadInfo = new ActorPreloadTab {
            ageActions    = new List <AssetLoadBase>(),
            parPrefabs    = new List <AssetLoadBase>(),
            mesPrefabs    = new List <AssetLoadBase>(),
            spritePrefabs = new List <AssetLoadBase>(),
            soundBanks    = new List <AssetLoadBase>(),
            behaviorXml   = new List <AssetLoadBase>()
        };

        this.BuildAreaTrigger(ref loadInfo);
        this.BuildActionHelper(ref loadInfo);
        this.BuildActionTrigger(ref loadInfo);
        this.BuildCommonSpawnPoints(ref loadInfo);
        this.BuildEquipInBattle(ref loadInfo);
        EffectPlayComponent.Preload(ref loadInfo);
        HudComponent3D.Preload(ref loadInfo);
        CBattleFloatDigitManager.Preload(ref loadInfo);
        OrganHitEffect.Preload(ref loadInfo);
        OrganWrapper.Preload(ref loadInfo);
        KillNotify.Preload(ref loadInfo);
        SkillIndicateSystem.Preload(ref loadInfo);
        ObjAgent.Preload(ref loadInfo);
        CSkillButtonManager.Preload(ref loadInfo);
        UpdateShadowPlane.Preload(ref loadInfo);
        CBattleSystem.Preload(ref loadInfo);
        CSkillData.Preload(ref loadInfo);
        return(loadInfo);
    }
예제 #9
0
 public void BuildEquipInBattle(ref ActorPreloadTab result)
 {
     Dictionary <long, object> .Enumerator enumerator = GameDataMgr.m_equipInBattleDatabin.GetEnumerator();
     while (enumerator.MoveNext())
     {
         KeyValuePair <long, object> current          = enumerator.get_Current();
         ResEquipInBattle            resEquipInBattle = current.get_Value() as ResEquipInBattle;
         if (resEquipInBattle != null)
         {
             string path = CUIUtility.s_Sprite_System_BattleEquip_Dir + StringHelper.UTF8BytesToString(ref resEquipInBattle.szIcon);
             result.AddSprite(path);
             if (resEquipInBattle.astEffectCombine != null && resEquipInBattle.astEffectCombine.Length > 0)
             {
                 for (int i = 0; i < resEquipInBattle.astEffectCombine.Length; i++)
                 {
                     uint dwID = resEquipInBattle.astEffectCombine[i].dwID;
                     this.AnalyseSkillCombine(ref result, (int)dwID);
                 }
             }
             if (resEquipInBattle.astPassiveSkill != null && resEquipInBattle.astPassiveSkill.Length > 0)
             {
                 for (int j = 0; j < resEquipInBattle.astPassiveSkill.Length; j++)
                 {
                     if (resEquipInBattle.astPassiveSkill[j].dwID > 0u)
                     {
                         this.AnalysePassiveSkill(ref result, (int)resEquipInBattle.astPassiveSkill[j].dwID);
                     }
                 }
             }
         }
     }
 }
예제 #10
0
 public void BuildActionHelper(ref ActorPreloadTab loadInfo)
 {
     ActionHelper[] helperArray = UnityEngine.Object.FindObjectsOfType <ActionHelper>();
     if ((helperArray != null) && (helperArray.Length != 0))
     {
         for (int i = 0; i < helperArray.Length; i++)
         {
             ActionHelper helper = helperArray[i];
             for (int j = 0; j < helper.actionHelpers.Length; j++)
             {
                 ActionHelperStorage storage      = helper.actionHelpers[j];
                 object[]            inParameters = new object[] { ((storage == null) || (storage.helperName == null)) ? "null" : storage.helperName, ((storage == null) || (storage.actionName == null)) ? "null" : storage.actionName };
                 DebugHelper.Assert((storage != null) && (storage.actionName != null), "storage is null or action name is null. storage = {0}, storage.actionName={1}", inParameters);
                 if (((storage != null) && !string.IsNullOrEmpty(storage.actionName)) && !this.ageCheckerSet.ContainsKey(storage.actionName))
                 {
                     AssetLoadBase item = new AssetLoadBase {
                         assetPath = storage.actionName
                     };
                     loadInfo.ageActions.Add(item);
                     this.ageCheckerSet.Add(storage.actionName, true);
                 }
             }
         }
     }
 }
예제 #11
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     for (int i = 0; i < 3; i++)
     {
         preloadTab.AddParticle("Prefab_Characters/Prefab_Organ/AroundEffect/" + ((OrganAroundEffect)i).ToString());
     }
     preloadTab.AddParticle("Prefab_Characters/Prefab_Organ/AroundEffect/AttackLinker");
 }
예제 #12
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/select_02");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/lockt_01");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Siwang_tongyong/siwang_tongyong_01");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/lockt_01");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/select_b_01");
 }
예제 #13
0
 public void PreLoadResource(TriggerActionWrapper triggerActionWrapper, ref ActorPreloadTab loadInfo, LoaderHelper loadHelper)
 {
     if (triggerActionWrapper == null)
     {
         return;
     }
     ShenFuSystem.PreLoadShenfuResource(triggerActionWrapper.UpdateUniqueId, ref loadInfo, loadHelper);
 }
예제 #14
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     preloadTab.AddSprite(S_kn_Tower_Icon);
     preloadTab.AddSprite(S_Base_blue_Icon);
     preloadTab.AddSprite(S_Dragon_big_Icon);
     preloadTab.AddSprite(S_Dragon_small_Icon);
     preloadTab.AddSprite(S_kn_dragon_Icon);
 }
예제 #15
0
    public void AnalyseSkill(ref ActorPreloadTab loadInfo, int skillID)
    {
        if (skillID <= 0)
        {
            return;
        }
        ResSkillCfgInfo dataByKey = GameDataMgr.skillDatabin.GetDataByKey((long)skillID);

        if (dataByKey == null)
        {
            return;
        }
        if (!this.skillIdList.Contains((long)skillID))
        {
            this.skillIdList.Add((long)skillID);
        }
        AssetLoadBase assetLoadBase = default(AssetLoadBase);

        assetLoadBase.assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szPrefab);
        string checkerKey = this.GetCheckerKey(assetLoadBase.assetPath, loadInfo.MarkID);

        if (this.ageCheckerSet.ContainsKey(checkerKey))
        {
            return;
        }
        loadInfo.ageActions.Add(assetLoadBase);
        this.ageCheckerSet.Add(checkerKey, true);
        string text = StringHelper.UTF8BytesToString(ref dataByKey.szGuidePrefab);

        if (!string.IsNullOrEmpty(text))
        {
            assetLoadBase.assetPath    = text;
            assetLoadBase.nInstantiate = 1;
            loadInfo.parPrefabs.Add(assetLoadBase);
        }
        text = StringHelper.UTF8BytesToString(ref dataByKey.szGuideWarnPrefab);
        if (!string.IsNullOrEmpty(text))
        {
            assetLoadBase.assetPath    = text;
            assetLoadBase.nInstantiate = 1;
            loadInfo.parPrefabs.Add(assetLoadBase);
        }
        text = StringHelper.UTF8BytesToString(ref dataByKey.szEffectPrefab);
        if (!string.IsNullOrEmpty(text))
        {
            assetLoadBase.assetPath    = text;
            assetLoadBase.nInstantiate = 1;
            loadInfo.parPrefabs.Add(assetLoadBase);
        }
        text = StringHelper.UTF8BytesToString(ref dataByKey.szEffectWarnPrefab);
        if (!string.IsNullOrEmpty(text))
        {
            assetLoadBase.assetPath    = text;
            assetLoadBase.nInstantiate = 1;
            loadInfo.parPrefabs.Add(assetLoadBase);
        }
    }
예제 #16
0
 public void PreLoadResource(ref ActorPreloadTab loadInfo, LoaderHelper loadHelper)
 {
     foreach (SpawnerWrapper wrapper in this.SpawnerList)
     {
         if (wrapper != null)
         {
             wrapper.PreLoadResource(ref loadInfo, loadHelper);
         }
     }
 }
예제 #17
0
 public void AnalyseSkillMarkParticleSkin(ref ActorPreloadTab loadInfo, string _resName)
 {
     for (int i = 0; i < 3; i++)
     {
         AssetLoadBase assetLoadBase = default(AssetLoadBase);
         assetLoadBase.assetPath    = SkinResourceHelper.GetSkinResourceName(loadInfo.theActor.ConfigId, loadInfo.MarkID, _resName, i);
         assetLoadBase.nInstantiate = 1;
         loadInfo.parPrefabs.Add(assetLoadBase);
     }
 }
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     preloadTab.AddSprite(CSignalTipShower.S_kn_Tower_Icon);
     preloadTab.AddSprite(CSignalTipShower.S_Base_blue_Icon);
     preloadTab.AddSprite(CSignalTipShower.S_Dragon_big_Icon);
     preloadTab.AddSprite(CSignalTipShower.S_Dragon_small_Icon);
     preloadTab.AddSprite(CSignalTipShower.S_kn_dragon_Icon);
     preloadTab.AddSprite(CSignalTipShower.S_Bg_Green);
     preloadTab.AddSprite(CSignalTipShower.S_Bg_Blue);
 }
예제 #19
0
 public void AnalyseSkillMarkParticleSkin(ref ActorPreloadTab loadInfo, string _resName)
 {
     for (int i = 0; i < 3; i++)
     {
         AssetLoadBase item = new AssetLoadBase {
             assetPath    = SkinResourceHelper.GetSkinResourceName(loadInfo.theActor.ConfigId, loadInfo.MarkID, _resName, i),
             nInstantiate = 1
         };
         loadInfo.parPrefabs.Add(item);
     }
 }
예제 #20
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     preloadTab.AddSprite(building_icon);
     preloadTab.AddSprite(monster_icon);
     preloadTab.AddSprite(dragon_icon);
     preloadTab.AddSprite(yeguai_icon);
     preloadTab.AddSprite(blue_cannon_icon);
     preloadTab.AddSprite(red_cannon_icon);
     preloadTab.AddSprite(blue_soldier_icon);
     preloadTab.AddSprite(red_soldier_icon);
 }
예제 #21
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     preloadTab.AddSprite(KillNotify.building_icon);
     preloadTab.AddSprite(KillNotify.monster_icon);
     preloadTab.AddSprite(KillNotify.dragon_icon);
     preloadTab.AddSprite(KillNotify.yeguai_icon);
     preloadTab.AddSprite(KillNotify.blue_cannon_icon);
     preloadTab.AddSprite(KillNotify.red_cannon_icon);
     preloadTab.AddSprite(KillNotify.blue_soldier_icon);
     preloadTab.AddSprite(KillNotify.red_soldier_icon);
 }
예제 #22
0
 public static void Preload(ref ActorPreloadTab preloadTab)
 {
     preloadTab.AddParticle(s_heroSoulLevelUpEftPath);
     preloadTab.AddParticle(s_heroSuckEftPath);
     preloadTab.AddParticle(s_heroHunHurtPath);
     preloadTab.AddParticle("Prefab_Skill_Effects/Systems_Effects/GoldenCoin_UI_01");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/Arrow_3_move");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/Arrow_2_move");
     preloadTab.AddParticle("Prefab_Skill_Effects/tongyong_effects/Indicator/Arrow_3_move_red");
     preloadTab.AddParticle("Prefab_Skill_Effects/Systems_Effects/huangguan_buff_01");
 }
예제 #23
0
 public void PreLoadResource(ref ActorPreloadTab loadInfo, LoaderHelper loadHelper)
 {
     SpawnerWrapper[] spawnerList = this.SpawnerList;
     for (int i = 0; i < spawnerList.Length; i++)
     {
         SpawnerWrapper spawnerWrapper = spawnerList[i];
         if (spawnerWrapper != null)
         {
             spawnerWrapper.PreLoadResource(ref loadInfo, loadHelper);
         }
     }
 }
예제 #24
0
    public void AnalyseSkillMarkParticle(ref ActorPreloadTab loadInfo, string _resName)
    {
        AssetLoadBase assetLoadBase = default(AssetLoadBase);
        string        text          = StringHelper.UTF8BytesToString(ref _resName);

        if (!string.IsNullOrEmpty(text))
        {
            assetLoadBase.assetPath    = text;
            assetLoadBase.nInstantiate = 1;
            loadInfo.parPrefabs.Add(assetLoadBase);
            this.AnalyseSkillMarkParticleSkin(ref loadInfo, text);
        }
    }
예제 #25
0
        public static void Preload(ref ActorPreloadTab preloadTab)
        {
            ResSignalInfo info = null;

            foreach (KeyValuePair <long, object> pair in GameDataMgr.signalDatabin)
            {
                info = (ResSignalInfo)pair.Value;
                if ((info != null) && !string.IsNullOrEmpty(info.szRealEffect))
                {
                    preloadTab.AddSprite(info.szRealEffect);
                }
            }
        }
예제 #26
0
    public void AnalyseSkillMarkParticle(ref ActorPreloadTab loadInfo, string _resName)
    {
        AssetLoadBase item = new AssetLoadBase();
        string        str  = StringHelper.UTF8BytesToString(ref _resName);

        if (!string.IsNullOrEmpty(str))
        {
            item.assetPath    = str;
            item.nInstantiate = 1;
            loadInfo.parPrefabs.Add(item);
            this.AnalyseSkillMarkParticleSkin(ref loadInfo, str);
        }
    }
예제 #27
0
 public void BuildAreaTrigger(ref ActorPreloadTab loadInfo)
 {
     AreaTrigger[] triggerArray = UnityEngine.Object.FindObjectsOfType <AreaTrigger>();
     if ((triggerArray != null) && (triggerArray.Length != 0))
     {
         for (int i = 0; i < triggerArray.Length; i++)
         {
             AreaTrigger trigger = triggerArray[i];
             this.AnalyseSkillCombine(ref loadInfo, trigger.BuffID);
             this.AnalyseSkillCombine(ref loadInfo, trigger.UpdateBuffID);
             this.AnalyseSkillCombine(ref loadInfo, trigger.LeaveBuffID);
         }
     }
 }
예제 #28
0
 public void AnalyseSkillCombine(ref ActorPreloadTab loadInfo, int combineId)
 {
     if (combineId > 0)
     {
         ResSkillCombineCfgInfo dataByKey = GameDataMgr.skillCombineDatabin.GetDataByKey(combineId);
         if (dataByKey != null)
         {
             AssetLoadBase item = new AssetLoadBase {
                 assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szPrefab)
             };
             string checkerKey = this.GetCheckerKey(item.assetPath, loadInfo.MarkID);
             if (!this.ageCheckerSet.ContainsKey(checkerKey))
             {
                 loadInfo.ageActions.Add(item);
                 this.ageCheckerSet.Add(checkerKey, true);
             }
             if ((dataByKey.astSkillFuncInfo != null) && (dataByKey.astSkillFuncInfo.Length > 0))
             {
                 for (int i = 0; i < dataByKey.astSkillFuncInfo.Length; i++)
                 {
                     ResDT_SkillFunc func = dataByKey.astSkillFuncInfo[i];
                     if (((((func.dwSkillFuncType == 0x1c) || (func.dwSkillFuncType == 0x21)) || ((func.dwSkillFuncType == 0x36) || (func.dwSkillFuncType == 0x37))) && (((func.astSkillFuncParam != null) && (func.astSkillFuncParam.Length != 0)) && (func.astSkillFuncParam[0] != null))) && (func.astSkillFuncParam[0].iParam > 0))
                     {
                         int iParam = func.astSkillFuncParam[0].iParam;
                         if (func.dwSkillFuncType == 0x1c)
                         {
                             this.AnalyseSkillMark(ref loadInfo, iParam);
                         }
                         else if (func.dwSkillFuncType == 0x21)
                         {
                             if (combineId != iParam)
                             {
                                 this.AnalyseSkillCombine(ref loadInfo, iParam);
                             }
                         }
                         else if (func.dwSkillFuncType == 0x36)
                         {
                             this.AnalyseSkillCombine(ref loadInfo, iParam);
                         }
                         else if (func.dwSkillFuncType == 0x37)
                         {
                             this.AnalyseSkill(ref loadInfo, iParam);
                         }
                     }
                 }
             }
         }
     }
 }
예제 #29
0
 public void PreLoadResource(TriggerActionWrapper triggerActionWrapper, ref ActorPreloadTab loadInfo, LoaderHelper loadHelper)
 {
     if (triggerActionWrapper != null)
     {
         ShenFuInfo dataByKey = GameDataMgr.shenfuBin.GetDataByKey((long)triggerActionWrapper.UpdateUniqueId);
         if (dataByKey != null)
         {
             AssetLoadBase item = new AssetLoadBase {
                 assetPath = StringHelper.UTF8BytesToString(ref dataByKey.szShenFuResPath)
             };
             loadInfo.mesPrefabs.Add(item);
             loadHelper.AnalyseSkillCombine(ref loadInfo, dataByKey.iBufId);
         }
     }
 }
예제 #30
0
 public void BuildCommonSpawnPoints(ref ActorPreloadTab loadInfo)
 {
     CommonSpawnPoint[] pointArray = UnityEngine.Object.FindObjectsOfType <CommonSpawnPoint>();
     if ((pointArray != null) && (pointArray.Length != 0))
     {
         for (int i = 0; i < pointArray.Length; i++)
         {
             CommonSpawnPoint point = pointArray[i];
             if (point != null)
             {
                 point.PreLoadResource(ref loadInfo, this);
             }
         }
     }
 }