From 8676f8007344d92de754379a3d2c3a540edc133a Mon Sep 17 00:00:00 2001 From: "PC-202302260912\\Administrator" <1545929779@qq.com> Date: Wed, 13 Dec 2023 14:12:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B3=95=E5=AE=9D=E8=81=9A=E7=81=B5=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../~Lua/Common/GlobalDefine.lua | 1 + .../~Lua/Modules/Gem/GiftManager.lua | 2 +- .../Modules/GeneralPanel/GeneralBigPopup.lua | 1 + .../View/GeneralBigPopup_IncarnationDes2.lua | 99 +++++++++++++++++++ .../GeneralBigPopup_IncarnationDes2.lua.meta | 7 ++ .../Modules/TailsManSoul/TailsManSouPanel.lua | 23 ++++- .../TailsManSoul/TailsManSoulManager.lua | 34 +++++++ .../TailsManSoul/TailsmanSoulMainPanel.lua | 32 ++++-- 8 files changed, 188 insertions(+), 11 deletions(-) create mode 100644 Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua create mode 100644 Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua.meta diff --git a/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua b/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua index 699cdaf196..db4d26a226 100644 --- a/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua +++ b/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua @@ -2591,6 +2591,7 @@ GENERAL_POPUP_TYPE={ GodPrintUp = 71, --神印升品阶 GiveLikeHotHero = 72,--英雄热度排行 WishEquipDraw = 73, --心愿法宝抽卡 + IncarnationDes2 = 74, } --通用信息弹窗类型 diff --git a/Assets/ManagedResources/~Lua/Modules/Gem/GiftManager.lua b/Assets/ManagedResources/~Lua/Modules/Gem/GiftManager.lua index 92749fbfe8..a933a959ce 100644 --- a/Assets/ManagedResources/~Lua/Modules/Gem/GiftManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Gem/GiftManager.lua @@ -202,7 +202,7 @@ function this.GetHeroPotencyLvById(did) local list=this.allHeroGifts[did] for i=1,#list do local id=list[i] - if equipConfig[id] and equipConfig[id].PotentialNew and #equipConfig[id].PotentialNew>0 then + if equipConfig[id] and equipConfig[id].PotentialNew and #equipConfig[id].PotentialNew>0 and type(equipConfig[id].PotentialNew[1])~="userdata" then lv=lv+equipConfig[id].PotentialNew[2] end end diff --git a/Assets/ManagedResources/~Lua/Modules/GeneralPanel/GeneralBigPopup.lua b/Assets/ManagedResources/~Lua/Modules/GeneralPanel/GeneralBigPopup.lua index d183c50c1e..d515795d62 100644 --- a/Assets/ManagedResources/~Lua/Modules/GeneralPanel/GeneralBigPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/GeneralPanel/GeneralBigPopup.lua @@ -38,6 +38,7 @@ local contentScripts = { --灵脉秘境纪录 [GENERAL_POPUP_TYPE.LingMaiRecord] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_LingMaiRecord"), panelName = "GeneralBigPopup_LingMaiRecord"}, [GENERAL_POPUP_TYPE.IncarnationDes] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes"), panelName = "GeneralBigPopup_IncarnationDes"}, + [GENERAL_POPUP_TYPE.IncarnationDes2] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2"), panelName = "GeneralBigPopup_IncarnationDes2"}, [GENERAL_POPUP_TYPE.chooseTailsManSoul] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_WishTailsmanSoulChip"), panelName = "GeneralBigPopup_WishTailsmanSoulChip"}, --寻仙招募选择up英雄 [GENERAL_POPUP_TYPE.ChooseUpHero] = {view = require("Modules/Popup/View/GeneralPopup_ChooseUpHero"), panelName = "GeneralBigPopup_ChooseUpHero"}, diff --git a/Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua b/Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua new file mode 100644 index 0000000000..234fcb0e27 --- /dev/null +++ b/Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua @@ -0,0 +1,99 @@ +----- 神应属性弹窗 ----- +local this = {} +local PropertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig) +--传入父脚本模块 +local parent +local sortingOrder=0 +local attriList = {} + +function this:InitComponent(gameObject) + self.bg =Util.GetGameObject(gameObject, "bg") + self.proGroup =Util.GetGameObject(gameObject, "proGroup") + self.proTitle =Util.GetGameObject(gameObject, "title") + self.proTip =Util.GetGameObject(gameObject, "tip") + self.proValue =Util.GetGameObject(gameObject, "pro") + self.proNum =Util.GetGameObject(self.proValue, "name") +end + +function this:BindEvent() + +end + +function this:AddListener() +end + +function this:RemoveListener() +end + +function this:OnShow(_parent,_Data) + parent=_parent + sortingOrder = _parent.sortingOrder + parent.BG:SetActive(false) + local args = _Data + local data = args[1] + for i = 1, #data do + if not attriList[i] then + attriList[i] = {} + attriList[i].proGroup = newObjToParent(self.proGroup,self.bg) + end + attriList[i].proGroup.gameObject:SetActive(false) + if not attriList[i].title then + attriList[i].title = newObjToParent(self.proTitle,attriList[i].proGroup) + attriList[i].titleCom = Util.GetGameObject(attriList[i].title,"name/text"):GetComponent("Text") + end + attriList[i].title.gameObject:SetActive(false) + for j = 1, #data[i].pro do + if not attriList[i].pro then + attriList[i].pro = {} + end + if not attriList[i].TextCom then + attriList[i].TextCom = {} + end + if not attriList[i].proParent then + attriList[i].proParent = newObjToParent(self.proValue,attriList[i].proGroup) + end + if not attriList[i].pro[j] then + attriList[i].pro[j] = newObjToParent(self.proNum,attriList[i].proParent) + attriList[i].TextCom[j] = attriList[i].pro[j]:GetComponent("Text") + end + attriList[i].pro[j].gameObject:SetActive(false) + end + if not attriList[i].tip then + attriList[i].tip = newObjToParent(self.proTip,attriList[i].proGroup) + attriList[i].tipComp = Util.GetGameObject(attriList[i].tip,"name"):GetComponent("Text") + end + attriList[i].proGroup.gameObject:SetActive(false) + end + + for i = 1, #data do + attriList[i].proGroup.gameObject:SetActive(true) + if data[i].title and data[i].title ~= "" then + attriList[i].title.gameObject:SetActive(true) + attriList[i].titleCom.text = data[i].title + else + attriList[i].title.gameObject:SetActive(false) + end + for j = 1, #data[i].pro do + attriList[i].pro[j].gameObject:SetActive(true) + attriList[i].TextCom[j].text = data[i].pro[j] + end + if data[i].tip and data[i].tip ~= "" then + attriList[i].tip.gameObject:SetActive(true) + attriList[i].tipComp.text = data[i].tip + else + attriList[i].tip.gameObject:SetActive(false) + end + end +end + +function this:OnClose() + Util.ClearChild(self.bg.transform) + attriList = {} +end + +function this:OnDestroy() + Util.ClearChild(self.bg.transform) + attriList = {} +end + +return this diff --git a/Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua.meta b/Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua.meta new file mode 100644 index 0000000000..d0eeb63f63 --- /dev/null +++ b/Assets/ManagedResources/~Lua/Modules/GeneralPanel/View/GeneralBigPopup_IncarnationDes2.lua.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 67d99074caaee654a97ba1e52214684f +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSouPanel.lua b/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSouPanel.lua index f0bff66319..72a60c1437 100644 --- a/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSouPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSouPanel.lua @@ -6,6 +6,8 @@ local redPointList = {} local tabsRedpoints = {} local tabs={} local tabsImg = {"r_hero_huo 1_zh", "r_hero_feng 1_zh", "r_hero_shui 1_zh", "r_hero_dadi 1_zh"} +local special=ConfigManager.GetConfigData(ConfigName.SpecialConfig,177) +local pro=tonumber(special.Value)/100 -- Tab管理器 local TabBox = require("Modules/Common/TabBox") local tabData = { @@ -25,6 +27,7 @@ local tabData = { local curData = {} local curPage = 1 local proId = 1 +local addLv=0 --初始化组件(用于子类重写) function TailsManSouPanel:InitComponent() this.spLoader = SpriteLoader.New() @@ -82,14 +85,15 @@ function TailsManSouPanel:BindEvent() end) Util.AddClick(self.addBtn, function() local li = TailsManSoulManager.GetTailsmanTotalPro() + local li2= TailsManSoulManager.GetTailsmanTotalProNoAdd() if not li or #li < 1 then PopupTipPanel.ShowTip("当前无属性加成") return end - local s = function(data) + local s = function(data,data2) local lis1 = {} for k,v in pairs(data) do - table.insert(lis1,{str = string.format("%s+%s",propertyConfig[k].Info,GetPropertyFormatStr(propertyConfig[k].Style,v)),sort = propertyConfig[k].SortId}) + table.insert(lis1,{str = string.format("%s+%s 法宝共鸣额外加成%s (%s%%)",propertyConfig[k].Info,GetPropertyFormatStr(propertyConfig[k].Style,v),GetPropertyFormatStr(propertyConfig[k].Style,v-data2[k]),addLv*pro),sort = propertyConfig[k].SortId}) end table.sort(lis1,function(a,b) return a.sort < b.sort @@ -103,7 +107,7 @@ function TailsManSouPanel:BindEvent() local data = {} local singData = {} singData.title = "加成属性" - singData.pro = s(li) + singData.pro = s(li,li2) singData.tip = "" table.insert(data,singData) -- for i = 1 ,#data do @@ -112,7 +116,7 @@ function TailsManSouPanel:BindEvent() -- LogGreen("data[i]:"..v) -- end -- end - UIManager.OpenPanel(UIName.GeneralBigPopup,GENERAL_POPUP_TYPE.IncarnationDes,data) + UIManager.OpenPanel(UIName.GeneralBigPopup,GENERAL_POPUP_TYPE.IncarnationDes2,data) -- local li = TailsManSoulManager.GetTailsmanTotalPro() -- local li2 = {} @@ -238,6 +242,17 @@ function TailsManSouPanel:OnShow() --self.tabBox:Init(self.tabbox.gameObject, tabs, curPage) curData = TailsManSoulManager.GetTailsmanSoulDatasByPro(1) self:RefreshData() + addLv=0 + for i=1,5 do + local curData = TailsManSoulManager.GetTailsmanSoulDatasByPro(i) + for j=1,#curData do + --LogError("curData.lv=========="..curData[j].lv) + if curData[j].lv>0 then + addLv=addLv+curData[j].lv + end + + end + end self.effectJin.gameObject:SetActive(tabData[curPage].quality == 5) self.effectHong.gameObject:SetActive(tabData[curPage].quality == 6) Util.SetParticleSortLayer(self.effectJin.gameObject,self.sortingOrder + 1) diff --git a/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSoulManager.lua b/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSoulManager.lua index c77fa14ab5..08fc80b414 100644 --- a/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSoulManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsManSoulManager.lua @@ -174,7 +174,41 @@ function this.GetTailsmanTotalPro() end return proList end +function this.GetTailsmanTotalProNoAdd() + local proList = {} + local special=ConfigManager.GetConfigData(ConfigName.SpecialConfig,177) + local num=tonumber(special.Value)/10000 + for k,v in pairs(this.TailsmanList) do + --LogError("Trump[k].LvupPool==========="..Trump[k].LvupPool.." level==="..v) + local tempPro = ConfigManager.GetConfigDataByDoubleKey(ConfigName.TrumpLevelupPool,"PoolId",Trump[k].LvupPool,"Level",v).LvupProps + if tempPro then + for i = 1,#tempPro do + if not proList[tempPro[i][1]] then + proList[tempPro[i][1]] = 0 + end + proList[tempPro[i][1]] = proList[tempPro[i][1]] + tempPro[i][2] + end + end + end + + --屏蔽星数加成属性 + -- local tempPro = this.GetTotalStarPro() + -- if tempPro then + -- for i = 1,#tempPro do + -- if not proList[tempPro[i][1]] then + -- proList[tempPro[i][1]] = 0 + -- end + -- proList[tempPro[i][1]] = proList[tempPro[i][1]] + tempPro[i][2] + -- end + -- end + -- for k, v in pairs(proList) do + -- LogError("属性 v========================================="..v) + -- end + -- LogError("addlv============================"..addLv) + + return proList +end function this.GetTailsmanCost(id,lv) local num = ConfigManager.GetConfigDataByDoubleKey(ConfigName.TrumpLevelupPool,"PoolId",Trump[id].LvupPool,"Level",lv).LvupCostItemNum local costId = Trump[id].LvupCostItem diff --git a/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsmanSoulMainPanel.lua b/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsmanSoulMainPanel.lua index be7b228e59..4e31eb842b 100644 --- a/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsmanSoulMainPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/TailsManSoul/TailsmanSoulMainPanel.lua @@ -4,6 +4,8 @@ local propertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig) local ItemConfig = ConfigManager.GetConfig(ConfigName.ItemConfig) local specialConfig=ConfigManager.GetConfigData(ConfigName.SpecialConfig,177) local sortOrder = 0 +local pro=tonumber(specialConfig.Value)/10000 +local addLv=0 local curData = {} function TailsmanSoulMainPanel:InitComponent() self.spLoader = SpriteLoader.New() @@ -140,15 +142,15 @@ end function TailsmanSoulMainPanel:GetSkillDataList() local datas = {} - local pro=tonumber(specialConfig.Value)/10000*100 + for k,v in pairs(self.skillDataList) do local str = v if self.complv == k then - str = string.format("%s %s",str,"法宝聚灵基础属性提升"..pro*k.."%") + str = string.format("%s %s",str,"法宝聚灵基础属性提升"..pro*100*k.."%") elseif self.complv < k then - str = string.format("%s %s",str,"法宝聚灵基础属性提升"..pro*k.."%") + str = string.format("%s %s",str,"法宝聚灵基础属性提升"..pro*100*k.."%") else - str = string.format("%s %s",str,"法宝聚灵基础属性提升"..pro*k.."%") + str = string.format("%s %s",str,"法宝聚灵基础属性提升"..pro*100*k.."%") end datas[k] = str end @@ -159,7 +161,20 @@ function TailsmanSoulMainPanel:ChangeTailsMan() self.data = self.trumpList[self.index] self.icon.sprite = self.spLoader:LoadSprite(GetResourcePath(self.data.config.Icon)) self.tailsmainSoulDi.sprite = self.spLoader:LoadSprite(GetTailsmanDiImage[self.data.config.Quality]) + --获取技能加成等级 + addLv=0 + for i=1,5 do + local curData = TailsManSoulManager.GetTailsmanSoulDatasByPro(i) + for j=1,#curData do + --LogError("curData.lv=========="..curData[j].lv) + if curData[j].lv>0 then + addLv=addLv+curData[j].lv + end + + end + end local data1 = self:GetProData() + self:SetProList(data1,self.proList,self.proGrid,self.pro) self:SetSelect() self:SetCostItem() @@ -181,9 +196,11 @@ function TailsmanSoulMainPanel:GetProData() end local str = "" for i = 1,#curData do - str = string.format("%s:%s",propertyConfig[curData[i][1]].Info,GetPropertyFormatStrOne(propertyConfig[curData[i][1]].Style,curData[i][2]) ) + --LogError("addlv======================"..addLv.." pro========="..pro) + local value=math.floor(curData[i][2]*(1+addLv*pro)+0.5) + str = string.format("%s:%s",propertyConfig[curData[i][1]].Info,GetPropertyFormatStrOne(propertyConfig[curData[i][1]].Style,value) ) if nextProData[curData[i][1]] then - str = str..string.format("(+%s)",GetPropertyFormatStrOne(propertyConfig[curData[i][1]].Style,nextProData[curData[i][1]] - curData[i][2])) + str = str..string.format("(+%s)",GetPropertyFormatStrOne(propertyConfig[curData[i][1]].Style,nextProData[curData[i][1]] - value)) end table.insert(proData,str) end @@ -198,6 +215,9 @@ function TailsmanSoulMainPanel:SetProData(proData) end proList[proData[i][1]] = proList[proData[i][1]] + proData[i][2] end + for k, v in pairs(proList) do + proList[k]=math.floor(v*(1+addLv*pro)+0.5) + end return proList end