diff --git a/Assets/ManagedResources/Prefabs/UI/Battle/BattlePanel.prefab b/Assets/ManagedResources/Prefabs/UI/Battle/BattlePanel.prefab index f1fa17fb97..2f8fe81e54 100644 --- a/Assets/ManagedResources/Prefabs/UI/Battle/BattlePanel.prefab +++ b/Assets/ManagedResources/Prefabs/UI/Battle/BattlePanel.prefab @@ -79894,7 +79894,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -86.19996, y: 259} + m_AnchoredPosition: {x: -86.19996, y: 265.7803} m_SizeDelta: {x: 44, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7683721027093544007 @@ -157759,7 +157759,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} - m_AnchoredPosition: {x: -20, y: 206} + m_AnchoredPosition: {x: -20, y: 161} m_SizeDelta: {x: 1100, y: 202.5} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &4929751347603845043 @@ -178724,7 +178724,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 11.0000725, y: 266.6198} + m_AnchoredPosition: {x: 11.0000725, y: 273.40012} m_SizeDelta: {x: 116, y: 17} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6792614551820874869 @@ -236798,7 +236798,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 10.980068, y: 248.21973} + m_AnchoredPosition: {x: 10.980068, y: 255} m_SizeDelta: {x: 115.64, y: 12} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7147047745219255636 diff --git a/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua b/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua index 6a52a83c41..3dde40efec 100644 --- a/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua +++ b/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua @@ -1032,6 +1032,7 @@ ItemType = { heroDogFood =25,--英雄狗粮 linglongbaojingkaimen = 26, likeabilityItem = 27, + ZuoQiChip = 28, -- 坐骑碎片 } JumpType = { Lottery = 1, --招募 diff --git a/Assets/ManagedResources/~Lua/Modules/Bag/BagResolveAnCompoundPanel.lua b/Assets/ManagedResources/~Lua/Modules/Bag/BagResolveAnCompoundPanel.lua index 32c4fcbc88..0a7e5b4fc4 100644 --- a/Assets/ManagedResources/~Lua/Modules/Bag/BagResolveAnCompoundPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Bag/BagResolveAnCompoundPanel.lua @@ -133,7 +133,8 @@ function BagResolveAnCompoundPanel:BindEvent() end end) Util.AddClick(this.btnCompound, function() - if itemData.itemConfig.ItemType==ItemType.HeroDebris then--碎片 + if itemData.itemConfig.ItemType==ItemType.HeroDebris + or itemData.itemConfig.ItemType==ItemType.ZuoQiChip then--碎片 if compoundNum>0 then local item={} item.itemId=itemData.id @@ -292,7 +293,8 @@ function this.OnShowLayout3Data() this.chipFrame:SetActive(false) this.propertyIma:SetActive(false) local gameSetting = ConfigManager.GetConfigData(ConfigName.GameSetting, 1) - if itemData.itemConfig.ItemType==ItemType.HeroDebris then--碎片 + if itemData.itemConfig.ItemType==ItemType.HeroDebris + or itemData.itemConfig.ItemType==ItemType.ZuoQiChip then--碎片 this.chipFrame:SetActive(true) this.chipFrame:GetComponent("Image").sprite = this.spLoader:LoadSprite(GetHeroChipQuantityImageByquality(itemData.itemConfig.Quantity)) if itemData.itemConfig.PropertyName and itemData.itemConfig.PropertyName > 0 then @@ -305,12 +307,13 @@ function this.OnShowLayout3Data() this.nameText.text=Language[10192] this.btnCompoundText.text=Language[10193] local maxCompoundValue = math.floor(itemData.num/itemData.itemConfig.UsePerCount) - compoundMaxNum=maxCompoundValue > gameSetting.HeroCompoundLimit and gameSetting.HeroCompoundLimit or maxCompoundValue - endHeroNum=gameSetting.HeroNumlimit-LengthOfTable(HeroManager.GetAllHeroDatas()) - compoundMaxNum=compoundMaxNum >endHeroNum and endHeroNum or compoundMaxNum - if compoundMaxNum > compoundMaxNum then - compoundMaxNum = compoundMaxNum + -- + if itemData.itemConfig.ItemType==ItemType.HeroDebris then -- 神将碎片 + compoundMaxNum = math.min(maxCompoundValue, gameSetting.HeroCompoundLimit, gameSetting.HeroNumlimit-LengthOfTable(HeroManager.GetAllHeroDatas())) + elseif itemData.itemConfig.ItemType==ItemType.ZuoQiChip then -- 坐骑碎片 + compoundMaxNum = math.min(maxCompoundValue, gameSetting.HeroCompoundLimit) end + elseif itemData.itemConfig.ItemType==ItemType.Box then--宝箱 this.nameText.text=Language[10194] this.btnCompoundText.text=Language[10195] @@ -448,7 +451,8 @@ function this.ShowCompoundNumData(value) compoundNum=value this.Slider:GetComponent("Slider").value=value this.numText1.text = value - if itemData.itemConfig.ItemType==ItemType.HeroDebris then--碎片 + if itemData.itemConfig.ItemType==ItemType.HeroDebris + or itemData.itemConfig.ItemType==ItemType.ZuoQiChip then--碎片 this.numText.text= Language[10198]..value*itemData.itemConfig.UsePerCount..Language[10199]..value..Language[10200].. string.gsub(GetLanguageStrById(itemData.itemConfig.Name),Language[10201],"") elseif itemData.itemConfig.ItemType==ItemType.Box then--宝箱 this.numText.text= Language[10202]..value..Language[10200]..GetLanguageStrById(itemData.itemConfig.Name).."。" diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/BattleManager.lua b/Assets/ManagedResources/~Lua/Modules/Battle/BattleManager.lua index c681b7ae94..155151c37b 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/BattleManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/BattleManager.lua @@ -644,8 +644,8 @@ function this.GetMonsterPros(id, lv, star) table.insert(allProVal, 22, proList[HeroProType.FoReduce] or 0) -- 抗佛 table.insert(allProVal, 23, proList[HeroProType.YaoReduce] or 0) -- 抗妖 table.insert(allProVal, 24, proList[HeroProType.DaoReduce] or 0) -- 抗道 - table.insert(allProVal, 25, proList[HeroProType.InitRage] or 0) -- 初始怒气 - table.insert(allProVal, 26, proList[HeroProType.AntiCritDamageFactor] or 0) -- 爆伤减免 + table.insert(allProVal, 25, proList[HeroProType.AntiCritDamageFactor] or 0) -- 爆伤减免 + table.insert(allProVal, 26, proList[HeroProType.InitRage] or 0) -- 初始怒气 local pros = table.concat(allProVal, "#") return pros end diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua index 4a67091a27..a3db20f4f5 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua @@ -9635,7 +9635,97 @@ local passivityList = { end BattleLogic.Event:AddEvent(BattleEventName.RecordRageChange, onRageChange,nil,nil,role) end, + --暴击时[a]%概率使爆伤改变[b][c]% + --a[float],b[int],c[float] + [389]=function(role,args,id,judge) + local pro=args[1] + local ct = args[2] + local v1 = args[3] + local addCritDamageFa=function(func) + BattleUtil.RandomAction(pro,function() + if func then + func(v1,ct) + end + end) + end + role.Event:AddEvent(BattleEventName.PassiveAddCritDamageFactor,addCritDamageFa,nil,nil,role) + end, + --释放技能时[a]%概率 改变[b]无视目标的[c]buff免疫 + --a[float],b[int],c[int] + [390]=function(role,args,id,judge) + local pro=args[1] + local ct = args[2] + local v1 = args[3] + local addCritDamageFa=function(func,buff) + + if buff and buff.type~=v1 then + return + end + if func then + func(pro,ct) + end + end + + local OnSkillCast = function(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then + role.Event:AddEvent(BattleEventName.PassiveChangeIgnoreImmuneValue,addCritDamageFa,nil,nil,role) + end + end + local OnSkillCastEnd = function(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then + role.Event:RemoveEvent(BattleEventName.PassiveChangeIgnoreImmuneValue,addCritDamageFa,nil,nil,role) + end + end + role.Event:AddEvent(BattleEventName.SkillCast, OnSkillCast,nil,nil,role) + role.Event:AddEvent(BattleEventName.SkillCastEnd, OnSkillCastEnd,nil,nil,role) + end, + + --释放技能时[a]%概率 清除目标一个减异效果 + --a[float] + [391]=function(role,args,id,judge) + local pro=args[1] + local onRoleTreat=function(targetRole, treat, baseTreat,skill) + if not skill then + return + end + BattleUtil.RandomAction(pro, function() + local list=BattleLogic.BuffMgr:GetAllBuffByFunc(function(buff) return buff.caster.camp~=targetRole.camp and buff.target==targetRole end) + local len=BattleUtil.LengthOfTable(list) + if list and len>0 then + local index=Random.RangeInt(1,len) + BattleLogic.BuffMgr:ClearBuff(targetRole, function (buff) + return buff==list[index] + end) + end + end) + end + + local OnSkillCast = function(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then + role.Event:AddEvent(BattleEventName.RoleTreat,onRoleTreat,nil,nil,role) + end + end + local OnSkillCastEnd = function(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra or skill.type==BattleSkillType.DeadSkill then + role.Event:RemoveEvent(BattleEventName.RoleTreat,onRoleTreat,nil,nil,role) + end + end + role.Event:AddEvent(BattleEventName.SkillCast, OnSkillCast,nil,nil,role) + role.Event:AddEvent(BattleEventName.SkillCastEnd, OnSkillCastEnd,nil,nil,role) + end, } return passivityList \ No newline at end of file diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua index cfc14b2bd0..507b2e3d61 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleDefine.lua @@ -184,6 +184,7 @@ BattleEventName = { RoleAddCtrlBuff = indexAdd(),--角色添加控制类buff CastRageBrfore = indexAdd(),--扣除怒气之前 PassiveAddCritDamageFactor = indexAdd(), --被动增加爆伤系数 + PassiveChangeIgnoreImmuneValue = indexAdd(),--被动修改无视 } BattleMaxFrame = 1000000 @@ -215,8 +216,8 @@ RoleDataName = { FoReduce = indexAdd(), --佛系伤害减免 YaoReduce = indexAdd(), --妖系伤害减免 DaoReduce = indexAdd(), --道系伤害减免 - InitRage = indexAdd(), --初始怒气值 CritDamageReduce = indexAdd(), --暴击伤害减免 + InitRage = indexAdd(), --初始怒气值 } -- 战斗表属性id对应战斗中属性数据 diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua index 389fcb7613..88f1941739 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua @@ -979,12 +979,22 @@ function BattleUtil.CalDamage(skill, atkRole, defRole, damageType, baseFactor, i defRole.Event:DispatchEvent(BattleEventName.CritDamageReduceFactor, onCritDamageReduceFactor, atkRole, defRole) BattleLogic.Event:DispatchEvent(BattleEventName.CritDamageReduceFactor, onCritDamageReduceFactor, atkRole, defRole) critDamageReduceFactor = max(BattleUtil.CountChangeList(critDamageReduceFactor, cl), 0) - - -- 计算额外暴击伤害 - critDamageFactor = 1.3 + atkRole:GetRoleData(RoleDataName.CritDamageBonus) - defRole:GetRoleData(RoleDataName.CritDamageReduce) - critDamageReduceFactor + + local critDamageAddFactor=0 --加入被动效果 触发暴击被动 - local critFunc = function(critEx) critDamageFactor = critEx end - atkRole.Event:DispatchEvent(BattleEventName.PassiveCriting, critFunc,skill) + local cl2 = {} + local onCritDamageAddFactor = function(v, ct) + if v then + table.insert(cl2, {v, ct}) + end + end + atkRole.Event:DispatchEvent(BattleEventName.PassiveAddCritDamageFactor, onCritDamageAddFactor, atkRole, defRole) + critDamageAddFactor = max(BattleUtil.CountChangeList(critDamageAddFactor, cl2), 0) + -- 计算额外暴击伤害 + critDamageFactor = 1.3 + atkRole:GetRoleData(RoleDataName.CritDamageBonus) - defRole:GetRoleData(RoleDataName.CritDamageReduce)+critDamageAddFactor - critDamageReduceFactor + --加入被动效果 触发暴击被动 废弃不用 + -- local critFunc = function(critEx) critDamageFactor = critEx end + -- atkRole.Event:DispatchEvent(BattleEventName.PassiveCriting, critFunc,skill) end -- 计算克制伤害系数 @@ -1066,8 +1076,8 @@ function BattleUtil.FinalTreat(castRole, targetRole, value, baseFactor,skill) targetRole.data:AddValue(RoleDataName.Hp, treat) end - castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat) - targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat) + castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat,skill) + targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat,skill) --添加发送到battleLogic的治疗消息,用于计算总的战斗伤害值 BattleLogic.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat) -- 战斗记录用 @@ -1131,8 +1141,8 @@ function BattleUtil.ApplyTreat(castRole, targetRole, value, baseFactor,critDamag if treat > 0 then targetRole.data:AddValue(RoleDataName.Hp, treat) end - castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat) - targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat) + castRole.Event:DispatchEvent(BattleEventName.RoleTreat, targetRole, treat, baseTreat,skill) + targetRole.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat,skill) --添加发送到battleLogic的治疗消息,用于计算总的战斗伤害值 BattleLogic.Event:DispatchEvent(BattleEventName.RoleBeTreated, castRole, treat, baseTreat) -- 战斗记录用 diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Role/RoleLogic.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Role/RoleLogic.lua index 142674f7df..e9b2f74337 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Role/RoleLogic.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Role/RoleLogic.lua @@ -346,17 +346,27 @@ function RoleLogic:AddBuff(buff) "missF", missF) -- 如果概率为0 或者没有miss if missF == 0 or not BattleUtil.RandomAction(missF, function() BattleLogic.BuffMgr:PutBuff(buff) end) then - for i=1, self.buffFilter.size do - if self.buffFilter.buffer[i](buff,self) then - BattleLogManager.Log( - "Buff Filter", - "camp", buff.caster.camp, - "position", buff.caster.position, - "id", buff.id, - "type", buff.type) - BattleLogic.BuffMgr:PutBuff(buff) - BattleLogic.Event:DispatchEvent(BattleEventName.RoleAddBuffFail,buff,self) - return + + --概率忽略免疫 + local ignoreProb=0 + local changeIgnore=function(v1,ct) + ignoreProb=BattleUtil.CountValue(ignoreProb,v1,ct) + end + buff.caster.Event:DispatchEvent(BattleEventName.PassiveChangeIgnoreImmuneValue,changeIgnore,buff) + local isIgnor=BattleUtil.RandomAction(ignoreProb,function()end) + if not isIgnor then + for i=1, self.buffFilter.size do + if self.buffFilter.buffer[i](buff,self) then + BattleLogManager.Log( + "Buff Filter", + "camp", buff.caster.camp, + "position", buff.caster.position, + "id", buff.id, + "type", buff.type) + BattleLogic.BuffMgr:PutBuff(buff) + BattleLogic.Event:DispatchEvent(BattleEventName.RoleAddBuffFail,buff,self) + return + end end end BattleLogic.BuffMgr:AddBuff(self, buff) diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/EnemyView.lua b/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/EnemyView.lua index 3ed0e19415..27ed58902c 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/EnemyView.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/EnemyView.lua @@ -289,7 +289,8 @@ function EnemyView:DoScale(scale, dur, func) if self.dsTween2 then self.dsTween2:Kill() end - local liveScale = self.role.position <= 3 and 0.6 or 0.5 + --local liveScale = self.role.position <= 3 and 0.6 or 0.5 + local liveScale=0.6 self.dsTween2 = self.RoleLiveGO.transform.parent:DOScale(Vector3.one * liveScale * scale, dur) end diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/PlayerView.lua b/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/PlayerView.lua index f0fe3fb7d4..cf51dd608a 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/PlayerView.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/View/Unit/PlayerView.lua @@ -101,7 +101,7 @@ function PlayerView:onCreate(go, role, position, root) --self.RootPanel.PlayerPanel, "live_"..position self.RoleLiveGO.transform:SetParent(Util.GetTransform(self.RootPanel.PlayerPanel, "live_"..position)) self.RoleLiveGO:GetComponent("RectTransform").anchoredPosition = Vector2.New(self.outOffset[1], self.outOffset[2])-- * 0.5 - self.RoleLiveGO.transform.localScale = Vector3.one * self.enemy_liveScale + self.RoleLiveGO.transform.localScale = Vector3.one * self.play_liveScale self.RoleLiveGO:SetActive(true) @@ -121,7 +121,7 @@ function PlayerView:onCreate(go, role, position, root) -- casting技能立绘 self.RoleLiveGO2 = poolManager:LoadLive(self.livePath, go.transform.parent, Vector3.one, Vector3.zero) self.RoleLiveGO2.transform:SetParent(self.RootPanel.mySkillCastRoot.transform) - self.RoleLiveGO2.transform.localScale = Vector3.one * self.enemy_liveScale -- * 0.75--* 1.5 + self.RoleLiveGO2.transform.localScale = Vector3.one * self.play_liveScale -- * 0.75--* 1.5 self.RoleLiveGO2.transform.anchoredPosition = Vector2.New(self.outOffset[1], self.outOffset[2] - 300) self.RoleLiveGO2:SetActive(false) self.RoleLiveGOGraphic2 = self.RoleLiveGO2:GetComponent("SkeletonGraphic") @@ -151,7 +151,7 @@ function PlayerView:onCreate(go, role, position, root) self.rageText.text = "" self.lvHpObj=Util.GetGameObject(go, "lvObj") if position<=3 then - self.lvHpObj:GetComponent("RectTransform").anchoredPosition=Vector3.New(0,450,0) + self.lvHpObj:GetComponent("RectTransform").anchoredPosition=Vector3.New(0,485,0) else self.lvHpObj:GetComponent("RectTransform").anchoredPosition=Vector3.New(0,0,0) end @@ -313,7 +313,8 @@ function PlayerView:DoScale(scale, dur, func) if self.dsTween2 then self.dsTween2:Kill() end - local liveScale = self.role.position <= 3 and 0.6 or 0.5 + --local liveScale = self.role.position <= 3 and 0.6 or 0.5 + local liveScale = 0.6 self.dsTween2 = self.RoleLiveGO.transform.parent:DOScale(Vector3.one * liveScale * scale, dur) end diff --git a/Assets/ManagedResources/~Lua/Modules/Hero/HeroManager.lua b/Assets/ManagedResources/~Lua/Modules/Hero/HeroManager.lua index a5595afef8..bb4c28c090 100644 --- a/Assets/ManagedResources/~Lua/Modules/Hero/HeroManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Hero/HeroManager.lua @@ -2213,10 +2213,10 @@ function this.CalculateWarAllProVal(heroDid) table.insert(allProVal, 23, allEquipAddProVal[HeroProType.YaoReduce]) -- 道系伤害减免 table.insert(allProVal, 24, allEquipAddProVal[HeroProType.DaoReduce]) - -- 怒气 - table.insert(allProVal, 25, allEquipAddProVal[HeroProType.InitRage]) -- 爆伤减免 - table.insert(allProVal, 26, allEquipAddProVal[HeroProType.AntiCritDamageFactor]) + table.insert(allProVal, 25, allEquipAddProVal[HeroProType.AntiCritDamageFactor]) + -- 怒气 + table.insert(allProVal, 26, allEquipAddProVal[HeroProType.InitRage]) return allProVal end diff --git a/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua b/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua index 0e6dec6aa1..d2998aaddb 100644 --- a/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua @@ -150,6 +150,25 @@ function RewardItemSingleShowPopup:BindEvent() self:ClosePanel() end) end,Language[10731],Language[10732],Language[11511],false,"") + elseif itemConfigData.ItemType == ItemType.ZuoQiChip then + local sum = BagManager.GetItemCountById(itemSid) / BagManager.bagDatas[itemSid].itemConfig.UsePerCount + sum = math.floor(sum) + if sum >= 2 then + local _itemData = BagManager.bagDatas[itemSid] + UIManager.OpenPanel(UIName.BagResolveAnCompoundPanel, 3, _itemData, function() + func() + end) + elseif sum >= 1 then + local _itemData = BagManager.bagDatas[itemSid] + local item={} + item.itemId= _itemData.id + item.itemNum= sum * _itemData.itemConfig.UsePerCount + NetManager.HeroComposeRequest(item,function (drop) + this.SendBackCompoundReCallBack(drop) + end) + else + PopupTipPanel.ShowTip(Language[11509]) + end else local _itemData = BagManager.bagDatas[itemSid] UIManager.OpenPanel(UIName.BagResolveAnCompoundPanel, 3, _itemData, function() @@ -312,7 +331,10 @@ function RewardItemSingleShowPopup:OnShow() elseif isBagPanel and itemConfigData.IfResolve == 1 and func then--是否可分解 this.btnSure:SetActive(true) this.btnSureText.text = Language[10197] - elseif isBagPanel and itemConfigData.ItemType == 2 and func then--是否是碎片可合成 + elseif isBagPanel and func --是否是碎片可合成 + and (itemConfigData.ItemType == ItemType.HeroDebris + or itemConfigData.ItemType == ItemType.ZuoQiChip) + then this.btnSureText.text = Language[10193] this.btnSure:SetActive(true) elseif isBagPanel and itemConfigData.ItemType == 10 and func then--是否宝箱可使用