| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186 |
- local CfgMgr = class("CfgMgr")
- local function CfgSort(a,b)
- return a.Id < b.Id
- end
- local function NumSort(a,b)
- return a < b
- end
- function CfgMgr:ctor()
- self.UICfg = InternalRequire("UICfg")
- self.RoleCfg = InternalRequire("RoleCfg")
- self.ParterCfg = InternalRequire("ParterCfg")
- self.NpcCfg = InternalRequire("NpcCfg")
- self.NatureCfg = InternalRequire("NatureCfg")
- self.JobCfg = InternalRequire("JobCfg")
- self.JobExpCfg = InternalRequire("JobExpCfg")
- self.ParterProgressCfg = InternalRequire("ParterProgressCfg")
- self.ParterAttributeCfg = InternalRequire("ParterAttributeCfg")
- self.QualityPointCfg = InternalRequire("QualityPointCfg")
- self.ItemCfg = InternalRequire("ItemCfg")
- self.EquipCfg = InternalRequire("EquipCfg")
- self.EquipSuitCfg = InternalRequire("EquipSuitNewCfg")
- self.FightPowerCfg = InternalRequire("FightCfg")
- self.SkillCfg = InternalRequire("SkillCfg")
- self.SkillLvCfg = InternalRequire("SkillLvCfg")
- -- self.PassiveSkillCfg = InternalRequire("PassiveSkillCfg")
- self.SkillTreeCfg = InternalRequire("SkillTreeCfg")
- self.ParterSkillTreeCfg = InternalRequire("ParterSkillTreeCfg")
- self.SkillSlotCfg = InternalRequire("SkillSlotCfg")
- self.SkillUpEffectCfg = InternalRequire("SkillUpEffectCfg")
- self.SkillShowCfg = InternalRequire("SkillShowCfg")
- self.MarkCfg = InternalRequire('MarkCfg')
- self.AvatarCfg = InternalRequire("AvatarCfg")
- self.EquipRefineCfg = InternalRequire("EquipRefineCfg")
- self.CardUnlockCfg = InternalRequire("CardUnlockCfg")
- self.CardCfg = InternalRequire("CardCfg")
- self.RoleAvatarCfg = InternalRequire('RoleAvatarCfg')
- self.FashionCfg = InternalRequire("FashionCfg")
- self.FashionPaperCfg = InternalRequire("FashionPaperCfg")
- self.CreateHairCfg = InternalRequire("CreateHairCfg")
- self.CreateHairColorCfg = InternalRequire("CreateHairColourCfg")
- self.CreateEyeCfg = InternalRequire("CreateEyeCfg")
- self.CreateHeadwearCfg = InternalRequire("CreateHeadwear")
- self.RoleAttributeCfg = InternalRequire("RoleAttributeCfg")
- self.UIJumpCfg = InternalRequire("UIJumpCfg")
- self.TargetTaskCfg = InternalRequire("TargetTaskCfg")
- self.MapCfg = InternalRequire("MapCfg")
- self.QuickBattleCostCfg = InternalRequire("QuickBattleCostCfg")
- self.HeadPortraitCfg = InternalRequire("HeadPortraitCfg")
- self.ConditionCfg = InternalRequire("ConditionCfg")
- self.LevelCfg = InternalRequire("LevelCfg")
- self.WorldBossCfg = InternalRequire("WorldBossCfg")
- self.WorldBossChangePlayCfg = InternalRequire("WorldBossChangePlayCfg")
- self.ArenaRewardCfg = InternalRequire("ArenaRewardCfg")
- self.RobotCfg = InternalRequire("RobotCfg")
- self.ArenaLevelCfg = InternalRequire("ArenaLevelCfg")
- self.MailCfg = InternalRequire("MailCfg")
- self.CardReset = InternalRequire("CardReset")
- self.UIFuncUnLockCfg = InternalRequire("UIFuncUnLockCfg")
- self.CompetitionCfg = InternalRequire("CompetitionCfg")
- self.StoryCfg = InternalRequire("StoryCfg")
- self.StroyPerformCfg = InternalRequire("StroyPerformCfg")
- self.StoryChapterCfg = InternalRequire('StoryChapterCfg')
- self.StorySectionCfg = InternalRequire('StorySectionCfg')
- self.LoadingCfg = InternalRequire("LoadingCfg")
- self.NoticeCfg = InternalRequire("NoticeCfg")
- self.EmojiCfg = InternalRequire("EmojiCfg")
- self.UIRedPointCfg = InternalRequire("UIRedPointCfg")
- self.ShopTypeCfg = InternalRequire('ShopTypeCfg')
- self.ShopCfg = InternalRequire("ShopCfg")
- self.RuneShopMonthCardCfg = InternalRequire('RuneShopMonthCardCfg')
- self.RuneShopGiftsCfg = InternalRequire('RuneShopGiftsCfg')
- self.RuneShopLimitCfg = InternalRequire('RuneShopLimitCfg')
- self.SignInCfg = InternalRequire("SignInCfg");
- self.ForceGuideCfg = InternalRequire("ForceGuideCfg");
- self.GMCfg = InternalRequire("GMCfg");
- self.MissionCfg = InternalRequire("MissionCfg");
- self.LineMissionCfg = InternalRequire("LineMissionCfg");
- self.ActRewardCfg = InternalRequire("ActRewardCfg");
- self.ClimbingTowerCfg = InternalRequire("ClimbingTowerCfg");
- self.EvilCfg = InternalRequire("EvilCfg");
- self.CardIdentification = InternalRequire("CardIdentification");
- self.HeadFrameCfg = InternalRequire("HeadFrameCfg");
- self.GuildBadgeCfg = InternalRequire('GuildBadgeCfg')
- self.GuildLvCfg = InternalRequire('GuildLvCfg')
- self.GuildHuntBossCfg = InternalRequire('GuildBossCfg')
- self.GuildHuntBossRewardCfg = InternalRequire('GuildBossRewardCfg')
- self.PetCfg = InternalRequire('PetCfg')
- self.PetExpCfg = InternalRequire('PetExpCfg')
- self.PetProgressCfg = InternalRequire('PetProgressCfg')
- self.BattleFailedTipsCfg = InternalRequire("BattleFailedTipsCfg")
- self.PetpartnerCfg = InternalRequire("PetpartnerCfg")
- self.ExpeditionCfg = InternalRequire("ExpeditionCfg")
- self.ExpeditionBuffCfg = InternalRequire("ExpeditionBuffCfg")
- self.ExpeditionBuffDropCfg = InternalRequire("ExpeditionBuffDropCfg")
- self.ActivityTaskCfg = InternalRequire("ActivitiesTaskCfg")
- self.ActivitiesCfg = InternalRequire("ActivitiesCfg")
- self.FortnightDaysCfg = InternalRequire("ActivitiesFortnightDaysCfg")
- self.FortnightOnlineCfg = InternalRequire("ActivitiesFortnightOnlineCfg")
- self.ActivitiesCollectionCfg = InternalRequire("ActivitiesCollectionCfg")
- self.ActivityRewardCfg = InternalRequire("ActivitiesRewardCfg")
- self.FirstChargeCfg = InternalRequire('ActivitiesFirstChargeCfg')
- self.SummonCfg = InternalRequire('SummonCfg')
- self.LuckyEggCfg = InternalRequire('BTSmashEggsCfg')
- self.VipCfg = InternalRequire('VipCfg')
- self.InvitationTaskCfg = InternalRequire('InvitationTaskCfg')
- self.ActivitiesTiredChargeCfg = InternalRequire('ActivitiesTiredChargeCfg')
- self.ActivitiesDiscountsCfg = InternalRequire('ActivitiesDiscountsCfg')
- self.HundredDojoCfg = InternalRequire('HundredDojoCfg')
- self.RushListCfg = InternalRequire('RushListCfg')
- self.RuneShopRankTowerCfg = InternalRequire('RuneShopRankTowerCfg')
- self.RuneShopRankArenaCfg = InternalRequire('RuneShopRankArenaCfg')
- self.RuneShopRankMapCfg = InternalRequire('RuneShopRankMapCfg')
- self.RuneShopRankPetCfg = InternalRequire('RuneShopRankPetCfg')
- self.RuneShopRankSkillCfg = InternalRequire('RuneShopRankSkillCfg')
- self.RuneShopRankAidouluCfg = InternalRequire('RuneShopRankAidouluCfg')
- self.RuneShopGuildBattleCfg = InternalRequire('RuneShopGuildBattleCfg')
- self.RushListTargetCfg = InternalRequire('RushListTargetCfg')
- self.KeepSakeCfg = InternalRequire('KeepSakeCfg')
- self.CardSuitNewCfg = InternalRequire('CardSuitNewCfg')
- self.FightCfg = InternalRequire('FightCfg')
- self.FashionSuitCfg = InternalRequire('FashionSuitCfg')
- self.FashionLevelUp = InternalRequire('FashionLevelUp')
- self.CompetitionPrizeWheelCfg = InternalRequire("CompetitionPrizeWheelCfg")
- self.OnlineRewardsCfg = InternalRequire("OnlineRewardsCfg")
- self.SkillDemandCfg = InternalRequire("SkillDemandCfg") --获取技能升级消耗列表
- self.SkillSuitNewCfg = InternalRequire("SkillSuitNewCfg")
- self.PresspointPvPCfg = InternalRequire("PresspointPvPCfg")
- self.ActivityRoulettelCfg = InternalRequire("ActivityRoulettelCfg")
- self.DesignationCfg = InternalRequire("DesignationCfg") --称号数据表
- self.GuildDemonCfg = InternalRequire("GuildDemonCfg")
- self.CompetitionAidouluCfg = InternalRequire("CompetitionAidouluCfg") --偶像祭宝奖励箱表
- self.LevelDifficultCfg = InternalRequire("LevelDifficultCfg")
- self.LevelDebuffCfg = InternalRequire("LevelDebuffCfg")
- self.LevelEnemyAttributeAdditionCfg = InternalRequire("LevelEnemyAttributeAddition")--LevelEnemyAttributeAddition
- self.HardMissionCfg = InternalRequire("HardMissionCfg")
- self.YuanHangTrialRankCfg = InternalRequire("YuanHangTrialRankCfg")
- self.ActivitiesTiredChargeCfg_new = self:ActivitiesTiredChargeCfg_CreatNewCfg()
- end
- -- function CfgMgr:GetEvilLevelCfg(id)
- -- return self.EvilLevelCfg[id]
- -- end
- function CfgMgr:GetGuildDemonCfgCfgById(id)
- return self.GuildDemonCfg[id]
- end
- function CfgMgr:GetWishCfgById(id)
- if not self.WishCfg then
- self.WishCfg = InternalRequire("WishCfg") --许愿表
- end
- return self.WishCfg[id]
- end
- function CfgMgr:GetPurseShopCfgById(id)
- if not self.PurseShopCfg then
- self.PurseShopCfg = InternalRequire("PurseShopCfg")
- end
- return self.PurseShopCfg[id]
- end
- function CfgMgr:GetAidouluCfg()
- return self.CompetitionAidouluCfg
- end
- function CfgMgr:GetBoliShopCfg()
- if not self.BoliShopCfg then
- self.BoliShopCfg = require("BoliShopCfg")
- end
- return self.BoliShopCfg
- end
- function CfgMgr:GetBoliShopCfgById(id)
- if not self.BoliShopCfg then
- self.BoliShopCfg = require("BoliShopCfg")
- end
- return self.BoliShopCfg[id]
- end
- function CfgMgr:GetBoliVipCfg()
- if not self.BoliVipCfg then
- self.BoliVipCfg = require("BoliVipCfg")
- end
- return self.BoliVipCfg
- end
- function CfgMgr:GetBoLiVipCfgById(id)
- if not self.BoliVipCfg then
- self.BoliVipCfg = require("BoliVipCfg")
- end
- return self.BoliVipCfg[id]
- end
- function CfgMgr:GetAidouluCfgLength()
- return self.CompetitionAidouluCfg and # self.CompetitionAidouluCfg or 0
- end
- function CfgMgr:GetActivitySignDataById(id)
- if not self.ActivitiesSignInCfg then
- self.ActivitiesSignInCfg = InternalRequire("ActivitiesSignInCfg") --暑期活动签到数据表
- self.ActivitiesSignDatas = {}
- for k, v in pairs(self.ActivitiesSignInCfg) do
- if not self.ActivitiesSignDatas[v.ActivitiesId] then
- self.ActivitiesSignDatas[v.ActivitiesId] = {}
- end
- table.insert(self.ActivitiesSignDatas[v.ActivitiesId],v)
- end
- for k, v in pairs(self.ActivitiesSignDatas) do
- table.sort(v,function (a,b)
- return a.Day < b.Day
- end)
- end
- self.ActivitiesSignInCfg = nil
- end
- return self.ActivitiesSignDatas and self.ActivitiesSignDatas[id] or {}
- end
- function CfgMgr:GetGuildDemonCfg()
- return self.GuildDemonCfg
- end
- function CfgMgr:GetDesignationCfg()
- return self.DesignationCfg
- end
- function CfgMgr:GetDesignationCfgById(id)
- return self.DesignationCfg[id]
- end
- function CfgMgr:GetSkillDemandCfgUpGradeCostById(id)
- return self.SkillDemandCfg[id] and self.SkillDemandCfg[id].LvupCost or nil
- end
- --获取技能升级等级需求列表
- function CfgMgr:GetSkillDemandCfgUpGradeLevelById(id)
- return self.SkillDemandCfg[id] and self.SkillDemandCfg[id].LvupDemand or nil
- end
- function CfgMgr:GetCompetitionDevineCfgById(id)
- if not self.CompetitionDevineCfg then
- self.CompetitionDevineCfg = require("CompetitionDevineCfg")
- end
- return self.CompetitionDevineCfg[id]
- end
- function CfgMgr:GetFirstChargeCfgById(id)
- return self.FirstChargeCfg[id]
- end
- function CfgMgr:GetActivityRewardCfg()
- return self.ActivityRewardCfg
- end
- function CfgMgr:GetActivityTaskCfgById(id)
- return self.ActivityTaskCfg[id]
- end
- function CfgMgr:GetActivityCfg(id)
- return self.ActivitiesCfg[id]
- end
- function CfgMgr:GetActivities()
- return self.ActivitiesCfg
- end
- function CfgMgr:GetFortnightDaysCfg()
- return self.FortnightDaysCfg
- end
- function CfgMgr:GetFortnightOnlineCfg(actId)
- local list = {}
- for _,v in pairs(self.FortnightOnlineCfg) do
- if v.ActivitiesId == actId then
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetExpeditionBossCfg(BoosId)
- for _,v in pairs(self.ExpeditionBuffDropCfg) do
- if v.BossID == BoosId then
- return v
- end
- end
- end
- function CfgMgr:GetActivitiesCollectionCfg(actId)
- local list = {}
- for _,v in pairs(self.ActivitiesCollectionCfg) do
- if v.ActivitiesId == actId then
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetActivitiesPetExchangeCfg(actId)
- if not self.ActivitiesPetExchangeCfg then
- self.ActivitiesPetExchangeCfg = require("ActivitiesPetExchangeCfg")
- end
- local list = {}
- for _,v in pairs(self.ActivitiesPetExchangeCfg) do
- if v.ActivitiesId == actId then
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetActivitiesPetExchangeCfgById(id)
- if not self.ActivitiesPetExchangeCfg then
- self.ActivitiesPetExchangeCfg = require("ActivitiesPetExchangeCfg")
- end
- return self.ActivitiesPetExchangeCfg[id]
- end
- function CfgMgr:GetActivitiesCollectionCfgById(id)
- return self.ActivitiesCollectionCfg[id]
- end
- function CfgMgr:GetExpeditionCfgByTypeAndLevelId(type,levelId)
- return self.ExpeditionCfg[type * 1000 + levelId]
- end
- function CfgMgr:GetExpeditionBuffCfgById(id)
- return self.ExpeditionBuffCfg[id]
- end
- function CfgMgr:GetBattleFailedTipsCfg()
- return self.BattleFailedTipsCfg
- end
- function CfgMgr:GetEvilCfgByLevel(level)
- return self.EvilCfg[level]
- end
- function CfgMgr:GetUIData(id)
- return self.UICfg[id]
- end
- function CfgMgr:GetRoleDataById(id)
- return self.RoleCfg[id]
- end
- function CfgMgr:GetAllPartnerDatas()
- return self.ParterCfg
- end
- function CfgMgr:GetPartnerDataById(id)
- return self.ParterCfg[id]
- end
- function CfgMgr:GetPartnerDataByJobId(id)
- for _,v in pairs(self.ParterCfg) do
- if v.JobType == id then
- return v
- end
- end
- return
- end
- function CfgMgr:GetOriPartnerDatas()
- local list
- for _,v in pairs(self.ParterCfg) do
- if v.JobStage == 1 then
- if list == nil then
- list = {}
- end
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetOriPartnerDataByAdvenceId(configId)
- local advenceData = self.ParterCfg[configId]
- if advenceData == nil then return end
- for _,v in pairs(self.ParterCfg) do
- if v.JobStage == 1 and v.PostId == advenceData.PostId then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetOriPartnerDataByPostId(slot)
- for _,v in pairs(self.ParterCfg) do
- if v.JobStage == 1 and v.PostId == slot then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetPartnerCfgDataByJobType(jobType)
- for _,v in pairs(self.ParterCfg) do
- if v.JobType == jobType then
- return v.Name, v.NameColour
- end
- end
- return
- end
- function CfgMgr:GetPartnerPostIdByJobType(jobType)
- for _,v in pairs(self.ParterCfg) do
- if v.JobType == jobType then
- return v.PostId
- end
- end
- return 0
- end
- function CfgMgr:GetPartnerCfgCount()
- return CommonUtil.GetTableCount(self.ParterCfg)
- end
- function CfgMgr:GetNpcCfgById(id)
- return self.NpcCfg[id]
- end
- function CfgMgr:GetNatureDataById(id)
- return self.NatureCfg[id]
- end
- function CfgMgr:GetAllNatureDatas()
- return self.NatureCfg
- end
- function CfgMgr:GetJobDataById(id)
- return self.JobCfg[id]
- end
- --- 使用职业特征获得JobData
- function CfgMgr:GetJobDataByFeature(jobType, jobBranch, jobStage)
- if not self.JobCfgTree then
- -- jobCfg数据拆解成树,方便查找
- local JobCfgTree = {}
- for _, jobData in pairs(self.JobCfg) do
- local itemJobType = jobData.JobType
- local itemJobBranch = jobData.JobBranch
- local itemJobStage = jobData.JobStage
- local jobTypeTree = JobCfgTree[itemJobType]
- if not jobTypeTree then
- jobTypeTree = {}
- JobCfgTree[itemJobType] = jobTypeTree
- end
- local jobBranchTree = jobTypeTree[itemJobBranch]
- if not jobBranchTree then
- jobBranchTree = {}
- jobTypeTree[itemJobBranch] = jobBranchTree
- end
- jobBranchTree[itemJobStage] = jobData
- end
- self.JobCfgTree = JobCfgTree
- end
- local item = self.JobCfgTree[jobType]
- if item then
- item = item[jobBranch]
- if item then
- return item[jobStage]
- end
- end
- return nil
- end
- function CfgMgr:GetParterProgressById(id)
- --local index = 0
- --while self.ParterProgressCfg[id] == nil do
- -- index = index + 1
- -- if index == 6 then
- -- return nil
- -- end
- -- local cfgData = self:GetPartnerDataById(id)
- -- if cfgData == nil then
- -- LogError("PartnerCfg "..id.." not exist")
- -- return nil
- -- else
- -- if cfgData.BeforeJobId > 0 then
- -- id = cfgData.BeforeJobId
- -- else
- -- break
- -- end
- -- end
- --end
- return self.ParterProgressCfg[id]
- end
- function CfgMgr:GetParterAttributeByLv(lv)
- return self.ParterAttributeCfg[lv]
- end
- function CfgMgr:GetHeroQualityPointByLv(lv)
- local qcfg = self.QualityPointCfg[lv]
- if qcfg == nil then
- local id = #self.QualityPointCfg + 1
-
- --LogError("ID = "..id)
- qcfg = {
- ['count']=lv,
- ['cost']= math.floor((lv - id) / 10 + 62),
- }
- end
- return qcfg
- end
- function CfgMgr:GetItemById(id)
- return self.ItemCfg[id]
- end
- function CfgMgr:GetEquipById(id)
- return self.EquipCfg[id]
- end
- function CfgMgr:GetSameSuitEquipsBySuitId(suitId, jobType)
- local list
- for _,v in pairs(self.EquipCfg) do
- if v.Suit == suitId and CommonUtil.EleInTable(jobType, v.JobType) then
- if list == nil then
- list = {}
- end
- list[v.Type] = v
- end
- end
- return list
- end
- function CfgMgr:GetLanguageValueByKey(key, ...)
- return I18N.SetLanguageValue(key, ...)
- end
- function CfgMgr:GetAllEquipDatasByTypeAndJob(type, jobType, sortRule)
- local data1 = nil
- if sortRule == nil then
- sortRule = Enum.TableSortRule.Up
- end
- local list = {}
- for _, v in pairs(self.EquipCfg) do
- if v.Type == type then
- if v.EquipLevel > 1 then
- if jobType == nil then
- list[#list + 1] = v
- elseif CommonUtil.EleInTable(jobType, v.JobType) then
- list[#list + 1] = v
- end
- else
- data1 = v
- end
- end
- end
- CommonUtil.ArraySortSelections(list, sortRule, "Id")
- return list, data1
- end
- function CfgMgr:GetAllEquipDatasByTypeAndJob1(type, jobType, sortRule)
- if sortRule == nil then
- sortRule = Enum.TableSortRule.Up
- end
- local list = {}
- for _, v in pairs(self.EquipCfg) do
- if v.Type == type then
- if jobType == nil then
- list[#list + 1] = v
- elseif CommonUtil.EleInTable(jobType, v.JobType) then
- list[#list + 1] = v
- end
- end
- end
- CommonUtil.ArraySortSelections(list, sortRule, "Id")
- return list
- end
- function CfgMgr:GetEquipSuitById(id)
- return self.EquipSuitCfg[id]
- end
- function CfgMgr:GetFightPowerById(id)
- return self.FightPowerCfg[id]
- end
- function CfgMgr:GetSkillCfgById(id)
- return self.SkillCfg[id]
- end
- function CfgMgr:GetSkillLevelCfgById(id)
- return self.SkillLvCfg[id]
- end
- function CfgMgr:GetPassiveSkillCfgById(id)
- -- return self.PassiveSkillCfg[id]
- return nil
- end
- function CfgMgr:GetPassiveSkillCfg()
- -- return self.PassiveSkillCfg
- return nil
- end
- function CfgMgr:GetSkillCfgByType(skillType, skillId, skillLv)
- if not skillId then return nil end
- if skillType == Enum.SkillType.Active then
- -- local skillCfgId = CommonUtil.GetSkillCfgIdByIdAndLv(skillId, skillLv or 1)
- return self:GetSkillCfgById(skillId)
- elseif skillType == Enum.SkillType.Passive then
- return self:GetPassiveSkillCfgById(skillId)
- else
- LogError("Unkown Skill Type " .. tostring(skillType))
- return nil
- end
- end
- --- 使用职业特征获得对应的技能树
- function CfgMgr:GetSkillTreeByFeature(jobType, jobBranch, jobStage)
- if not self.SkillTreeMap then
- -- SkillTree数据拆解,方便查找
- local SkillTreeMap = {}
- for _, skillTreeData in pairs(self.SkillTreeCfg) do
- local itemJobType = skillTreeData.JobType
- local itemJobBranch = skillTreeData.JobBranch
- local itemJobStage = skillTreeData.JobStage
- local jobTypeTree = SkillTreeMap[itemJobType]
- if not jobTypeTree then
- jobTypeTree = {}
- SkillTreeMap[itemJobType] = jobTypeTree
- end
- local jobBranchTree = jobTypeTree[itemJobBranch]
- if not jobBranchTree then
- jobBranchTree = {}
- jobTypeTree[itemJobBranch] = jobBranchTree
- end
- local jobStageList = jobBranchTree[itemJobStage]
- if not jobStageList then
- jobStageList = {}
- jobBranchTree[itemJobStage] = jobStageList
- end
- if skillTreeData.beforeSkill == 0 then
- table.insert(jobStageList, skillTreeData)
- end
- end
- self.SkillTreeMap = SkillTreeMap
- end
- local item = self.SkillTreeMap[jobType]
- if item then
- item = item[jobBranch]
- if item then
- return item[jobStage]
- end
- end
- return nil
- end
- function CfgMgr:GetSkillTreeCfg()
- return self.SkillTreeCfg;
- end
- function CfgMgr:GetSkillTreeCfgById(id)
- return self.SkillTreeCfg[id]
- end
- --- 使用职业特征获得对应的技能树
- function CfgMgr:GetParterSkillTreeByFeature(jobType, parterId)
- if not self.ParterSkillTreeMap then
- -- SkillTree数据拆解,方便查找
- local ParterSkillTreeMap = {}
- for _, skillTreeData in pairs(self.ParterSkillTreeCfg) do
- local itemJobType = skillTreeData.JobType
- local itemParterID = skillTreeData.ParterID
- local jobTypeTree = ParterSkillTreeMap[itemJobType]
- if not jobTypeTree then
- jobTypeTree = {}
- ParterSkillTreeMap[itemJobType] = jobTypeTree
- end
- local jobList = jobTypeTree[itemParterID]
- if not jobList then
- jobList = {}
- jobTypeTree[itemParterID] = jobList
- end
- if skillTreeData.beforeSkill == 0 then
- table.insert(jobList, skillTreeData)
- end
- end
- self.ParterSkillTreeMap = ParterSkillTreeMap
- end
- local item = self.ParterSkillTreeMap[jobType]
- if item then
- return item[parterId]
- end
- return nil
- end
- function CfgMgr:GetParterSkillTreeCfg()
- return self.ParterSkillTreeCfg;
- end
- function CfgMgr:GetParterSkillTreeCfgById(id)
- return self.ParterSkillTreeCfg[id]
- end
- function CfgMgr:GetSkillSlotCfgById(id)
- return self.SkillSlotCfg[id]
- end
- function CfgMgr:GetSkillUpEffectCfgById(id)
- return self.SkillUpEffectCfg[id]
- end
- function CfgMgr:GetSkillShowCfgById(id)
- return self.SkillShowCfg[id]
- end
- function CfgMgr:GetMarkCfg()
- return self.MarkCfg
- end
- function CfgMgr:GetAvatarCfgById(id)
- return self.AvatarCfg[id]
- end
- function CfgMgr:GetEquipRefineDataByLv(lv)
- return self.EquipRefineCfg[lv]
- end
- function CfgMgr:GetEquipRefineCount()
- return #self.EquipRefineCfg
- end
- function CfgMgr:GetCardUnlockConditionById(id)
- return self.CardUnlockCfg[id]
- end
- function CfgMgr:GetCardDataById(id)
- return self.CardCfg[id]
- end
- function CfgMgr:GetRoleAvatarById(id)
- return self.RoleAvatarCfg[id]
- end
- function CfgMgr:GetFashionById(id)
- return self.FashionCfg[id]
- end
- function CfgMgr:GetFashionCfg()
- return self.FashionCfg
- end
- function CfgMgr:GetFashionPaperById(id)
- return self.FashionPaperCfg[id]
- end
- function CfgMgr:GetCreateHairById(id)
- return self.CreateHairCfg[id]
- end
- function CfgMgr:GetCreateHairCfg()
- return self.CreateHairCfg
- end
- function CfgMgr:GetCreateHairColorById(id)
- return self.CreateHairColorCfg[id]
- end
- function CfgMgr:GetCreateHairColorCfg()
- return self.CreateHairColorCfg
- end
- function CfgMgr:GetCreateEyeById(id)
- return self.CreateEyeCfg[id]
- end
- function CfgMgr:GetCreateEyeCfg()
- return self.CreateEyeCfg
- end
- function CfgMgr:GetCreateHeadwearById(id)
- return self.CreateHeadwearCfg[id]
- end
- function CfgMgr:GetCreateHeadwearCfg()
- return self.CreateHeadwearCfg
- end
- function CfgMgr:GetRoleExpData(lv)
- return self.RoleAttributeCfg[lv]
- end
- function CfgMgr:GetRoleMaxLv()
- return self.RoleAttributeCfg[#self.RoleAttributeCfg].BaseLv
- end
- function CfgMgr:GetUIJumpData(id)
- return self.UIJumpCfg[id]
- end
- function CfgMgr:GetMapData(id)
- return self.MapCfg[id]
- end
- function CfgMgr:GetLastJobs(id)
- local list = {}
- if not id and id <= 0 then return list end
- local data = self.JobCfg[id]
- if not data then return list end
- local beforeJobId = data.BeforeJobId
- data = self.JobCfg[beforeJobId]
- while (beforeJobId and beforeJobId > 0 and data) do
- -- 避免填错数据死循环
- for i = 1, #list do
- if list[i] == data then
- LogError("find last job Error, endless loop " .. data.Id)
- return list
- end
- end
- table.insert(list, 1, data)
- beforeJobId = data.BeforeJobId
- data = self.JobCfg[beforeJobId]
- end
- return list
- end
- function CfgMgr:GetNextJobs(id)
- local list = {}
- local data = self.JobCfg[id]
- if data == nil then return list end
- for i = 1, #data.AfterJobId do
- list[#list + 1] = self.JobCfg[data.AfterJobId[i]]
- end
- return list
- end
- function CfgMgr:GetSameStageJobs(id)
- local list = {}
- local data = self.JobCfg[id]
- if data == nil then return list end
- for _,v in pairs(self.JobCfg) do
- if data.JobStage == v.JobStage then
- list[#list + 1] = v
- end
- end
- table.sort(list, CfgSort)
- return list
- end
- function CfgMgr:GetParterLastJobs(id)
- local list = {}
- if not id and id <= 0 then return list end
- local data = self.ParterCfg[id]
- if not data then return list end
- local beforeJobId = data.BeforeJobId
- data = self.ParterCfg[beforeJobId]
- while (beforeJobId and beforeJobId > 0 and data) do
- -- 避免填错数据死循环
- for i = 1, #list do
- if list[i] == data then
- LogError("find last job Error, endless loop " .. data.Id)
- return list
- end
- end
- table.insert(list, 1, data)
- beforeJobId = data.BeforeJobId
- data = self.ParterCfg[beforeJobId]
- end
- return list
- end
- function CfgMgr:GetPartnerNextJobs(id)
- local list = {}
- local data = self.ParterCfg[id]
- if data == nil then return list end
- for i = 1, #data.AfterJobId do
- list[#list + 1] = self.ParterCfg[data.AfterJobId[i]]
- end
- return list
- end
- function CfgMgr:GetPartnerSameStageJobs(id)
- local list = {}
- local data = self.ParterCfg[id]
- if data == nil then return list end
- for _,v in pairs(self.ParterCfg) do
- if data.JobType == v.JobType and data.JobStage == v.JobStage then
- list[#list + 1] = v
- end
- end
- table.sort(list,function(a,b)
- return a.ParterId < b.ParterId
- end)
- return list
- end
- function CfgMgr:GetPartnerMapItemDataById(partnerId)
- for _,v in pairs(self.ItemCfg) do
- if v.ComposeItem ~= nil and v.ComposeItem[1] == partnerId then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetCurMaxJobExpByLvAndStep(lv, step)
- local data = self.JobExpCfg[lv]
- step = step + 1
- if data == nil then
- return 0
- end
- if data["expRequire"..step] == nil then
- return 0
- end
- return data["expRequire"..step]
- end
- function CfgMgr:GetTargetTaskDataById(id)
- return self.TargetTaskCfg[id]
- end
- function CfgMgr:GetAllRecruitTasks()
- local list = {}
- for _, v in pairs(self.TargetTaskCfg) do
- if v.TargetReward[1][1] == Enum.ItemIds.Recruit then
- list[#list + 1] = v
- end
- end
- table.sort(list, function (a,b)
- return a.TargetTaskId < b.TargetTaskId
- end)
- return list
- end
- function CfgMgr:LastTargetTaskId()
- local maxId = 1
- for k,_ in pairs(self.TargetTaskCfg) do
- if k > maxId then
- maxId = k
- end
- end
- return maxId
- end
- function CfgMgr:GetQuickBattleCost(id)
- return self.QuickBattleCostCfg[id]
- end
- function CfgMgr:GetHeadPortraitDataById(id)
- return self.HeadPortraitCfg[id]
- end
- function CfgMgr:GetHeadPortraitDatas()
- return self.HeadPortraitCfg
- end
- function CfgMgr:GetArenaLevelDatas()
- return self.ArenaLevelCfg
- end
- function CfgMgr:GetArenaLevelById(id)
- return self.ArenaLevelCfg[id]
- end
- function CfgMgr:GetArenaLevelDataByScore(score)
- local levelIcon, levelName
- local minNum = 100000
- for _,v in pairs(self.ArenaLevelCfg) do
- if score <= v.ArenaLevelScore and v.ArenaLevelScore < minNum then
- levelIcon = v.LevelIcon
- levelName = v.ArenaLevelName
- minNum = v.ArenaLevelScore
- end
- end
- return levelIcon, levelName
- end
- function CfgMgr:GetArenaRewardDatas()
- return self.ArenaRewardCfg
- end
- function CfgMgr:GetCondDataById(id)
- return self.ConditionCfg[id]
- end
- function CfgMgr:GetLevelDataById(id)
- return self.LevelCfg[id]
- end
- function CfgMgr:GetLevelDataByMapAndLevel(mapId, levelId)
- local id = mapId * 10000 + levelId
- return self.LevelCfg[id]
- end
- function CfgMgr:GetLevelUniIdByLevelId(levelId)
- for k,v in pairs(self.LevelCfg) do
- if v.LevelId == levelId then
- return v.Id
- end
- end
- return 0
- end
- function CfgMgr:CheckIsMaxLevelId(levelId)
- for k,v in pairs(self.LevelCfg) do
- if v.LevelId > levelId then
- return false
- end
- end
- return true
- end
- function CfgMgr:GetWorldBossDataById(id)
- return self.WorldBossCfg[id]
- end
- function CfgMgr:GetWorldPetBossDataById(id)
- return self.WorldBossChangePlayCfg[id]
- end
- function CfgMgr:GetRobotDataByCfgId(id)
- return self.RobotCfg[id]
- end
- function CfgMgr:GetMailDataByCfgId(id)
- return self.MailCfg[id]
- end
- function CfgMgr:GetCardResetDataByLevelAndType(lv,type)
- for _,v in pairs(self.CardReset) do
- if v.CardLv == lv and v.CardType == type then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetUIFuncUnLockCfgAllDatas()
- return self.UIFuncUnLockCfg
- end
- function CfgMgr:GetUIFuncUnLockCfgDataById(id)
- return self.UIFuncUnLockCfg[id]
- end
- function CfgMgr:GetUIFuncUnLockCfgNewAndNearLevelId(levelId)
- local newFuncs = {}
- local forceGuideList = {}
- local list = {}
- local levelTmp = 100000000
- for _,v in pairs(self.UIFuncUnLockCfg) do
- if v.PrePose == 0 then
- local result = true
- local newResult = true
- local isFuncLevel = false
- local isLevel = false
- if v.UnlockCond then
- if v.UnlockCond[1][1] == Enum.TaskType.Level_Battle_Count then
- if v.UnlockCond[1][2] == levelId then
- isFuncLevel = true
- newResult = true
- end
- if v.UnlockCond[1][2] <= levelTmp and v.UnlockCond[1][2] > levelId and v.NeedNotify then
- levelTmp = v.UnlockCond[1][2]
- isLevel = true
- result = false
- end
- end
- end
- --for _,v1 in pairs(v.UnlockConds) do
- -- local conditionData = ManagerContainer.CfgMgr:GetCondDataById(v1)
- -- if conditionData.Condition[1] == Enum.TaskType.Level_Battle_Count then
- -- if conditionData.Condition[2] == levelId then
- -- isFuncLevel = true
- -- local result1 = ConditionJudge:ConditionPassResult(v1)
- -- if not result1 then
- -- newResult = false
- -- end
- -- end
- -- if conditionData.Condition[2] <= levelTmp and conditionData.Condition[2] > levelId then
- -- levelTmp = conditionData.Condition[2]
- -- isLevel = true
- -- local result1 = ConditionJudge:ConditionPassResult(v1)
- -- if not result1 then
- -- result = false
- -- end
- -- end
- -- end
- --end
- if isFuncLevel and newResult then
- if v.NeedNotify then
- newFuncs[#newFuncs + 1] = v.Id
- end
- if v.ForceGuideGroup > 0 then
- forceGuideList[#forceGuideList + 1] = v.Id
- end
- end
- if isLevel and not result then
- if v.NeedNotify then
- if list[levelTmp] == nil then
- list[levelTmp] = {}
- end
- list[levelTmp][#list[levelTmp] + 1] = v.Id
- end
- end
- end
- end
- local tmpKey = 100000000
- local tmpVal = {}
- for k,v in pairs(list) do
- if k < tmpKey then
- tmpKey = k
- tmpVal = v
- end
- end
- table.sort(newFuncs, NumSort)
- table.sort(tmpVal, NumSort)
- return newFuncs, tmpVal, forceGuideList
- end
- function CfgMgr:GetUIFuncUnLockCfgDataByUIId(id)
- local list = {}
- for _,v in pairs(self.UIFuncUnLockCfg) do
- if v.UIId == id then
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetFirstEquipCfgId()
- local minId = 1000000
- for k,_ in pairs(self.EquipCfg) do
- if k < minId then
- minId = k
- end
- end
- if minId == 1000000 then return nil end
- return minId
- end
- function CfgMgr:GetCompetitionDataById(id)
- return self.CompetitionCfg[id]
- end
- function CfgMgr:GetCompetitionData()
- return self.CompetitionCfg
- end
- function CfgMgr:GetCompetitionDatasByType(competitionId)
- local list = {}
- for k,v in pairs(self.CompetitionCfg) do
- if v.CompetitionId == competitionId then
- list[#list + 1] = v
- end
- end
- table.sort(list, CfgSort)
- return list
- end
- function CfgMgr:GetAllSelectionCompetitionDatas()
- local list = nil
- for i = 1, #self.CompetitionCfg do
- if self.CompetitionCfg[i].CompetitionType == 2 then
- if list == nil then
- list = {}
- end
- list[#list + 1] = self.CompetitionCfg[i]
- end
- end
- if list ~= nil then
- table.sort(list, CfgSort)
- end
- return list
- end
- function CfgMgr:GetCompetitionDatasByRank(list, recruitId, rank)
- if list == nil then
- return
- end
- local selectionCompetition = list[recruitId]
- if selectionCompetition == nil then return end
- if selectionCompetition.CompetitionCondition then
- for k,v in pairs(selectionCompetition.CompetitionCondition) do
- if v[3] > 0 then
- if rank >= v[2] and rank <= v[3] then
- return selectionCompetition, k
- end
- else
- if rank >= v[2]then
- return selectionCompetition, k
- end
- end
- end
- end
- return
- end
- function CfgMgr:GetCompetitionTypeRange()
- local min = 1000
- local max = 0
- for _,v in pairs(self.CompetitionCfg) do
- if v.CompetitionType < min then
- min = v.CompetitionType
- end
- if v.CompetitionType > max then
- max = v.CompetitionType
- end
- end
- return min, max
- end
- function CfgMgr:GetStoryDataById(id)
- return self.StoryCfg[id]
- end
- function CfgMgr:GetAllStoryDatasByType(type)
- local list
- for _, v in pairs(self.StoryCfg) do
- if v.Condition ~= nil then
- if list == nil then
- list = {}
- end
- if v.Condition[1] == type then
- list[#list + 1] = v
- end
- end
- end
- return list
- end
- function CfgMgr:GetSameStoryGroupDatasById(id)
- local list
- local cfgData = self:GetStoryDataById(id)
- if cfgData.Group ~= nil then
- for _, v in pairs(cfgData.Group) do
- if list == nil then
- list = {}
- end
- local cfgData1 = self:GetStoryDataById(v)
- list[#list + 1] = cfgData1
- end
- end
- return list
- end
- function CfgMgr:GetStoryPerformDataById(id)
- local list = {}
- for k, v in pairs(self.StroyPerformCfg) do
- if v.StoryId == id then
- list[#list + 1] = v
- end
- end
- table.sort(list, CfgSort)
- return list
- end
- function CfgMgr:GetStoryChapterById(id)
- return self.StoryChapterCfg[id]
- end
- function CfgMgr:GetStorySectionById(id)
- return self.StorySectionCfg[id]
- end
- function CfgMgr:GetLoadingCfg(id)
- return self.LoadingCfg[id];
- end
- function CfgMgr:GetNoticeCfg(id)
- return self.NoticeCfg[id];
- end
- function CfgMgr:GetSignInCfg(id)
- return self.SignInCfg[id];
- end
- function CfgMgr:GetMaxSignDay()
- return #self.SignInCfg
- end
- function CfgMgr:GetNoticeCfgAll()
- return self.NoticeCfg;
- end
- function CfgMgr:GetShopTypeCfg()
- return self.ShopTypeCfg
- end
- function CfgMgr:GetShopTypeCfgById(id)
- return self.ShopTypeCfg[id]
- end
- --根据商品类型取商品表格中的数据
- function CfgMgr:GetShopCfgsByGoodsType(goodsType)
- if not self.ShopCfgMap then
- local ShopCfgMap = {}
- local itemShopCfgs, itemGoodsType
- for _, value in pairs(self.ShopCfg) do
- itemGoodsType = value.GoodsType
- itemShopCfgs = ShopCfgMap[itemGoodsType]
- if not itemShopCfgs then
- itemShopCfgs = {}
- ShopCfgMap[itemGoodsType] = itemShopCfgs
- end
- table.insert(itemShopCfgs, value)
- end
- -- 排序
- local SortSule = function(a, b)
- return a.SortId < b.SortId
- end
- for _, value in pairs(ShopCfgMap) do
- table.sort(value, SortSule)
- end
- self.ShopCfgMap = ShopCfgMap
- end
- return self.ShopCfgMap[goodsType]
- end
- function CfgMgr:GetShopCfgByGoodsId(goodsId)
- return self.ShopCfg[goodsId]
- end
- function CfgMgr:GetRuneShopCfgByFeature(runeShopType, runeShopSubType, id)
- if runeShopType == Enum.RuneShopType.MonthCard then
- return self.RuneShopMonthCardCfg[id]
- elseif runeShopType == Enum.RuneShopType.Gifts then
- local data = self.RuneShopGiftsCfg[id]
- if data and data.Type == runeShopSubType then
- return data
- else
- return nil
- end
- elseif runeShopType == Enum.RuneShopType.LimitTime then
- return self.RuneShopLimitCfg[id]
- elseif runeShopType == Enum.RuneShopType.RushTower then
- return self.RuneShopRankTowerCfg[id]
- elseif runeShopType == Enum.RuneShopType.RushArena then
- return self.RuneShopRankArenaCfg[id]
- elseif runeShopType == Enum.RuneShopType.RushMap then
- return self.RuneShopRankMapCfg[id]
- elseif runeShopType == Enum.RuneShopType.RushPet then
- return self.RuneShopRankPetCfg[id]
- elseif runeShopType == Enum.RuneShopType.GuildWar then
- return self.RuneShopGuildBattleCfg[id]
- elseif runeShopType == Enum.RuneShopType.RushSkill then
- return self.RuneShopRankSkillCfg[id]
- elseif runeShopType == Enum.RuneShopType.IdolShop then
- return self.RuneShopRankAidouluCfg[id]
- end
- return nil
- end
- function CfgMgr:GetEmojiCfg()
- return self.EmojiCfg
- end
- function CfgMgr:GetUIRedPointCfgDatas()
- return self.UIRedPointCfg
- end
- function CfgMgr:GetUIRedPointCfgDataByUIId(id)
- local list = {}
- for _,v in pairs(self.UIRedPointCfg) do
- if v.UIId == id then
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetForceGuideDatas()
- return self.ForceGuideCfg
- end
- function CfgMgr:GetForceGuideDataById(id)
- return self.ForceGuideCfg[id]
- end
- function CfgMgr:GetForceGuideGroupDatasById(groupId)
- local list = {}
- for i = 1, #self.ForceGuideCfg do
- if self.ForceGuideCfg[i].Group == groupId then
- list[#list + 1] = self.ForceGuideCfg[i]
- end
- end
- return list
- end
- function CfgMgr:GetGMCfg()
- return self.GMCfg;
- end
- function CfgMgr:GetMissionById(id)
- return self.MissionCfg[id];
- end
- function CfgMgr:GetLineMissionById(id)
- return self.LineMissionCfg[id];
- end
- function CfgMgr:GetClimbingTowerCfg()
- return self.ClimbingTowerCfg
- end
- function CfgMgr:GetClimbingTowerCfgById(id)
- return self.ClimbingTowerCfg[id]
- end
- -- function CfgMgr:GetSkillExpBattleCfgById(evilLevel)
- -- return self.SkillExpBattleCfg[evilLevel]
- -- end
- function CfgMgr:GetActRewardCfg()
- return self.ActRewardCfg;
- end
- -- function CfgMgr:GetRefreshCDCost(leftCD)
- -- if self.EvilRefreshCDCostCfg == nil then
- -- return 0
- -- end
- -- for i=1, #self.EvilRefreshCDCostCfg do
- -- if leftCD <= self.EvilRefreshCDCostCfg[i].Time then
- -- return self.EvilRefreshCDCostCfg[i].Cost[1][2]
- -- end
- -- end
- -- return 0
- -- end
- function CfgMgr:GetGuildBadgeCfg()
- return self.GuildBadgeCfg
- end
- function CfgMgr:GetGuildBadgeCfgById(id)
- return self.GuildBadgeCfg[id]
- end
- function CfgMgr:GetGuildLvCfg()
- return self.GuildLvCfg
- end
- function CfgMgr:GetGuildLvCfgById(id)
- return self.GuildLvCfg[id]
- end
- function CfgMgr:GetGuildHuntBossCfg()
- return self.GuildHuntBossCfg
- end
- function CfgMgr:GetGuildHuntBossCfgById(id)
- return self.GuildHuntBossCfg[id]
- end
- function CfgMgr:GetGuildHuntBossAwardCfgById(id)
- return self.GuildHuntBossRewardCfg[id]
- end
- function CfgMgr:GetCardIdentificationDatasByQuality(quality)
- local list
- for _,v in pairs(self.CardIdentification) do
- if v.CardQuality == quality then
- if not list then
- list = {}
- end
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetCardIdentificationDatasById(id)
- return self.CardIdentification[id]
- end
- function CfgMgr:GetHeadFrameById(_id)
- return self.HeadFrameCfg[_id]
- end
- function CfgMgr:GetAllPetDatas()
- return self.PetCfg
- end
- function CfgMgr:GetPetDataById(id)
- return self.PetCfg[id]
- end
- function CfgMgr:GetPetDatasByQuality(quality)
- local list
- for _,v in pairs(self.PetCfg) do
- if v.Quality == quality then
- if list == nil then
- list = {}
- end
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetPetProgressCfgDataById(id)
- return self.PetProgressCfg[id]
- end
- function CfgMgr:GetPetExpCfgMaxData()
- return self.PetExpCfg[#self.PetExpCfg].petLevel
- end
- function CfgMgr:GetPetExpCfgDataById(level)
- return self.PetExpCfg[level]
- end
- function CfgMgr:GetAllHeadFrameData()
- return self.HeadFrameCfg;
- end
- function CfgMgr:GetAllPetPartnerDatas()
- return self.PetpartnerCfg;
- end
- function CfgMgr:GetPetPartnerDataById(cfgId)
- return self.PetpartnerCfg[cfgId];
- end
- function CfgMgr:GetAllSummonCfg()
- return self.SummonCfg
- end
- function CfgMgr:GetSummonCfgById(id)
- return self.SummonCfg[id]
- end
- function CfgMgr:GetLuckyEggCfg()
- return self.LuckyEggCfg
- end
- function CfgMgr:GetLuckyEggCfgById(id)
- return self.LuckyEggCfg[id]
- end
- function CfgMgr:GetLuckyEggCfgByActId(actID)
- if self.LuckyEggCfg == nil then
- return
- end
- for k,v in pairs(self.LuckyEggCfg) do
- if v.ActivitiesId == actID then
- return v
- end
- end
- end
- function CfgMgr:GetLuckyEggCfgByType(type)
- if self.LuckyEggCfg == nil then
- return
- end
- for k,v in pairs(self.LuckyEggCfg) do
- if v.Type == type then
- return v
- end
- end
- end
- function CfgMgr:GetAllVipCfg()
- if Constant.OpenPay then
- return self.VipCfg
- end
- return nil
- end
- function CfgMgr:GetVipCfgById(cfgId)
- if Constant.OpenPay then
- return self.VipCfg[cfgId]
- end
- return nil
- end
- function CfgMgr:GetAllInvitationTaskDatas()
- return self.InvitationTaskCfg
- end
- function CfgMgr:GetInvitationTaskDataByCfgId(cfgId)
- return self.InvitationTaskCfg[cfgId]
- end
- function CfgMgr:GetNextActivitiesTiredChargeCfgById(index, day)
- local closestDay = self.ActivitiesTiredChargeCfg[1].Day
- local closestCfgData = self.ActivitiesTiredChargeCfg[1]
- for i = 1, #self.ActivitiesTiredChargeCfg do
- if self.ActivitiesTiredChargeCfg[i].Day <= day and self.ActivitiesTiredChargeCfg[i].Day > closestDay then
- closestDay = self.ActivitiesTiredChargeCfg[i].Day
- closestCfgData = self.ActivitiesTiredChargeCfg[i]
- end
- end
- --LogError("Day = " .. closestDay.." Index = " .. closestCfgData.Index)
- for i = closestCfgData.Id, #self.ActivitiesTiredChargeCfg do
- if self.ActivitiesTiredChargeCfg[i].Index > index then
- return self.ActivitiesTiredChargeCfg[i]
- end
- end
- return nil
- end
- function CfgMgr:ActivitiesTiredChargeCfg_CreatNewCfg()
- local ActivitiesTiredChargeCfg_new = {}
- for i =1 ,#self.ActivitiesTiredChargeCfg do
- local curcfg = self.ActivitiesTiredChargeCfg[i]
- local dayCfg = ActivitiesTiredChargeCfg_new[curcfg.Day]
- if dayCfg == nil then
- dayCfg = {}
- table.insert(dayCfg,curcfg)
- ActivitiesTiredChargeCfg_new[curcfg.Day] = dayCfg
- -- LogError("添加 Table = " ..Inspect(dayCfg))
- -- LogError("添加 到ActivitiesTiredChargeCfg_new = " ..Inspect(ActivitiesTiredChargeCfg_new))
- else
- table.insert(dayCfg,curcfg)
- end
- end
- for _, v in pairs(ActivitiesTiredChargeCfg_new) do
- table.sort(v,function (a,b)
- return a.Index < b.Index
- end)
- -- for _, vv in pairs(v) do
- -- LogError("index = " .. vv.Index)
- -- end
- end
- return ActivitiesTiredChargeCfg_new
- end
- function CfgMgr:GetNextActivitiesTiredChargeCfgById_New(index, day)
- local curDayCfg = self.ActivitiesTiredChargeCfg_new[1]
- local cloaseDay = 1
- for K_day, daycfgs in pairs(self.ActivitiesTiredChargeCfg_new) do
-
- if K_day <= day and K_day > cloaseDay then
- cloaseDay = K_day
- end
- end
- curDayCfg = self.ActivitiesTiredChargeCfg_new[cloaseDay]
-
- --LogError("Day = " .. cloaseDay.." Index = " .. curDayCfg[1].Index)
-
- for _, v in pairs(curDayCfg) do
- --LogError("v.index = " .. v.Index.." index = " .. index)
- if v.Index > index then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetActivitiesTiredChargeCfgById_New(index, day)
- local curDayCfg = self.ActivitiesTiredChargeCfg_new[1]
- local cloaseDay = 1
- for K_day, daycfgs in pairs(self.ActivitiesTiredChargeCfg_new) do
-
- if K_day <= day and K_day > cloaseDay then
- cloaseDay = K_day
- end
- end
- curDayCfg = self.ActivitiesTiredChargeCfg_new[cloaseDay]
-
- --LogError("Day = " .. cloaseDay.." Index = " .. curDayCfg[1].Index)
- if curDayCfg then
- for _, v in pairs(curDayCfg) do
-
- if v.Index >= index then
- return v
- end
-
- end
- end
-
- return nil
- end
- function CfgMgr:GetNextActivitiesTiredChargeCfg_New_MaxAndMInIndexByDay(day)
- local curDayCfg = self.ActivitiesTiredChargeCfg_new[1]
- local cloaseDay = 1
- for K_day, daycfgs in pairs(self.ActivitiesTiredChargeCfg_new) do
-
- if K_day <= day and K_day > cloaseDay then
- cloaseDay = K_day
- end
- end
- curDayCfg = self.ActivitiesTiredChargeCfg_new[cloaseDay]
- local max = -1
- local min = 99999999
- if curDayCfg == nil then
- return min, max
- end
- for _, v in pairs(curDayCfg) do
- local index = v.Index
- if min > index then
- min = index
- end
- if max < index then
- max = index
- end
- end
- return min, max
- end
- function CfgMgr:GetNextActivitiesTiredChargeCfgByNum(num)
- for i = 1, #self.ActivitiesTiredChargeCfg do
- if self.ActivitiesTiredChargeCfg[i].RechargeAmount > num then
- return self.ActivitiesTiredChargeCfg[i]
- end
- end
- return nil
- end
- function CfgMgr:GetActivitiesDiscountsCfgById(id)
- return self.ActivitiesDiscountsCfg[id]
- end
- function CfgMgr:GetHundredDojoCfg()
- return self.HundredDojoCfg
- end
- function CfgMgr:GetHundredDojoCfgById(id)
- return self.HundredDojoCfg[id]
- end
- function CfgMgr:GetOnlineRwards()
- return self.OnlineRewardsCfg
- end
- function CfgMgr:GetRushListCfgByTypeAndIdx(type, idx)
- local list
- for i = 1, #self.RushListCfg do
- if self.RushListCfg[i].RankType == type and self.RushListCfg[i].RankId == idx then
- if not list then list = {} end
- list[#list + 1] = self.RushListCfg[i]
- end
- end
- return list
- end
- function CfgMgr:GetRushListTargetCfgByTypeAndIdx(type, idx)
- local list
- for i = 1, #self.RushListTargetCfg do
- if self.RushListTargetCfg[i].RankType == type and self.RushListTargetCfg[i].RankId == idx then
- if not list then list = {} end
- list[#list + 1] = self.RushListTargetCfg[i]
- end
- end
- return list
- end
- function CfgMgr:GetRuneShopRankTowerCfgByIdx(idx)
- local list
- for i = 1, #self.RuneShopRankTowerCfg do
- if self.RuneShopRankTowerCfg[i].RankId == idx then
- if not list then list = {} end
- list[#list + 1] = self.RuneShopRankTowerCfg[i]
- end
- end
- return list
- end
- function CfgMgr:GetRuneShopRankArenaCfgByIdx(idx)
- local list
- for i = 1, #self.RuneShopRankArenaCfg do
- if self.RuneShopRankArenaCfg[i].RankId == idx then
- if not list then list = {} end
- list[#list + 1] = self.RuneShopRankArenaCfg[i]
- end
- end
- return list
- end
- function CfgMgr:GetRuneShopExploreCfg()
- if not self.RuneShopExploreCfg then
- self.RuneShopExploreCfg = require('RuneShopExploreCfg')
- end
- return self.RuneShopExploreCfg
- end
- function CfgMgr:GetRuneShopExploreCfgByRound(round)
- local RSExploreCfg = self:GetRuneShopExploreCfg()
- return RSExploreCfg and RSExploreCfg[round] or nil
- end
- function CfgMgr:GetRuneShopExploreRewardCfg()
- if not self.RuneShopExploreRewardCfg then
- self.RuneShopExploreRewardCfg = require('RuneShopExploreRewardCfg')
- end
- return self.RuneShopExploreRewardCfg
- end
- function CfgMgr:GetRuneShopExploreRewardCfgById(id)
- local RuneShopExploreRewardCfg = self:GetRuneShopExploreRewardCfg()
- return RuneShopExploreRewardCfg and RuneShopExploreRewardCfg[id] or nil
- end
- function CfgMgr:GetRShopRewardsCfgByRound(round)
- if not self.RuneShopRoundMap then
- self.RuneShopRoundMap = {}
- end
- if not self.RuneShopRoundMap[round] then
- local ls ={}
- for key, value in pairs(self:GetRuneShopExploreRewardCfg()) do
- if value.ActiveRound == round then
- ls[#ls+1] = value
- end
- end
- table.sort(ls, function(a, b)
- return a.ID < b.ID
- end)
- self.RuneShopRoundMap[round] = ls
- end
- return self.RuneShopRoundMap[round]
- end
- function CfgMgr:GetAllKeepSakeCfgDatas()
- return self.KeepSakeCfg
- end
- function CfgMgr:GetKeepSakeCfgDataById(id)
- return self.KeepSakeCfg[id]
- end
- function CfgMgr:GetKeepSakeCfgDatasByLevel(lv)
- local list = {}
- for _,v in pairs(self.KeepSakeCfg) do
- if v.CollectionLevel == lv then
- list[#list + 1] = v
- end
- end
- return list
- end
- function CfgMgr:GetCardSuitNewCfgById(id)
- return self.CardSuitNewCfg[id]
- end
- function CfgMgr:GetAllCardSuitNewCfg()
- return self.CardSuitNewCfg
- end
- function CfgMgr:GetSkillSuitNewCfgById(id)
- return self.SkillSuitNewCfg[id]
- end
- function CfgMgr:GetAllSkillSuitNewCfg()
- return self.SkillSuitNewCfg
- end
- function CfgMgr:GetFightCfgByAttrId(id)
- return self.FightCfg[id]
- end
- function CfgMgr:GetAllFashionSuitDatas()
- return self.FashionSuitCfg
- end
- function CfgMgr:GetFashionSuitDataById(cfgId)
- return self.FashionSuitCfg[cfgId]
- end
- function CfgMgr:GetFashionMaxLv()
- return self.FashionLevelUp[#self.FashionLevelUp].Level
- end
- function CfgMgr:GetFashionLvDataByLv(lv)
- return self.FashionLevelUp[lv]
- end
- function CfgMgr:GetGuildWarBuffCfg()
- if not self.GuildWarBuffCfg then
- self.GuildWarBuffCfg = require('GuildWarBuffCfg')
- end
- return self.GuildWarBuffCfg
- end
- function CfgMgr:GetActivityRoulettelCfgById(id)
- local Cfg = self.ActivityRoulettelCfg[id]
- if Cfg then
- return Cfg
- end
- return nil
- end
- function CfgMgr:GetCompetitionPrizeWheelCfgById(id)
- local Cfg = self.CompetitionPrizeWheelCfg[id]
- if Cfg then
- return Cfg
- end
- return nil
- end
- function CfgMgr:GetGuildWarBuffCfgById(id)
- local GuildWarBuffCfg = self:GetGuildWarBuffCfg()
- if GuildWarBuffCfg then
- return GuildWarBuffCfg[id]
- end
- return nil
- end
- function CfgMgr:GetGuildWarDojoCfg()
- if not self.GuildWarDojoCfg then
- self.GuildWarDojoCfg = require('GuildWarDojoCfg')
- end
- return self.GuildWarDojoCfg
- end
- function CfgMgr:GetGuildWarDojoCfgById(id)
- local GuildWarDojoCfg = self:GetGuildWarDojoCfg()
- if GuildWarDojoCfg then
- return GuildWarDojoCfg[id]
- end
- return nil
- end
- function CfgMgr:GetGuildWarAgainstCfg()
- if not self.GuildWarAgainstCfg then
- self.GuildWarAgainstCfg = require('GuildWarAgainstCfg')
- end
- return self.GuildWarAgainstCfg
- end
- function CfgMgr:GetGuildWarAgainstCfgById(id)
- local GuildWarAgainstCfg = self:GetGuildWarAgainstCfg()
- if GuildWarAgainstCfg then
- return GuildWarAgainstCfg[id]
- end
- return nil
- end
- function CfgMgr:GetActivityGoddessGiftCfgByActId(actId)
- if not self.ActivityGoddessGiftCfg then
- self.ActivityGoddessGiftCfg = {}
- end
- if not self.ActivityGoddessGiftCfg[actId] then
- local ls = {}
- self.ActivityGoddessGiftCfg[actId] = ls
- local cfgs = require('ActivitiesGiftCfg')
- for _,cfg in pairs(cfgs) do
- if cfg.Activityid == actId then
- ls[#ls+1] = cfg
- end
- end
- table.sort(ls, function (a, b)
- return a.SortId < b.SortId
- end)
- end
- return self.ActivityGoddessGiftCfg[actId]
- end
- function CfgMgr:GetActivityGoddessLoveCfgByActId(actId)
- if not self.ActivityGoddessLoveCfg then
- self.ActivityGoddessLoveCfg = {}
- end
- if not self.ActivityGoddessLoveCfg[actId] then
- local ls = {}
- self.ActivityGoddessLoveCfg[actId] = ls
- local cfgs = require('ActivitieslikabilityCfg')
- for _,cfg in pairs(cfgs) do
- if cfg.Activityid == actId then
- ls[cfg.Likelevel] = cfg
- end
- end
- end
- return self.ActivityGoddessLoveCfg[actId]
- end
- function CfgMgr:GetActivityGoddessLoveCfgByLv(actId, lv)
- local ActivityGoddessLoveCfg = self:GetActivityGoddessLoveCfgByActId(actId)
- if ActivityGoddessLoveCfg then
- return ActivityGoddessLoveCfg[lv]
- end
- return nil
- end
- function CfgMgr:ClearActivityGoddessCfg()
- self.ActivityGoddessGiftCfg = nil
- self.ActivityGoddessLoveCfg = nil
- end
- function CfgMgr:GetPetEquipCfgDataById(id)
- if not self.PetEquipCfg then
- self.PetEquipCfg = require('PetEquipCfg')
- end
- return self.PetEquipCfg[id]
- end
- function CfgMgr:GetPetEquipExpCfgDataByLvAndCfgId(lv, cfgId)
- if not self.PetEquipExpCfg then
- self.PetEquipExpCfg = require('PetEquipExpCfg')
- end
- for _,v in pairs(self.PetEquipExpCfg) do
- if v.PetEquipLevel == lv and v.PetEquipID == cfgId then
- return v
- end
- end
- return nil
- end
- --根据压制值 计算携带buff
- function CfgMgr:GetPresspointPvPCfg(ourPvPVal,enemyPvPVal)
- local BuffId = -1
- local IsLess = ourPvPVal < enemyPvPVal
- local buffIdx = 1
- if not IsLess then
- buffIdx = 2
- end
- local DetalVal = math.abs(ourPvPVal - enemyPvPVal)
- local tbcfg = {}
- local cfgData = self.PresspointPvPCfg
- if not cfgData then
- LogError("PresspointPvPCfg Not Find")
- return IsLess,BuffId
- end
- for _,v in pairs(cfgData) do
- tbcfg[#tbcfg+1] = v
- end
- table.sort(
- tbcfg,
- function(v1, v2)
- return v1.TriggerConditions < v2.TriggerConditions
- end
- )
- --LogError(Inspect(tbcfg))
- for i = 1,#tbcfg do
- local cfg = tbcfg[i]
- if cfg.TriggerConditions <= DetalVal then
- BuffId = cfg.buffid[buffIdx]
- else
- break
- end
- end
- return IsLess,BuffId
- end
- function CfgMgr:GetPetEquipSuitCfgDataByQuality(quality)
- if not self.PetEquipSuitCfg then
- self.PetEquipSuitCfg = require('PetEquipSuitCfg')
- end
- for _,v in pairs(self.PetEquipSuitCfg) do
- if v.Amount and v.Amount[1] and v.Amount[1][1] == quality then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetVoyageAirShipCfg()
- if not self.VoyageAirShipCfg then
- self.VoyageAirShipCfg = require('TransportCfg')
- end
- return self.VoyageAirShipCfg
- end
- function CfgMgr:GetVoyageAirShipCfgById(id)
- local VoyageAirShipCfg = self:GetVoyageAirShipCfg()
- return VoyageAirShipCfg and VoyageAirShipCfg[id] or nil
- end
- function CfgMgr:GetArtifactCfgDataByCfgId(cfgId)
- if not self.ArtifactCfg then
- self.ArtifactCfg = require 'ArtifactCfg'
- end
- for _,v in pairs(self.ArtifactCfg) do
- if v.Id == cfgId then
- return v
- end
- end
- return nil
- end
- function CfgMgr:GetArtifactExpCfgCostByLv(lv)
- if not self.ArtifactExpCfg then
- self.ArtifactExpCfg = require 'ArtifactExpCfg'
- end
- for _,v in pairs(self.ArtifactExpCfg) do
- if v.ArtifactLevel == lv then
- return v.UpgradeCost
- end
- end
- return nil
- end
- function CfgMgr:GetTopTowerRewardCfgDataByLv(lv)
- if not self.TopTowerCfgReward then
- self.TopTowerCfgReward = require "TopTowerCfgReward"
- end
- return self.TopTowerCfgReward[lv]
- end
- function CfgMgr:GetPrivilegeCardCfgByLv(lv)
- if not self.PrivilegeCardCfg then
- self.PrivilegeCardCfg = require("PrivilegeCardCfg")
- end
- return self.PrivilegeCardCfg[lv]
- end
- function CfgMgr:GetPassCheckCfgById(id)
- if not self.PassCheckCfg then
- self.PassCheckCfg = require("PassCheckCfg")
- end
- return self.PassCheckCfg[id]
- end
- function CfgMgr:GetActivitiesBtFirstChargeCfgById(id)
- if not self.ActivitiesBtFirstChargeCfg then
- self.ActivitiesBtFirstChargeCfg = require("ActivitiesBtFirstChargeCfg")
- end
- return self.ActivitiesBtFirstChargeCfg[id]
- end
- function CfgMgr:Destroy()
- for k,v in pairs(self) do
- self[k] = nil
- end
- if tolua.getpeer(self) ~= nil then
- tolua.setpeer(self, nil)
- end
- end
- function CfgMgr:GetLevelDifficultCfg()
- return self.LevelDifficultCfg
- end
- function CfgMgr:GetLevelDebuffCfgById(id)
- return self.LevelDebuffCfg[id]
- end
- function CfgMgr:GetLevelEnemyAttributeAdditionCfgById(id)
- return self.LevelEnemyAttributeAdditionCfg[id]
- end
- function CfgMgr:GetHardMissionCfgById(id)
- return self.HardMissionCfg[id]
- end
- function CfgMgr:GetHardMissionCfg()
- return self.HardMissionCfg
- end
- function CfgMgr:GetYuanHangTrialRankCfg()
- return self.YuanHangTrialRankCfg
- end
- return CfgMgr
|