diff --git a/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua b/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua index 5c9ed7547e..cc7a39544d 100644 --- a/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua +++ b/Assets/ManagedResources/~Lua/Common/GlobalDefine.lua @@ -808,7 +808,7 @@ JumpType = { DailyCarbon_Hero=69, --每日角色碎片副本 DailyCarbon_Transure=70, --每日法宝副本 DailyCarbon_SoulPrint=71, --每日魂印副本 - DeathPos=71, --十绝阵 + DeathPos=72, --十绝阵 GuildCarDelay=73 , --车迟斗法 BuyVigor = 10000, --体力购买 BuyGold = 10001, --金币购买 diff --git a/Assets/ManagedResources/~Lua/Framework/Manager/CardRendererManager.lua b/Assets/ManagedResources/~Lua/Framework/Manager/CardRendererManager.lua index 5e4d2c6394..41187a768a 100644 --- a/Assets/ManagedResources/~Lua/Framework/Manager/CardRendererManager.lua +++ b/Assets/ManagedResources/~Lua/Framework/Manager/CardRendererManager.lua @@ -17,6 +17,7 @@ function CardRendererManager.Initialize() this.indexFlag = 0 this.liveList = {} + this.usingList = {} end @@ -52,7 +53,7 @@ function CardRendererManager.GetSpineTexture(liveName, scaleV3, posV3, isReuse, node = liveNode } -- - return this.textureList[this.indexFlag], this.liveList[this.indexFlag].node + return this.textureList[this.indexFlag], this.liveList[this.indexFlag].node, this.indexFlag end -- 判断是否存在 @@ -65,6 +66,19 @@ function this.CheckIsExist(liveName) end +-- 检测是否正在使用 +function this.CheckIsUsing(index) + return this.usingList[index] +end +-- 设置是否正在使用 +function this.SetUsing(index, isUsing) + this.usingList[index] = isUsing +end +-- 清除使用列表 +function this.ClearUsing() + this.usingList = {} +end + function CardRendererManager.Dispose() GameObject.DestroyImmediate(this.root) diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/View/BattleBestPopup.lua b/Assets/ManagedResources/~Lua/Modules/Battle/View/BattleBestPopup.lua index ca4677443e..2e3843bcf8 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/View/BattleBestPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/View/BattleBestPopup.lua @@ -31,6 +31,7 @@ function BattleBestPopup:BindEvent() end function this:OnOpen(heroTId, damageValue, allDamage, func,_func2) + func2 = _func2 -- 创建立绘 local heroTData = ConfigManager.GetConfigData(ConfigName.HeroConfig, heroTId) this.liveName = GetResourcePath(heroTData.Live) @@ -58,7 +59,6 @@ function this:OnOpen(heroTId, damageValue, allDamage, func,_func2) -- 结束回调 this._OverFunc = func - func2 = _func2 -- 开始播放动画 Timer.New(function() if this._OverFunc then diff --git a/Assets/ManagedResources/~Lua/Modules/Carbon/CarbonManager.lua b/Assets/ManagedResources/~Lua/Modules/Carbon/CarbonManager.lua index 5497c27f4f..0294e0e1ff 100644 --- a/Assets/ManagedResources/~Lua/Modules/Carbon/CarbonManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Carbon/CarbonManager.lua @@ -521,23 +521,38 @@ function this.InitQuickFightData(monsterGroupId, eventId, msg) battledHp = this.GetMapTotalBlood() + -- if this.difficulty == 1 or this.difficulty == 3 or this.difficulty == 4 then + -- PopupText(strShow, 0.5, 2) + -- elseif this.difficulty == 2 then + -- -- UIManager.OpenPanel(UIName.BattleEndPanel, nil, data.hpList, data.drop, func) + -- UIManager.OpenPanel(UIName.RewardItemPopup,data.drop,1, + -- -- Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) + -- func + -- ) + -- end + -- func = nil + -- LogPink(" MapManager.curTriggerPos ".. MapManager.curTriggerPos) + -- Game.GlobalEvent:DispatchEvent(GameEvent.Map.PointRemove, MapManager.curTriggerPos) + -- -- 试炼副本不能直接结束事件点 + -- if this.difficulty ~= 2 then + -- Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) + -- end + + if this.difficulty == 1 or this.difficulty == 3 or this.difficulty == 4 then PopupText(strShow, 0.5, 2) + Game.GlobalEvent:DispatchEvent(GameEvent.Map.PointRemove, MapManager.curTriggerPos) elseif this.difficulty == 2 then - -- UIManager.OpenPanel(UIName.BattleEndPanel, nil, data.hpList, data.drop, func) - UIManager.OpenPanel(UIName.RewardItemPopup,data.drop,1, - -- Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) - func - ) + Game.GlobalEvent:DispatchEvent(GameEvent.Map.PointRemove, MapManager.curTriggerPos) + UIManager.OpenPanel(UIName.RewardItemPopup,data.drop,1,func) end func = nil - LogPink(" MapManager.curTriggerPos ".. MapManager.curTriggerPos) - Game.GlobalEvent:DispatchEvent(GameEvent.Map.PointRemove, MapManager.curTriggerPos) -- 试炼副本不能直接结束事件点 if this.difficulty ~= 2 then Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) end + end Game.GlobalEvent:DispatchEvent(GameEvent.Formation.OnMapTeamHpReduce, oldHp - battledHp) diff --git a/Assets/ManagedResources/~Lua/Modules/Carbon/DailyCarbonPanel.lua b/Assets/ManagedResources/~Lua/Modules/Carbon/DailyCarbonPanel.lua index e7587976e5..4d404fdad9 100644 --- a/Assets/ManagedResources/~Lua/Modules/Carbon/DailyCarbonPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Carbon/DailyCarbonPanel.lua @@ -171,20 +171,34 @@ function this.SetData(root, data, ldata) ResetItemView(root,reward.transform,itemList,3,0.9,orginLayer,false,data.RewardView) --解锁状态 - -- local _lv=0 --等级 - -- local _point=0 --关卡 - local _power = data.ForceShow--表战力 - -- if data.OpenRules[2] ~= nil and data.OpenRules[1][1] == 1 then - -- _lv = data.OpenRules[1][2] - -- end - -- if data.OpenRules[1] ~= nil and data.OpenRules[1][1] == 2 then - -- _point= data.OpenRules[1][2] - -- end - -- if data.OpenRules[2][1]==3 then - -- _power= data.OpenRules[2][2] - -- end + local _lv=0 --等级 + local _point=0 --关卡 + local _power = 0 --data.ForceShow--表战力 - local isOpen = not ldata or CarbonManager.IsDailyCarbonPass(ldata.Id) + for i = 1, #data.OpenRules do + if data.OpenRules[i][1] == 1 then + _lv = data.OpenRules[i][2] + elseif data.OpenRules[i][1] == 2 then + _point = data.OpenRules[i][2] + elseif data.OpenRules[i][1] == 3 then + _power = data.OpenRules[i][2] + end + end + if data.OpenRules[2] ~= nil and data.OpenRules[1][1] == 1 then + _lv = data.OpenRules[1][2] + end + if data.OpenRules[1] ~= nil and data.OpenRules[1][1] == 2 then + _point= data.OpenRules[1][2] + end + if data.OpenRules[2][1]==3 then + _power= data.OpenRules[2][2] + end + + -- 判断每日副本是否解锁 + local isOpen = (not ldata or CarbonManager.IsDailyCarbonPass(ldata.Id)) -- 上一个副本解锁 + and PlayerManager.level >= _lv -- 等级 + and (_point == 0 or FightPointPassManager.IsFightPointPass(_point)) + and PlayerManager.maxForce >= _power -- 战斗力 --显示挑战或扫荡道具消耗 goIcon:SetActive(isOpen and freeTime<=0) goIconNum:SetActive( isOpen and freeTime<=0) @@ -213,19 +227,26 @@ function this.SetData(root, data, ldata) --点击事件 Util.AddOnceClick(goBtn,function() + + if PlayerManager.level<_lv then + PopupTipPanel.ShowTip(string.format(Language[10340],_lv)) + return + elseif PlayerManager.maxForce < _power then + PopupTipPanel.ShowTip(string.format("战斗力到达%s解锁", _power)) + return + elseif _point ~= 0 and not FightPointPassManager.IsFightPointPass(_point) then + PopupTipPanel.ShowTip(string.format("通关%s解锁", mainLevelConfig[_point].Name)) + return + elseif PlayerManager.curMapId ~= 0 and FightPointPassManager.IsFightPointPass(PlayerManager.curMapId)==false then + PopupTipPanel.ShowTip(string.format(Language[10341],mainLevelConfig[_point].Name)) + return + end + if not isOpen then PopupTipPanel.ShowTip(Language[12191]) return end - -- if PlayerManager.level<_lv then - -- PopupTipPanel.ShowTip(string.format(Language[10340],_lv)) - -- return - -- elseif PlayerManager.curMapId ~= 0 and FightPointPassManager.IsFightPointPass(PlayerManager.curMapId)==false then - -- PopupTipPanel.ShowTip(string.format(Language[10341],mainLevelConfig[_point].Name)) - -- return - -- end - --检测剩余次数 if buyTime<=0 and freeTime<=0 then PopupTipPanel.ShowTip(Language[10342]) diff --git a/Assets/ManagedResources/~Lua/Modules/Guild/GuildMemberInfoPopup.lua b/Assets/ManagedResources/~Lua/Modules/Guild/GuildMemberInfoPopup.lua index ea38a3d25f..d8155d031a 100644 --- a/Assets/ManagedResources/~Lua/Modules/Guild/GuildMemberInfoPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Guild/GuildMemberInfoPopup.lua @@ -280,6 +280,7 @@ function this.FormationAdapter(teamInfo) local demonId = teamInfo.team[i].heroTid local starGrid=Util.GetGameObject(demon, "starGrid") local proImage=Util.GetGameObject(demon, "heroShow/proIcon"):GetComponent("Image") + Util.GetGameObject(demon, "heroShow/posIcon"):SetActive(false) -- local posImage=Util.GetGameObject(demon, "heroShow/posIcon"):GetComponent("Image") -- local heroStage = Util.GetGameObject(demon, "heroShow/heroStage"):GetComponent("Image") local UI_Effect_Kuang_JinSe=Util.GetGameObject(demon, "effects/UI_Effect_Kuang_JinSe") diff --git a/Assets/ManagedResources/~Lua/Modules/LuckyTurnTable/LuckyTurnTablePanel.lua b/Assets/ManagedResources/~Lua/Modules/LuckyTurnTable/LuckyTurnTablePanel.lua index 7e5e3b502b..a06344be05 100644 --- a/Assets/ManagedResources/~Lua/Modules/LuckyTurnTable/LuckyTurnTablePanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/LuckyTurnTable/LuckyTurnTablePanel.lua @@ -157,15 +157,12 @@ function LuckyTurnTablePanel:RemoveListener() end ---界面打开时调用(用于子类重写) -function LuckyTurnTablePanel:OnOpen(...) - +function LuckyTurnTablePanel:OnOpen(_TreasureType) + LuckyTurnTableManager.curTreasureType =_TreasureType and _TreasureType or TreasureType.Lucky end ---界面打开或者重新打开后,界面刷新时调用(用于子类重写) -function LuckyTurnTablePanel:OnShow(_TreasureType)--_upView,expertPanel, - - --this.upView = _upView - LuckyTurnTableManager.curTreasureType =_TreasureType and _TreasureType or TreasureType.Lucky +function LuckyTurnTablePanel:OnShow() if LuckyTurnTableManager.curTreasureType==TreasureType.Lucky then--防止当前为高级探宝时 按下探宝后跳转到幸运探宝 this.LuckyTurnOnShow(TreasureType.Lucky) elseif LuckyTurnTableManager.curTreasureType==TreasureType.Advanced then diff --git a/Assets/ManagedResources/~Lua/Modules/Map/TrialMapPanel.lua b/Assets/ManagedResources/~Lua/Modules/Map/TrialMapPanel.lua index e9673d9b03..24f71abb91 100644 --- a/Assets/ManagedResources/~Lua/Modules/Map/TrialMapPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Map/TrialMapPanel.lua @@ -330,14 +330,14 @@ function this.OnSortingOrderChange() orginLayer = MapPanel.sortingOrder end -function this.InitBossInfo() - if powerValue ==-1 then - UIManager.OpenPanel(UIName.TrialOpPanel, 1) - -- 停止自动寻路 - -- ctrlView.OnRoleDead() +-- function this.InitBossInfo() +-- if powerValue ==-1 then +-- UIManager.OpenPanel(UIName.TrialOpPanel, 1) +-- -- 停止自动寻路 +-- -- ctrlView.OnRoleDead() - end -end +-- end +-- end -- 初始化部buff显示 diff --git a/Assets/ManagedResources/~Lua/Modules/Map/View/PointHandleView.lua b/Assets/ManagedResources/~Lua/Modules/Map/View/PointHandleView.lua index 2635b6e864..1cb5b33ed7 100644 --- a/Assets/ManagedResources/~Lua/Modules/Map/View/PointHandleView.lua +++ b/Assets/ManagedResources/~Lua/Modules/Map/View/PointHandleView.lua @@ -394,7 +394,7 @@ function this.CheckFieldOfView(u, v) end function this.OnAddPoint(pos, pointId) - LogPink("pointId "..pointId) + -- LogPink("pointId "..pointId) if pos and not this.EventPoint[pos] then local u, v = Map_Pos2UV(pos) LogPink(u.." "..v) diff --git a/Assets/ManagedResources/~Lua/Modules/Mission/MissionManager.lua b/Assets/ManagedResources/~Lua/Modules/Mission/MissionManager.lua index 4371abc874..6d5ef10e30 100644 --- a/Assets/ManagedResources/~Lua/Modules/Mission/MissionManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Mission/MissionManager.lua @@ -283,16 +283,9 @@ local mapDialoguePanel = function(showType, eventId, showValues, options) -- UIManager.OpenPanel(UIName.MapOptionPanel, showType, eventId, showValues, options) -- LogPink("MissionManager showType"..showType.." eventId"..eventId) -- end - if eventId == 2000001 or eventId == 2000002 then - -- 打开general界面 - UIManager.OpenPanel(UIName.GeneralPopup,GENERAL_POPUP_TYPE.TrialToNextFloor,eventId) - elseif eventId == 2000005 then - -- 直接加buff走人 - NetManager.EventUpdateRequest(2000005, 2000011, function () - Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) - Game.GlobalEvent:DispatchEvent(GameEvent.Map.ProgressChange, 1, 2000011) - end) + if not UIManager.IsOpen(UIName.GeneralPopup) then + UIManager.OpenPanel(UIName.GeneralPopup,GENERAL_POPUP_TYPE.TrialToNextFloor, showType, eventId, showValues, options) end end @@ -403,9 +396,13 @@ end -- 试炼Buff界面 local trailBuffPanel = function(showType, eventId, showValues, options) - if not UIManager.IsOpen(UIName.BuffOptionPanel) then - UIManager.OpenPanel(UIName.BuffOptionPanel, eventId) - end + NetManager.EventUpdateRequest(eventId, options[1], function () + Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) + Game.GlobalEvent:DispatchEvent(GameEvent.Map.ProgressChange, 1, options[1]) + end) + -- if not UIManager.IsOpen(UIName.BuffOptionPanel) then + -- UIManager.OpenPanel(UIName.BuffOptionPanel, eventId) + -- end end -- 无尽商店 @@ -529,10 +526,13 @@ function this.GetAllRewardTrigger() -- end) Timer.New(function () for key, value in pairs(MapManager.mapPointList) do - -- LogPink("["..key.."] "..value) + LogPink("["..key.."] "..value) if value==2000000 then Game.GlobalEvent:DispatchEvent(GameEvent.Map.PointRemove,key)--删除全部宝箱点 end + -- if EventPointConfig[value].ShowType == 17 then + -- Game.GlobalEvent:DispatchEvent(GameEvent.Map.PointRemove,key)--删除所有的buff点 + -- end end UIManager.OpenPanel(UIName.RewardItemPopup,msg.boxDrop,1,function() Game.GlobalEvent:DispatchEvent(GameEvent.Event.PointTriggerEnd) diff --git a/Assets/ManagedResources/~Lua/Modules/Player/JumpManager.lua b/Assets/ManagedResources/~Lua/Modules/Player/JumpManager.lua index 47e151f787..806f589b5d 100644 --- a/Assets/ManagedResources/~Lua/Modules/Player/JumpManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Player/JumpManager.lua @@ -538,7 +538,7 @@ function this.GoJump(_jumpId) if jumpSData then if jumpSData.Type < 10000 then local serData = ActTimeCtrlManager.GetSerDataByTypeId(jumpSData.Type) - if serData then + if serData then if ActTimeCtrlManager.SingleFuncState(jumpSData.Type) then jumpDic[jumpSData.Type](jumpSData.Skipfactor) else diff --git a/Assets/ManagedResources/~Lua/Modules/Popup/BattleWinPopup.lua b/Assets/ManagedResources/~Lua/Modules/Popup/BattleWinPopup.lua index 5bd0055af0..a1e7602e3a 100644 --- a/Assets/ManagedResources/~Lua/Modules/Popup/BattleWinPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Popup/BattleWinPopup.lua @@ -104,23 +104,7 @@ function BattleWinPopup:NextStep() end end UIManager.OpenPanel(UIName.BattleBestPopup, bestData.roleId, bestData.damage, allDamage, function(_BattleBestPopup) - local keys = GameDataBase.SheetBase.GetKeys(ConfigManager.GetConfig(ConfigName.ExpeditionFloorConfig)) - --Log("GetCurNodeInfo.lay == #keys "..GetCurNodeInfo.lay .." ".. #keys.." "..GetCurNodeInfo.state) - if GetCurNodeInfo.lay == #keys and GetCurNodeInfo.state == ExpeditionNodeState.Finish then--打完最后一层 - UIManager.OpenPanel(UIName.RewardItemPopup,m_battleResult.drop, 1,function() - if m_battlePanel then - m_battlePanel:ClosePanel() - end - if _BattleBestPopup then - _BattleBestPopup:ClosePanel() - end - if UIManager.GetOpenPanel(UIName.ExpeditionMainPanel) then - UIManager.OpenPanel(UIName.ExpeditionMainPanel) - end - end, 0,true,true) - else --贪婪节点不弹领取圣物 - --LogError("GetCurNodeInfo.type "..GetCurNodeInfo.type) if GetCurNodeInfo.type == ExpeditionNodeType.Greed then--贪婪节点 if m_battleResult.drop.itemlist and #m_battleResult.drop.itemlist > 0 then LogGreen("m_battleResult.drop.itemlist "..#m_battleResult.drop.itemlist) @@ -146,10 +130,6 @@ function BattleWinPopup:NextStep() m_battlePanel:ClosePanel() end PopupTipPanel.ShowTip(Language[12192]) - --if _BattleBestPopup then - -- _BattleBestPopup:ClosePanel() - --end - --Game.GlobalEvent:DispatchEvent(GameEvent.Expedition.RefreshPlayAniMainPanel) else UIManager.OpenPanel(UIName.RewardItemPopup,m_battleResult.drop, 1,function() if m_battlePanel then @@ -161,10 +141,12 @@ function BattleWinPopup:NextStep() if GetCurNodeInfo.holyEquipID and #GetCurNodeInfo.holyEquipID > 0 then UIManager.OpenPanel(UIName.ExpeditionSelectHalidomPanel,true,function () end) + else + --此时战斗了但没有圣物 所有直接刷新界面动画 后并刷新界面 + Game.GlobalEvent:DispatchEvent(GameEvent.Expedition.RefreshPlayAniMainPanel) end end, 0,true,true) end - end end,func2) end elseif m_fightType==9 then diff --git a/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua b/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua index 1f2c042797..2ffe3198d6 100644 --- a/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Popup/RewardItemSingleShowPopup.lua @@ -85,7 +85,7 @@ function RewardItemSingleShowPopup:BindEvent() end) Util.AddClick(this.btnJump, function() if itemConfigData then - JumpManager.GoJump(itemConfigData.UseJump) + JumpManager.GoJump(itemConfigData.Jump) end end) end diff --git a/Assets/ManagedResources/~Lua/Modules/Popup/RewardTalismanSingleShowPopup.lua b/Assets/ManagedResources/~Lua/Modules/Popup/RewardTalismanSingleShowPopup.lua index 79b8dd9edb..a2cb1a853c 100644 --- a/Assets/ManagedResources/~Lua/Modules/Popup/RewardTalismanSingleShowPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/Popup/RewardTalismanSingleShowPopup.lua @@ -124,6 +124,7 @@ function RewardTalismanSingleShowPopup:OnShowPanelData() else self.powerNum1.text=EquipTreasureManager.CalculateWarForceBySid(sId,lv,refineLv) itemConfig = ConfigManager.GetConfigData(ConfigName.ItemConfig,sId) + LogBlue("sId:"..sId) curEquipTreasureFigData = ConfigManager.GetConfigData(ConfigName.JewelConfig, sId) curEquipTreasureStrongFigData,curEquipTreasureSefineFigData = self:GetStrongAndRefineConFig(curEquipTreasureFigData,lv,refineLv) end @@ -178,7 +179,11 @@ function RewardTalismanSingleShowPopup:OnShowPanelData() local proConFig = ConfigManager.GetConfigData(ConfigName.PropertyConfig,curEquipTreasureSefineFigData.Property[i][1]) if proConFig then Util.GetGameObject(go.transform, "proName"):GetComponent("Text").text =proConFig.Info - Util.GetGameObject(go.transform, "proVale"):GetComponent("Text").text = "+"..GetEquipPropertyFormatStr(proConFig.Style,curEquipTreasureSefineFigData.Property[i][2]) + if curEquipTreasureSefineFigData.Property[i][2]==0 and proConFig.Style~=1 then + Util.GetGameObject(go.transform, "proVale"):GetComponent("Text").text = "+0%" + else + Util.GetGameObject(go.transform, "proVale"):GetComponent("Text").text = "+"..GetEquipPropertyFormatStr(proConFig.Style,curEquipTreasureSefineFigData.Property[i][2]) + end end end else diff --git a/Assets/ManagedResources/~Lua/Modules/Popup/View/GeneralPopup_TrialToNextFloor.lua b/Assets/ManagedResources/~Lua/Modules/Popup/View/GeneralPopup_TrialToNextFloor.lua index 7f3208cdf2..c4ec8b1192 100644 --- a/Assets/ManagedResources/~Lua/Modules/Popup/View/GeneralPopup_TrialToNextFloor.lua +++ b/Assets/ManagedResources/~Lua/Modules/Popup/View/GeneralPopup_TrialToNextFloor.lua @@ -1,6 +1,10 @@ ----- 试炼进入下一层 ----- local this = {} +local showType local eventId +local showValues +local options +local eventConfig = ConfigManager.GetConfig(ConfigName.EventPointConfig) function this:InitComponent(gameObject) this.bodyText = Util.GetGameObject(gameObject,"BodyText"):GetComponent("Text") @@ -15,11 +19,8 @@ function this:BindEvent() end) Util.AddClick(this.btnSure,function() - if eventId==2000001 then - OptionBehaviourManager.JumpEventPoint(2000001, 2000001,UIManager.GetOpenPanel(UIName.GeneralPopup)) - elseif eventId==2000002 then - OptionBehaviourManager.JumpEventPoint(2000002, 2000003,UIManager.GetOpenPanel(UIName.GeneralPopup)) - end + local optionId = eventConfig[eventId].Option[1] + OptionBehaviourManager.JumpEventPoint(eventId, optionId,UIManager.GetOpenPanel(UIName.GeneralPopup)) end) end @@ -29,8 +30,11 @@ end function this:RemoveListener() end -function this:OnShow(this,...) - eventId = ... +function this:OnShow(this,_showType, _eventId, _showValues, _options) + showType = _showType + eventId = _eventId + showValues = _showValues + options = _options end function this:OnClose() diff --git a/Assets/ManagedResources/~Lua/Modules/Resolve/HeroAndEquipResolvePanel.lua b/Assets/ManagedResources/~Lua/Modules/Resolve/HeroAndEquipResolvePanel.lua index 2541e122ff..56cd94886a 100644 --- a/Assets/ManagedResources/~Lua/Modules/Resolve/HeroAndEquipResolvePanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Resolve/HeroAndEquipResolvePanel.lua @@ -800,9 +800,9 @@ function this.QuickSelectListData() end) elseif tabType == 3 then selectEquipTreasureData={} - for k, v in pairs(equipTreasureData) do + for k,v in pairs(equipTreasureData) do if LengthOfTable(selectEquipTreasureData)<30 then - selectEquipTreasureData[v.did]=v + selectEquipTreasureData[v.idDyn]=v else break end @@ -1042,7 +1042,6 @@ function this.ResolveBtnClickEvent() if #itemMaxList>0 then--是否分解物品有超过物品上限的 this.GetItemIsBeyondMaxNum(type,curResolveAllItemList) else - LogError("type "..type.." "..LengthOfTable(curResolveAllItemList)) NetManager.UseAndPriceItemRequest(type,curResolveAllItemList,function (drop) this.SendBackResolveReCallBack(drop) end) diff --git a/Assets/ManagedResources/~Lua/Modules/RoleInfo/EquipTreasureStrongPopup.lua b/Assets/ManagedResources/~Lua/Modules/RoleInfo/EquipTreasureStrongPopup.lua index 56c54df03c..a2cf8d2d60 100644 --- a/Assets/ManagedResources/~Lua/Modules/RoleInfo/EquipTreasureStrongPopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/RoleInfo/EquipTreasureStrongPopup.lua @@ -156,27 +156,16 @@ function EquipTreasureStrongPopup:BindEvent() end) end ---添加事件监听(用于子类重写) -function EquipTreasureStrongPopup:AddListener() - -end - ---移除事件监听(用于子类重写) -function EquipTreasureStrongPopup:RemoveListener() - -end - --界面打开时调用(用于子类重写) function EquipTreasureStrongPopup:OnOpen(...) local datas={...} curEquipData=datas[1] type=datas[2] - this.SetWindShow(type) + end function EquipTreasureStrongPopup:OnShow() - - + this.SetWindShow(type) end --设置界面显示 1.强化 2.精炼 diff --git a/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipPanel.lua b/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipPanel.lua index 2d6f40e89c..ee5d976487 100644 --- a/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipPanel.lua @@ -6,43 +6,50 @@ RoleEquipPanel = Inherit(BasePanel) -- Lv = 2 --} local PosIdConst = { - All = 0,--全部 - WuQi = 1,--武器 - ZhanFu = 2,--战服 - TouShi = 3,--头饰 - ZhanXue = 4,--战靴 - Hun = 5,--魂宝 - Ling = 6,--灵宝 + All = 0, + --全部 + WuQi = 1, + --武器 + ZhanFu = 2, + --战服 + TouShi = 3, + --头饰 + ZhanXue = 4, + --战靴 + Hun = 5, + --魂宝 + Ling = 6 + --灵宝 } -local this=RoleEquipPanel -local curHeroEquipDatas={} +local this = RoleEquipPanel +local curHeroEquipDatas = {} local curHeroData local heroListData local curSelectEquipData local index -local indexBtnNum=0 -local typeTab = { Language[10427], Language[10428], Language[10429], Language[10430], Language[10505],Language[10506] } +local indexBtnNum = 0 +local typeTab = {Language[10427], Language[10428], Language[10429], Language[10430], Language[10505], Language[10506]} local tabs = {} local openThisPanel -local effectList={} +local effectList = {} local orginLayer1 local orginLayer local isUpZhen = false local teamHero = {} local itemConfig = ConfigManager.GetConfig(ConfigName.ItemConfig) local jewerConfigs = ConfigManager.GetConfig(ConfigName.JewelConfig) -local currPageIndex=0 +local currPageIndex = 0 local curEquipTreasureDatas = {} local isCanUpEquipTreasure = false +local equiptip = "" --初始化组件(用于子类重写)RoleEquipChangePopup function RoleEquipPanel:InitComponent() - orginLayer = 10 - orginLayer1={0,0,0,0,0,0} - this.bg2 = Util.GetGameObject(self.transform,"bg2") + orginLayer1 = {0, 0, 0, 0, 0, 0} + this.bg2 = Util.GetGameObject(self.transform, "bg2") screenAdapte(this.bg2) - this.UpView = SubUIManager.Open(SubUIConfig.UpView, self.gameObject.transform, { showType = UpViewOpenType.ShowLeft}) - this.btnBack= Util.GetGameObject(self.transform, "btnBack/btnBack") + this.UpView = SubUIManager.Open(SubUIConfig.UpView, self.gameObject.transform, {showType = UpViewOpenType.ShowLeft}) + this.btnBack = Util.GetGameObject(self.transform, "btnBack/btnBack") --英雄 this.heroBg = Util.GetGameObject(self.transform, "bg/heroInfo/bg"):GetComponent("Image") this.heroLv = Util.GetGameObject(self.transform, "bg/heroInfo/lv/Text"):GetComponent("Text") @@ -55,25 +62,25 @@ function RoleEquipPanel:InitComponent() this.heroStarGrid = Util.GetGameObject(self.transform, "bg/heroInfo/star") this.heroStarPre = Util.GetGameObject(self.transform, "bg/heroInfo/starPre") --英雄身上的装备 - this.equipGrid=Util.GetGameObject(self.transform,"bg/equipInfo") + this.equipGrid = Util.GetGameObject(self.transform, "bg/equipInfo") local scale = (Screen.width / Screen.height / 1080 * 1920 + 1) / 2 if scale < 1 then for i = 1, this.equipGrid.transform.childCount do - Util.SetParticleScale(Util.GetGameObject(this.equipGrid.transform:GetChild(i-1),"effect"), scale) + Util.SetParticleScale(Util.GetGameObject(this.equipGrid.transform:GetChild(i - 1), "effect"), scale) end end --装备list - this.effect=Util.GetGameObject(self.transform,"bg/effect") + this.effect = Util.GetGameObject(self.transform, "bg/effect") for i = 0, 6 do tabs[i] = Util.GetGameObject(self.transform, "Tabs/Btn" .. i) - effectList[i] = Util.GetGameObject(self.transform, "bg/equipInfo/equip".. i.."/effect") + effectList[i] = Util.GetGameObject(self.transform, "bg/equipInfo/equip" .. i .. "/effect") end this.selectBtn = Util.GetGameObject(self.gameObject, "selectBtn") this.btnPrant = Util.GetGameObject(self.gameObject, "Tabs") this.equipPre = Util.GetGameObject(self.gameObject, "equipPre") this.grid = Util.GetGameObject(self.gameObject, "scroll/grid") - this.selsectSkillImage=Util.GetGameObject(self.gameObject, "selsectSkillImage") + this.selsectSkillImage = Util.GetGameObject(self.gameObject, "selsectSkillImage") this.ShaiXuanBtn = Util.GetGameObject(self.gameObject, "ShaiXuanBtn") this.ShaiXuanBtn:SetActive(false) @@ -83,69 +90,98 @@ function RoleEquipPanel:InitComponent() this.rightBtn = Util.GetGameObject(self.transform, "rightBtn/GameObject") this.allEquipUp = Util.GetGameObject(self.transform, "allEquipUp") this.allEquipDown = Util.GetGameObject(self.transform, "allEquipDown") - this.allEquipUpRedPoint=Util.GetGameObject(self.transform,"allEquipUp/redPoint") + this.allEquipUpRedPoint = Util.GetGameObject(self.transform, "allEquipUp/redPoint") - this.ScrollBar=Util.GetGameObject(self.gameObject, "Scrollbar"):GetComponent("Scrollbar") + this.ScrollBar = Util.GetGameObject(self.gameObject, "Scrollbar"):GetComponent("Scrollbar") local v2 = Util.GetGameObject(self.gameObject, "scroll"):GetComponent("RectTransform").rect - this.ScrollView = SubUIManager.Open(SubUIConfig.ScrollCycleView, Util.GetGameObject(self.transform, "scroll").transform, - this.equipPre, this.ScrollBar, Vector2.New(-v2.x*2, -v2.y*2), 1, 5, Vector2.New(50,15)) + this.ScrollView = + SubUIManager.Open( + SubUIConfig.ScrollCycleView, + Util.GetGameObject(self.transform, "scroll").transform, + this.equipPre, + this.ScrollBar, + Vector2.New(-v2.x * 2, -v2.y * 2), + 1, + 5, + Vector2.New(50, 15) + ) this.ScrollView.moveTween.MomentumAmount = 1 this.ScrollView.moveTween.Strength = 1 this.force = Util.GetGameObject(self.transform, "powerBtn/value"):GetComponent("Text") this.itemNumText = Util.GetGameObject(self.transform, "itemNumText"):GetComponent("Text") - this.upLvEffect = Util.GetGameObject(self.transform,"powerBtn/effect") - this.equipTreasureBtn = Util.GetGameObject(self.transform,"equipTreasureBtn") - this.treasure1=Util.GetGameObject(self.transform,"bg/equipInfo/equip5") - this.treasure2=Util.GetGameObject(self.transform,"bg/equipInfo/equip6") - this.treasurePage1=Util.GetGameObject(self.transform,"Tabs/Btn5") - this.treasurePage2=Util.GetGameObject(self.transform,"Tabs/Btn6") - this.emptyObj=Util.GetGameObject(self.transform,"emptyObj") + this.upLvEffect = Util.GetGameObject(self.transform, "powerBtn/effect") + this.equipTreasureBtn = Util.GetGameObject(self.transform, "equipTreasureBtn") + this.treasure1 = Util.GetGameObject(self.transform, "bg/equipInfo/equip5") + this.treasure2 = Util.GetGameObject(self.transform, "bg/equipInfo/equip6") + this.treasurePage1 = Util.GetGameObject(self.transform, "Tabs/Btn5") + this.treasurePage2 = Util.GetGameObject(self.transform, "Tabs/Btn6") + this.emptyObj = Util.GetGameObject(self.transform, "emptyObj") this.emptyObj.gameObject:SetActive(false) end --绑定事件(用于子类重写) function RoleEquipPanel:BindEvent() - - Util.AddClick(this.btnBack, function() - PlaySoundWithoutClick(SoundConfig.Sound_UICancel) - if openThisPanel.RefreshHeroDatas then - openThisPanel:RefreshHeroDatas(curHeroData,HeroManager.GetAllHeroDatas()) - end - self:ClosePanel() - end) - Util.AddClick(this.leftBtn, function() - this:LeftBtnOnClick() - end) - - Util.AddClick(this.rightBtn, function() - this:RightBtnOnClick() - end) - Util.AddClick(this.allEquipUp, function() - this:AllEquipUpBtnOnClick() - end) - - Util.AddClick(this.allEquipDown, function() - this:AllEquipDownBtnOnClick() - end) - for i = 0, 6 do - Util.AddClick(tabs[i], function() - if i == indexBtnNum then - indexBtnNum=PosIdConst.All - this:OnClickAllBtn() - else - indexBtnNum=i - this:OnClickTabBtn(indexBtnNum) + Util.AddClick( + this.btnBack, + function() + PlaySoundWithoutClick(SoundConfig.Sound_UICancel) + if openThisPanel.RefreshHeroDatas then + openThisPanel:RefreshHeroDatas(curHeroData, HeroManager.GetAllHeroDatas()) end - end) - end - Util.AddClick(this.equipTreasureBtn, function() - if LengthOfTable(curEquipTreasureDatas)<2 then - PopupTipPanel.ShowTip(Language[11825]) - return + self:ClosePanel() end - UIManager.OpenPanel(UIName.EquipTreasureResonancePanel,curHeroData) - end) + ) + Util.AddClick( + this.leftBtn, + function() + this:LeftBtnOnClick() + end + ) + + Util.AddClick( + this.rightBtn, + function() + this:RightBtnOnClick() + end + ) + Util.AddClick( + this.allEquipUp, + function() + this:AllEquipUpBtnOnClick() + end + ) + + Util.AddClick( + this.allEquipDown, + function() + this:AllEquipDownBtnOnClick() + end + ) + for i = 0, 6 do + Util.AddClick( + tabs[i], + function() + if i == indexBtnNum then + indexBtnNum = PosIdConst.All + this:OnClickAllBtn() + else + indexBtnNum = i + this:OnClickTabBtn(indexBtnNum) + end + end + ) + end + Util.AddClick( + this.equipTreasureBtn, + function() + if LengthOfTable(curEquipTreasureDatas) < 2 then + PopupTipPanel.ShowTip(Language[11825]) + return + end + UIManager.OpenPanel(UIName.EquipTreasureResonancePanel, curHeroData) + end + ) end --添加事件监听(用于子类重写) @@ -168,23 +204,21 @@ function this.CurrEquipDataChange() end --界面打开时调用(用于子类重写) function RoleEquipPanel:OnOpen(...) - - local data={...} + local data = {...} if data[1] then - curHeroData=data[1] - HeroManager.roleEquipPanelCurHeroData=data[1] + curHeroData = data[1] + HeroManager.roleEquipPanelCurHeroData = data[1] else - curHeroData=HeroManager.roleEquipPanelCurHeroData + curHeroData = HeroManager.roleEquipPanelCurHeroData end if data[2] then - heroListData=data[2] - HeroManager.roleEquipPanelHeroListData=data[2] + heroListData = data[2] + HeroManager.roleEquipPanelHeroListData = data[2] else - heroListData=HeroManager.GetAllHeroDatas() + heroListData = HeroManager.GetAllHeroDatas() end - openThisPanel=data[3] + openThisPanel = data[3] isUpZhen = data[4] - end function RoleEquipPanel:OnShow() for i = 1, #heroListData do @@ -193,15 +227,15 @@ function RoleEquipPanel:OnShow() end end for i = 1, 6 do - if(effectList[i]~=nil) then + if (effectList[i] ~= nil) then effectList[i]:SetActive(false) end end - indexBtnNum=PosIdConst.All - teamHero=FormationManager.GetAllFormationHeroId() + indexBtnNum = PosIdConst.All + teamHero = FormationManager.GetAllFormationHeroId() this.ShowHeroEquip(true) this:OnClickAllBtn() - this.UpView:OnOpen({ showType = UpViewOpenType.ShowLeft, panelType = PanelType.Main }) + this.UpView:OnOpen({showType = UpViewOpenType.ShowLeft, panelType = PanelType.Main}) end function this:OnSortingOrderChange() @@ -233,168 +267,193 @@ function this:LeftBtnOnClick() end --一键装备 function this:AllEquipUpBtnOnClick() - local allEquipIds={} - local allTreasureIds={} + local allEquipIds = {} + local allTreasureIds = {} --计算英雄身上的所有装备位的装备 - local curHeroEquipDatas={} - for k,v in ipairs(curHeroData.equipIdList) do - local equipData=EquipManager.GetSingleEquipData(v) - if equipData~=nil then - curHeroEquipDatas[equipData.equipConfig.Position]=equipData + local curHeroEquipDatas = {} + for k, v in ipairs(curHeroData.equipIdList) do + local equipData = EquipManager.GetSingleEquipData(v) + if equipData ~= nil then + curHeroEquipDatas[equipData.equipConfig.Position] = equipData end end --宝物数据 - for k,v in ipairs(curHeroData.jewels) do - local equipData=EquipTreasureManager.GetSingleTreasureByIdDyn(v) - if equipData~=nil then - curHeroEquipDatas[equipData.equipType+4]=equipData + for k, v in ipairs(curHeroData.jewels) do + local equipData = EquipTreasureManager.GetSingleTreasureByIdDyn(v) + if equipData ~= nil then + curHeroEquipDatas[equipData.equipType + 4] = equipData end end - local equipEffectPos={} - local treasureEffectPos={} - --如果身上的装备 带锁 则不替换 + local equipEffectPos = {} + local treasureEffectPos = {} for i = 1, 6 do - local curPosEquip = {} - local index=i - if curHeroEquipDatas[i] then - if curHeroEquipDatas[i].isLocked == 0 then - curPosEquip = EquipManager.GetEquipDataByEquipJobAndPos(i,curHeroData.heroConfig.Profession,curHeroData.dynamicId) - else - curPosEquip = {curHeroEquipDatas[i]} - end - else - if index==5 or index==6 and isCanUpEquipTreasure then - curPosEquip=EquipTreasureManager.GetTreasureDataByPos(index,curHeroData.dynamicId,curHeroData.heroConfig.PropertyName) - else - curPosEquip = EquipManager.GetEquipDataByEquipJobAndPos(i,curHeroData.heroConfig.Profession,curHeroData.dynamicId) - end + --这个curHeroData职业(妖人道佛)可以穿的index对应位置(武器战服头饰战靴魂宝灵宝)所有装备,包括这个英雄穿的 + local curPosEquip = {} + local index = i + if index == 5 or index == 6 then + curPosEquip = + EquipTreasureManager.GetTreasureDataByPos( + index, + curHeroData.dynamicId, + curHeroData.heroConfig.PropertyName + ) + elseif index < 5 then + curPosEquip = + EquipManager.GetEquipDataByEquipJobAndPos(i, curHeroData.heroConfig.Profession, curHeroData.dynamicId) end + + --curEquip.idDyn 存在 是宝物 + --curEquip.did 存在 是装备 --计算每个位置可装备的装备战力 取战力最大的装备 - if curPosEquip and #curPosEquip>0 then - local equiData={} - local indexMaxPower=0 + if curPosEquip and #curPosEquip > 0 then + local equiData = {} + local indexMaxPower = 0 + + if curHeroEquipDatas[index] then + equiData = curHeroEquipDatas[index] + if equiData.idDyn then + indexMaxPower = EquipTreasureManager.CalculateWarForce(equiData.idDyn) + else + indexMaxPower = EquipManager.CalculateWarForce(equiData.did) + end + end + for i = 1, #curPosEquip do - local addPower=0 - local curEquip = curPosEquip[i] + local addPower = 0 + local curEquip = curPosEquip[i] if curEquip then if curEquip.idDyn then - addPower=EquipTreasureManager.CalculateWarForce(curEquip.idDyn) + addPower = EquipTreasureManager.CalculateWarForce(curEquip.idDyn) else addPower = EquipManager.CalculateWarForce(curEquip.did) end end - if addPower>=indexMaxPower then - indexMaxPower=addPower - equiData=curEquip + if addPower > indexMaxPower then + indexMaxPower = addPower + equiData = curEquip end end - if equiData.idDyn and isCanUpEquipTreasure then - table.insert(allTreasureIds,equiData.idDyn) + if equiData.idDyn then + --if (curHeroEquipDatas[index] and equiData.idDyn ~= curHeroEquipDatas[index].idDyn) or not curHeroEquipDatas[index] then + table.insert(allTreasureIds, equiData.idDyn) + --end else - table.insert(allEquipIds,equiData.did) + --if (curHeroEquipDatas[index] and equiData.did ~= curHeroEquipDatas[index].did) or not curHeroEquipDatas[index] then + table.insert(allEquipIds, equiData.did) + --end end --特效 - - if curHeroEquipDatas[equiData.position] then + if curHeroEquipDatas[index] then if equiData.idDyn then - if equiData.idDyn ~= curHeroEquipDatas[equiData.position].idDyn then - table.insert(treasureEffectPos,i) + if equiData.idDyn ~= curHeroEquipDatas[index].idDyn then + table.insert(treasureEffectPos, i) end else - if equiData.did ~= curHeroEquipDatas[equiData.position].did then - table.insert(equipEffectPos,i) + if equiData.did ~= curHeroEquipDatas[index].did then + table.insert(equipEffectPos, i) end end - else --table.insert(showEffectPos,i) end end end - --isCanUpEquipTreasure - if allEquipIds and #allEquipIds>0 then - --for i = 1, #allEquipIds do - -- LogGreen(curHeroData.dynamicId.. " "..curHeroData.id .." "..curHeroData.lv.." 一键穿装备 "..i.." "..allEquipIds[i]) - --end - --穿装备协议 - NetManager.EquipWearRequest(curHeroData.dynamicId,allEquipIds ,1,function () - this.UpdateEquipPosHeroData(1,4,allEquipIds) - --特效播放 - if equipEffectPos then - for i = 1, #equipEffectPos do - effectList[equipEffectPos[i]]:SetActive(false) - effectList[equipEffectPos[i]]:SetActive(true) - end - end - end) - else - PopupTipPanel.ShowTip(Language[11826]) - end - if isCanUpEquipTreasure then - --if EquipTreasureManager.OpenTreasure(curHeroData.star) then - --穿戴宝物 - if allTreasureIds and #allTreasureIds>0 then - --for i = 1, #allEquipIds do - -- Log(curHeroData.dynamicId.. " "..curHeroData.id .." "..curHeroData.lv.." 一键宝物 "..i.." "..allEquipIds[i]) - --end - --穿装备协议 - NetManager.EquipWearRequest(curHeroData.dynamicId,allTreasureIds ,2,function () - this.UpdateEquipPosHeroData(2,4,allTreasureIds) + if (allEquipIds and #allEquipIds > 0) or (allTreasureIds and #allTreasureIds > 0 and isCanUpEquipTreasure) then + if allEquipIds and #allEquipIds > 0 then + --for i = 1, #allEquipIds do + -- LogGreen(curHeroData.dynamicId.. " "..curHeroData.id .." "..curHeroData.lv.." 一键穿装备 "..i.." "..allEquipIds[i]) + --end + --穿装备协议 + NetManager.EquipWearRequest( + curHeroData.dynamicId, + allEquipIds, + 1, + function() + this.UpdateEquipPosHeroData(1, 4, allEquipIds) + --特效播放 + if equipEffectPos then + for i = 1, #equipEffectPos do + effectList[equipEffectPos[i]]:SetActive(false) + effectList[equipEffectPos[i]]:SetActive(true) + end + end + end + ) + end + if allTreasureIds and #allTreasureIds > 0 then + --for i = 1, #allEquipIds do + -- Log(curHeroData.dynamicId.. " "..curHeroData.id .." "..curHeroData.lv.." 一键宝物 "..i.." "..allEquipIds[i]) + --end + --穿装备协议 + NetManager.EquipWearRequest( + curHeroData.dynamicId, + allTreasureIds, + 2, + function() + this.UpdateEquipPosHeroData(2, 4, allTreasureIds) --特效播放 for i, v in pairs(treasureEffectPos) do effectList[v]:SetActive(false) effectList[v]:SetActive(true) end - end) - else - PopupTipPanel.ShowTip(Language[11827]) - end - --end + end + ) + end + else + if allTreasureIds and #allTreasureIds > 0 and not isCanUpEquipTreasure then + PopupTipPanel.ShowTip(equiptip) --没有装备可装备! + else + PopupTipPanel.ShowTip(Language[11826]) --没有装备可装备! + end end - PlaySoundWithoutClick(SoundConfig.Sound_Wear) - this.ShowHeroEquip() end - - - - --一键卸下 function this:AllEquipDownBtnOnClick() - if curHeroData.equipIdList and #curHeroData.equipIdList>0 then - NetManager.EquipUnLoadOptRequest(curHeroData.dynamicId,curHeroData.equipIdList,1 ,function () - this.UpdateEquipPosHeroData(1,5,curHeroData.equipIdList) - end) + if curHeroData.equipIdList and #curHeroData.equipIdList > 0 then + NetManager.EquipUnLoadOptRequest( + curHeroData.dynamicId, + curHeroData.equipIdList, + 1, + function() + this.UpdateEquipPosHeroData(1, 5, curHeroData.equipIdList) + end + ) else PopupTipPanel.ShowTip(Language[11828]) end --寶物 - if curHeroData.jewels and #curHeroData.jewels>0 then - NetManager.EquipUnLoadOptRequest(curHeroData.dynamicId,curHeroData.jewels,2 ,function () - this.UpdateEquipPosHeroData(2,5,curHeroData.jewels) - end) + if curHeroData.jewels and #curHeroData.jewels > 0 then -- 一键卸下音效 + NetManager.EquipUnLoadOptRequest( + curHeroData.dynamicId, + curHeroData.jewels, + 2, + function() + this.UpdateEquipPosHeroData(2, 5, curHeroData.jewels) + end + ) else PopupTipPanel.ShowTip(Language[11828]) end PlaySoundWithoutClick(SoundConfig.Sound_TakeOff) this.ShowHeroEquip() - -- this:OnClickTabBtn(indexBtnNum) + -- this:OnClickTabBtn(indexBtnNum) end function this.ShowHeroEquip() --装备 if curHeroData and spcialConfig then - local config=spcialConfig[40] + local config = spcialConfig[40] if config then local limits = string.split(config.Value, "|") if limits then - local lvs=string.split(limits[1],"#") - local stars=string.split(limits[2],"#") - if PlayerManager.level>=tonumber(lvs[2]) and curHeroData.star >=tonumber(stars[2]) then + local lvs = string.split(limits[1], "#") + local stars = string.split(limits[2], "#") + if PlayerManager.level >= tonumber(lvs[2]) and curHeroData.star >= tonumber(stars[2]) then isCanUpEquipTreasure = true this.equipTreasureBtn.gameObject:SetActive(true) this.treasure1.gameObject:SetActive(true) @@ -402,6 +461,11 @@ function this.ShowHeroEquip() this.treasurePage1.gameObject:SetActive(true) this.treasurePage2.gameObject:SetActive(true) else + if PlayerManager.level < tonumber(lvs[2]) then + equiptip= PopupTipPanel.ShowTip(string.format(Language[11829],lvs[2])) + elseif curHeroData.star < tonumber(stars[2]) then + equiptip=PopupTipPanel.ShowTip(string.format(Language[11830],stars[2])) + end isCanUpEquipTreasure = false this.equipTreasureBtn.gameObject:SetActive(false) this.treasure1.gameObject:SetActive(false) @@ -420,40 +484,42 @@ function this.ShowHeroEquip() --this.heroStage.sprite = Util.LoadSprite(HeroStageSprite[curHeroData.heroConfig.HeroStage]) SetHeroStars(this.heroStarGrid, curHeroData.star) --装备的数据 - curHeroEquipDatas={} + curHeroEquipDatas = {} for i = 1, #curHeroData.equipIdList do - local equipData=EquipManager.GetSingleEquipData(curHeroData.equipIdList[i]) - if equipData~=nil then - curHeroEquipDatas[equipData.equipConfig.Position]=equipData + local equipData = EquipManager.GetSingleEquipData(curHeroData.equipIdList[i]) + if equipData ~= nil then + curHeroEquipDatas[equipData.equipConfig.Position] = equipData end end --宝器的数据 - curEquipTreasureDatas={} + curEquipTreasureDatas = {} --LogError("#curHeroData.jewels "..#curHeroData.jewels) for i = 1, #curHeroData.jewels do - local treasureData=EquipTreasureManager.GetSingleEquipTreasreData(curHeroData.jewels[i]) - if treasureData~=nil then - local id=treasureData.id - local pos=jewerConfigs[id].Location+4 - curEquipTreasureDatas[pos]=treasureData + local treasureData = EquipTreasureManager.GetSingleEquipTreasreData(curHeroData.jewels[i]) + if treasureData ~= nil then + local id = treasureData.id + local pos = jewerConfigs[id].Location + 4 + curEquipTreasureDatas[pos] = treasureData end end --this.equipTreasureBtn:SetActive(LengthOfTable(curEquipTreasureDatas) >= 2) for i = 1, this.equipGrid.transform.childCount do - local go= this.equipGrid.transform:GetChild(i-1).gameObject - local effect= Util.GetGameObject(go.transform,"effect") + local go = this.equipGrid.transform:GetChild(i - 1).gameObject + local effect = Util.GetGameObject(go.transform, "effect") screenAdapte(effect) Util.AddParticleSortLayer(effect, this.sortingOrder - orginLayer1[i]) - orginLayer1[i]=this.sortingOrder - effectList[i]=effect - local lvObj=Util.GetGameObject(go.transform,"lv") - local refineObj=Util.GetGameObject(go.transform,"refine") + orginLayer1[i] = this.sortingOrder + effectList[i] = effect + local lvObj = Util.GetGameObject(go.transform, "lv") + local refineObj = Util.GetGameObject(go.transform, "refine") if curHeroEquipDatas[i] then - Util.GetGameObject(go.transform,"frame"):SetActive(true) - Util.GetGameObject(go.transform,"mask"):SetActive(false) + Util.GetGameObject(go.transform, "frame"):SetActive(true) + Util.GetGameObject(go.transform, "mask"):SetActive(false) --Util.GetGameObject(go.transform,"proIcon"):SetActive(false) - Util.GetGameObject(go.transform,"frame/icon"):GetComponent("Image").sprite=Util.LoadSprite(curHeroEquipDatas[i].icon) - Util.GetGameObject(go.transform,"frame"):GetComponent("Image").sprite=Util.LoadSprite(curHeroEquipDatas[i].frame) + Util.GetGameObject(go.transform, "frame/icon"):GetComponent("Image").sprite = + Util.LoadSprite(curHeroEquipDatas[i].icon) + Util.GetGameObject(go.transform, "frame"):GetComponent("Image").sprite = + Util.LoadSprite(curHeroEquipDatas[i].frame) --Util.GetGameObject(go.transform,"proIcon"):GetComponent("Image").sprite=Util.LoadSprite(curHeroEquipDatas[i].frame) if lvObj then lvObj:SetActive(false) @@ -461,34 +527,38 @@ function this.ShowHeroEquip() if refineObj then refineObj:SetActive(false) end - EquipManager.SetEquipStarShow(Util.GetGameObject(go.transform,"frame/star"),curHeroEquipDatas[i].itemConfig.Id) + EquipManager.SetEquipStarShow( + Util.GetGameObject(go.transform, "frame/star"), + curHeroEquipDatas[i].itemConfig.Id + ) elseif curEquipTreasureDatas[i] then - Util.GetGameObject(go.transform,"frame"):SetActive(true) - Util.GetGameObject(go.transform,"mask"):SetActive(false) + Util.GetGameObject(go.transform, "frame"):SetActive(true) + Util.GetGameObject(go.transform, "mask"):SetActive(false) --Util.GetGameObject(go.transform,"proIcon"):SetActive(true) - Util.GetGameObject(go.transform,"frame/icon"):GetComponent("Image").sprite=Util.LoadSprite(curEquipTreasureDatas[i].icon) - Util.GetGameObject(go.transform,"frame"):GetComponent("Image").sprite=Util.LoadSprite(curEquipTreasureDatas[i].frame) + Util.GetGameObject(go.transform, "frame/icon"):GetComponent("Image").sprite = + Util.LoadSprite(curEquipTreasureDatas[i].icon) + Util.GetGameObject(go.transform, "frame"):GetComponent("Image").sprite = + Util.LoadSprite(curEquipTreasureDatas[i].frame) --Util.GetGameObject(go.transform,"proIcon"):GetComponent("Image").sprite=Util.LoadSprite(GetProStrImageByProNum(curEquipTreasureDatas[i].itemConfig.PropertyName)) - Util.GetGameObject(go.transform,"frame/star"):SetActive(false) - Util.GetGameObject(go.transform,"num").gameObject:SetActive(false) - if curEquipTreasureDatas[i].lv>0 and lvObj then - lvObj:GetComponent("Text").text=curEquipTreasureDatas[i].lv + Util.GetGameObject(go.transform, "frame/star"):SetActive(false) + Util.GetGameObject(go.transform, "num").gameObject:SetActive(false) + if curEquipTreasureDatas[i].lv > 0 and lvObj then + lvObj:GetComponent("Text").text = curEquipTreasureDatas[i].lv lvObj:SetActive(true) else lvObj:SetActive(false) end - if curEquipTreasureDatas[i].refineLv>0 then - refineObj:GetComponent("Text").text="+" ..curEquipTreasureDatas[i].refineLv + if curEquipTreasureDatas[i].refineLv > 0 then + refineObj:GetComponent("Text").text = "+" .. curEquipTreasureDatas[i].refineLv refineObj:SetActive(true) else refineObj:SetActive(false) end - else - Util.GetGameObject(go.transform,"frame"):SetActive(false) - Util.GetGameObject(go.transform,"mask"):SetActive(true) - if Util.GetGameObject(go.transform,"num") then - Util.GetGameObject(go.transform,"num").gameObject:SetActive(false) + Util.GetGameObject(go.transform, "frame"):SetActive(false) + Util.GetGameObject(go.transform, "mask"):SetActive(true) + if Util.GetGameObject(go.transform, "num") then + Util.GetGameObject(go.transform, "num").gameObject:SetActive(false) end if lvObj then lvObj:SetActive(false) @@ -496,37 +566,48 @@ function this.ShowHeroEquip() if refineObj then refineObj:SetActive(false) end - end - local iconBtn=Util.GetGameObject(go.transform,"icon") - Util.AddOnceClick(iconBtn, function() - if curHeroEquipDatas[i] then - curSelectEquipData=curHeroEquipDatas[i] - UIManager.OpenPanel(UIName.RoleEquipChangePopup,this,2,curHeroData,curHeroEquipDatas[i]) - elseif curEquipTreasureDatas[i] then - if itemConfig[curEquipTreasureDatas[i].id].ItemType == ItemType.EquipTreasure then - local pos=0; - local jewerConfig=ConfigManager.TryGetConfigData(ConfigName.JewelConfig,curEquipTreasureDatas[i].id) - if jewerConfig then - if jewerConfig.Location==1 then - pos=5 - elseif jewerConfig.Location==2 then - pos=6 + local iconBtn = Util.GetGameObject(go.transform, "icon") + Util.AddOnceClick( + iconBtn, + function() + if curHeroEquipDatas[i] then + curSelectEquipData = curHeroEquipDatas[i] + UIManager.OpenPanel(UIName.RoleEquipChangePopup, this, 2, curHeroData, curHeroEquipDatas[i]) + elseif curEquipTreasureDatas[i] then + if itemConfig[curEquipTreasureDatas[i].id].ItemType == ItemType.EquipTreasure then + local pos = 0 + local jewerConfig = + ConfigManager.TryGetConfigData(ConfigName.JewelConfig, curEquipTreasureDatas[i].id) + if jewerConfig then + if jewerConfig.Location == 1 then + pos = 5 + elseif jewerConfig.Location == 2 then + pos = 6 + end + UIManager.OpenPanel( + UIName.RoleEquipTreasureChangePopup, + this, + 2, + curHeroData, + curEquipTreasureDatas[i], + nil, + pos + ) end - UIManager.OpenPanel(UIName.RoleEquipTreasureChangePopup,this,2,curHeroData,curEquipTreasureDatas[i],nil,pos) end end end - end) + ) end - local allAddProVal=HeroManager.CalculateHeroAllProValList(1,curHeroData.dynamicId,false) - this.force.text =allAddProVal[HeroProType.WarPower] + local allAddProVal = HeroManager.CalculateHeroAllProValList(1, curHeroData.dynamicId, false) + this.force.text = allAddProVal[HeroProType.WarPower] end function this:SetSelectBtn() this.selectBtn:SetActive(indexBtnNum ~= PosIdConst.All) if indexBtnNum ~= PosIdConst.All then this.selectBtn.transform:SetParent(tabs[indexBtnNum].transform) - this.selectBtn.transform.localPosition =Vector3(0,-8,0) + this.selectBtn.transform.localPosition = Vector3(0, -8, 0) --this.selectBtn.transform.localScale = Vector3.one --this.selectBtn:GetComponent("Image"):SetNativeSize() Util.GetGameObject(this.selectBtn.transform, "Text"):GetComponent("Text").text = typeTab[indexBtnNum] @@ -537,14 +618,14 @@ end function this:OnClickAllBtn() this:SetSelectBtn() local itemData = EquipManager.GetAllEquipData() - itemData=this:EquipListFilter(itemData) + itemData = this:EquipListFilter(itemData) itemData = this:EquipDJDatas(itemData) this:SortEquipDatas(itemData) --加上宝器数据 local curAllEquipTreasure = EquipTreasureManager.GetAllTreasures(curHeroData.heroConfig.PropertyName) --宝器排序 - for i=1,#curAllEquipTreasure do - table.insert( itemData, curAllEquipTreasure[i] ) + for i = 1, #curAllEquipTreasure do + table.insert(itemData, curAllEquipTreasure[i]) end this:SetItemData(itemData) end @@ -554,24 +635,28 @@ function this:OnClickTabBtn(_index) if _index < 5 then local allEquip allEquip = EquipManager.GetEquipDataByEquipPosition(_index) - allEquip=this:EquipListFilter(allEquip) + allEquip = this:EquipListFilter(allEquip) allEquip = this:EquipDJDatas(allEquip) this:SortEquipDatas(allEquip) this:SetItemData(allEquip) else local allEquipTreasure - allEquipTreasure = EquipTreasureManager.GetAllTreasuresByLocation(_index - 4,curHeroData.heroConfig.PropertyName) - table.sort(allEquipTreasure, function(a, b) - if a.refineLv == b.refineLv then - if a.lv == b.lv then - return a.id > b.id + allEquipTreasure = + EquipTreasureManager.GetAllTreasuresByLocation(_index - 4, curHeroData.heroConfig.PropertyName) + table.sort( + allEquipTreasure, + function(a, b) + if a.refineLv == b.refineLv then + if a.lv == b.lv then + return a.id > b.id + else + return a.lv > b.lv + end else - return a.lv > b.lv + return a.refineLv > b.refineLv end - else - return a.refineLv > b.refineLv end - end) + ) this:SetItemData(allEquipTreasure) end end @@ -579,8 +664,8 @@ end local curHeroCanUpEquipTabs = {} function this:SetItemData(_itemDatas) --LogError(" " ..LengthOfTable(_itemDatas) ) - this.itemNumText.text = Language[10188]..LengthOfTable(_itemDatas) - if LengthOfTable(_itemDatas)==0 then + this.itemNumText.text = Language[10188] .. LengthOfTable(_itemDatas) + if LengthOfTable(_itemDatas) == 0 then this.emptyObj.gameObject:SetActive(true) else this.emptyObj.gameObject:SetActive(false) @@ -601,74 +686,91 @@ function this:SetItemData(_itemDatas) -- for i, v in pairs(equips) do -- table.insert(showList, v) -- end - this.ScrollView:SetData(_itemDatas, function (index, go) - - this.SingleItemDataShow(go, _itemDatas[index]) - end) + this.ScrollView:SetData( + _itemDatas, + function(index, go) + this.SingleItemDataShow(go, _itemDatas[index]) + end + ) end -function this.SingleItemDataShow(_go,_itemData) - if not itemConfig[_itemData.id] then return end - local frame = Util.GetGameObject(_go.transform,"frame"):GetComponent("Image") - local icon =Util.GetGameObject(_go.transform,"icon"):GetComponent("Image") - local name = Util.GetGameObject(_go.transform,"name"):GetComponent("Text") - local star = Util.GetGameObject(_go.transform,"star") - local proIcon = Util.GetGameObject(_go.transform,"proIcon") - local jewerConfig=ConfigManager.TryGetConfigData(ConfigName.JewelConfig, _itemData.id) - local pos=0; +function this.SingleItemDataShow(_go, _itemData) + if not itemConfig[_itemData.id] then + return + end + local frame = Util.GetGameObject(_go.transform, "frame"):GetComponent("Image") + local icon = Util.GetGameObject(_go.transform, "icon"):GetComponent("Image") + local name = Util.GetGameObject(_go.transform, "name"):GetComponent("Text") + local star = Util.GetGameObject(_go.transform, "star") + local proIcon = Util.GetGameObject(_go.transform, "proIcon") + local jewerConfig = ConfigManager.TryGetConfigData(ConfigName.JewelConfig, _itemData.id) + local pos = 0 if jewerConfig then - if jewerConfig.Location==1 then - pos=5 - else if jewerConfig.Location==2 then - pos=6 + if jewerConfig.Location == 1 then + pos = 5 + else + if jewerConfig.Location == 2 then + pos = 6 + end end end - end - local lvObj=Util.GetGameObject(_go.transform,"lv"):GetComponent("Text") - local refineObj=Util.GetGameObject(_go.transform,"refine"):GetComponent("Text") + local lvObj = Util.GetGameObject(_go.transform, "lv"):GetComponent("Text") + local refineObj = Util.GetGameObject(_go.transform, "refine"):GetComponent("Text") if itemConfig[_itemData.id].ItemType == ItemType.EquipTreasure then - icon.sprite=Util.LoadSprite(_itemData.icon) - frame.sprite=Util.LoadSprite(_itemData.frame) + icon.sprite = Util.LoadSprite(_itemData.icon) + frame.sprite = Util.LoadSprite(_itemData.frame) proIcon:SetActive(true) - proIcon:GetComponent("Image").sprite=Util.LoadSprite(GetProStrImageByProNum(_itemData.itemConfig.PropertyName)) - name.text=itemConfig[_itemData.id].Name + proIcon:GetComponent("Image").sprite = + Util.LoadSprite(GetProStrImageByProNum(_itemData.itemConfig.PropertyName)) + name.text = itemConfig[_itemData.id].Name star:SetActive(false) - Util.GetGameObject(_go.transform,"redPoint"):SetActive(false) - lvObj.text=_itemData.lv - if _itemData.lv>0 then + Util.GetGameObject(_go.transform, "redPoint"):SetActive(false) + lvObj.text = _itemData.lv + if _itemData.lv > 0 then lvObj.gameObject:SetActive(true) else lvObj.gameObject:SetActive(false) end - refineObj.text="+".._itemData.refineLv - if _itemData.refineLv>0 then + refineObj.text = "+" .. _itemData.refineLv + if _itemData.refineLv > 0 then refineObj.gameObject:SetActive(true) else refineObj.gameObject:SetActive(false) end - Util.GetGameObject(_go.transform,"num").gameObject:SetActive(false) + Util.GetGameObject(_go.transform, "num").gameObject:SetActive(false) -- 0.查看属性 1.穿戴 2.卸下 3.交换 - --宝物界面 - Util.AddOnceClick(Util.GetGameObject(_go.transform,"icon"), function() - if curEquipTreasureDatas[pos] then - UIManager.OpenPanel(UIName.RoleEquipTreasureChangePopup,this,3,curHeroData,curEquipTreasureDatas[pos],_itemData,pos) - else - UIManager.OpenPanel(UIName.RoleEquipTreasureChangePopup,this,1,curHeroData,_itemData,nil,pos) - end - end) + --宝物界面 + Util.AddOnceClick( + Util.GetGameObject(_go.transform, "icon"), + function() + if curEquipTreasureDatas[pos] then + UIManager.OpenPanel( + UIName.RoleEquipTreasureChangePopup, + this, + 3, + curHeroData, + curEquipTreasureDatas[pos], + _itemData, + pos + ) + else + UIManager.OpenPanel(UIName.RoleEquipTreasureChangePopup, this, 1, curHeroData, _itemData, nil, pos) + end + end + ) else - frame.sprite=Util.LoadSprite(_itemData.frame) - icon.sprite=Util.LoadSprite(_itemData.icon) + frame.sprite = Util.LoadSprite(_itemData.frame) + icon.sprite = Util.LoadSprite(_itemData.icon) lvObj.gameObject:SetActive(false) refineObj.gameObject:SetActive(false) proIcon:SetActive(false) - name.text=_itemData.itemConfig.Name + name.text = _itemData.itemConfig.Name star:SetActive(true) - EquipManager.SetEquipStarShow(star,_itemData.itemConfig.Id) - local redPoint = Util.GetGameObject(_go.transform,"redPoint") + EquipManager.SetEquipStarShow(star, _itemData.itemConfig.Id) + local redPoint = Util.GetGameObject(_go.transform, "redPoint") if curHeroCanUpEquipTabs and #curHeroCanUpEquipTabs > 0 then local isShow = false for i = 1, #curHeroCanUpEquipTabs do - if curHeroCanUpEquipTabs[i] ==_itemData.did then + if curHeroCanUpEquipTabs[i] == _itemData.did then isShow = true end end @@ -680,151 +782,159 @@ function this.SingleItemDataShow(_go,_itemData) else redPoint:SetActive(false) end - Util.GetGameObject(_go.transform,"num"):GetComponent("Text").text = _itemData.num - Util.AddOnceClick(Util.GetGameObject(_go.transform,"icon"), function() - if curHeroEquipDatas[_itemData.equipConfig.Position] then - UIManager.OpenPanel(UIName.RoleEquipChangePopup,this,3,curHeroData,curHeroEquipDatas[_itemData.equipConfig.Position],_itemData,_itemData.equipConfig.Position) - else - UIManager.OpenPanel(UIName.RoleEquipChangePopup,this,1,curHeroData,_itemData,_itemData.equipConfig.Position) + Util.GetGameObject(_go.transform, "num"):GetComponent("Text").text = _itemData.num + Util.AddOnceClick( + Util.GetGameObject(_go.transform, "icon"), + function() + if curHeroEquipDatas[_itemData.equipConfig.Position] then + UIManager.OpenPanel( + UIName.RoleEquipChangePopup, + this, + 3, + curHeroData, + curHeroEquipDatas[_itemData.equipConfig.Position], + _itemData, + _itemData.equipConfig.Position + ) + else + UIManager.OpenPanel( + UIName.RoleEquipChangePopup, + this, + 1, + curHeroData, + _itemData, + _itemData.equipConfig.Position + ) + end end - end) + ) end end --刷新当前英雄装备坑位的信息 -function this.UpdateEquipPosHeroData(_equipOrTreasure,_type,_selectEquipDataList,_oldSelectEquip,position)--type +function this.UpdateEquipPosHeroData(_equipOrTreasure, _type, _selectEquipDataList, _oldSelectEquip, position) --type --1 穿单件装备 2 卸单件装备 3 替换单件装备 4 一键穿装备 5一键脱装备 - if _type==1 then + if _type == 1 then effectList[position]:SetActive(false) effectList[position]:SetActive(true) if _equipOrTreasure == 1 then - curSelectEquipData=_selectEquipDataList[1] + curSelectEquipData = _selectEquipDataList[1] --装备绑英雄 - EquipManager.SetEquipUpHeroDid(curSelectEquipData.did,curHeroData.dynamicId) + EquipManager.SetEquipUpHeroDid(curSelectEquipData.did, curHeroData.dynamicId) --英雄加装备 - table.insert(curHeroData.equipIdList,curSelectEquipData.did) + table.insert(curHeroData.equipIdList, curSelectEquipData.did) else - curEquipTreasureDatas=_selectEquipDataList[1] + curEquipTreasureDatas = _selectEquipDataList[1] --装备绑英雄 - EquipTreasureManager.SetEquipTreasureUpHeroDid(curEquipTreasureDatas.idDyn,curHeroData.dynamicId) + EquipTreasureManager.SetEquipTreasureUpHeroDid(curEquipTreasureDatas.idDyn, curHeroData.dynamicId) --英雄加装备 - table.insert(curHeroData.jewels,curEquipTreasureDatas.idDyn) + table.insert(curHeroData.jewels, curEquipTreasureDatas.idDyn) end - elseif _type==2 then + elseif _type == 2 then if _equipOrTreasure == 1 then --装备解绑英雄 curSelectEquipData = _selectEquipDataList[1] - EquipManager.SetEquipUpHeroDid(curSelectEquipData.did,"0") + EquipManager.SetEquipUpHeroDid(curSelectEquipData.did, "0") for i = 1, #curHeroData.equipIdList do - if curHeroData.equipIdList[i]==curSelectEquipData.did then + if curHeroData.equipIdList[i] == curSelectEquipData.did then --英雄删除装备 - table.remove(curHeroData.equipIdList,i) + table.remove(curHeroData.equipIdList, i) break end end else curEquipTreasureDatas = _selectEquipDataList[1] - EquipTreasureManager.SetEquipTreasureUpHeroDid(curEquipTreasureDatas.idDyn,"") + EquipTreasureManager.SetEquipTreasureUpHeroDid(curEquipTreasureDatas.idDyn, "") for i = 1, #curHeroData.jewels do - if curHeroData.jewels[i]==curEquipTreasureDatas.idDyn then + if curHeroData.jewels[i] == curEquipTreasureDatas.idDyn then --英雄删除装备 - table.remove(curHeroData.jewels,i) + table.remove(curHeroData.jewels, i) break end end end - elseif _type==3 then + elseif _type == 3 then effectList[position]:SetActive(false) effectList[position]:SetActive(true) if _equipOrTreasure == 1 then - curSelectEquipData=_selectEquipDataList[1] + curSelectEquipData = _selectEquipDataList[1] --新装备绑英雄 - EquipManager.SetEquipUpHeroDid(curSelectEquipData.did,curHeroData.dynamicId)--穿 + EquipManager.SetEquipUpHeroDid(curSelectEquipData.did, curHeroData.dynamicId) + --穿 if _oldSelectEquip then --被替换装备解绑英雄 - EquipManager.SetEquipUpHeroDid(_oldSelectEquip.did,"0") + EquipManager.SetEquipUpHeroDid(_oldSelectEquip.did, "0") end --英雄替换新选择装备 if curHeroEquipDatas[curSelectEquipData.equipConfig.Position] then for i = 1, #curHeroData.equipIdList do - if curHeroData.equipIdList[i]==curHeroEquipDatas[curSelectEquipData.equipConfig.Position].did then - curHeroData.equipIdList[i]=curSelectEquipData.did + if curHeroData.equipIdList[i] == curHeroEquipDatas[curSelectEquipData.equipConfig.Position].did then + curHeroData.equipIdList[i] = curSelectEquipData.did end end end else - curEquipTreasureDatas=_selectEquipDataList[1] + curEquipTreasureDatas = _selectEquipDataList[1] --新装备绑英雄 - EquipTreasureManager.SetEquipTreasureUpHeroDid(curEquipTreasureDatas.idDyn,curHeroData.dynamicId) + EquipTreasureManager.SetEquipTreasureUpHeroDid(curEquipTreasureDatas.idDyn, curHeroData.dynamicId) if _oldSelectEquip then --被替换装备解绑英雄 - EquipTreasureManager.SetEquipTreasureUpHeroDid(_oldSelectEquip.idDyn,"") + EquipTreasureManager.SetEquipTreasureUpHeroDid(_oldSelectEquip.idDyn, "") end --英雄替换新选择装备 - for i = 1, #curHeroData.jewels do - if curHeroData.jewels[i]==_oldSelectEquip.idDyn then - curHeroData.jewels[i]=curEquipTreasureDatas.idDyn - end + for i = 1, #curHeroData.jewels do + if curHeroData.jewels[i] == _oldSelectEquip.idDyn then + curHeroData.jewels[i] = curEquipTreasureDatas.idDyn end + end end - elseif _type==4 then + elseif _type == 4 then --一键穿 把身上装备解绑英雄id - if _equipOrTreasure==1 then - for k,v in ipairs(curHeroData.equipIdList) do - EquipManager.SetEquipUpHeroDid(v,"0") - end - curHeroData.equipIdList={} - for i = 1, #_selectEquipDataList do - --把选择的装备绑上英雄 - EquipManager.SetEquipUpHeroDid(_selectEquipDataList[i],curHeroData.dynamicId)--穿 - --再把英雄装备list 清空并添加上新选择的装备 - table.insert(curHeroData.equipIdList,_selectEquipDataList[i]) - end + if _equipOrTreasure == 1 then --宝物 - else - for k,v in ipairs(curHeroData.jewels) do - EquipTreasureManager.SetTreasureUpOrDown(v,"0") + for k, v in ipairs(curHeroData.equipIdList) do + EquipManager.SetEquipUpHeroDid(v, "0") end - curHeroData.jewels={} + curHeroData.equipIdList = {} for i = 1, #_selectEquipDataList do --把选择的装备绑上英雄 - EquipTreasureManager.SetTreasureUpOrDown(_selectEquipDataList[i],curHeroData.dynamicId)--穿 + EquipManager.SetEquipUpHeroDid(_selectEquipDataList[i], curHeroData.dynamicId) + --穿 --再把英雄装备list 清空并添加上新选择的装备 - table.insert(curHeroData.jewels,_selectEquipDataList[i]) + table.insert(curHeroData.equipIdList, _selectEquipDataList[i]) + end + else + for k, v in ipairs(curHeroData.jewels) do + EquipTreasureManager.SetTreasureUpOrDown(v, "0") + end + curHeroData.jewels = {} + for i = 1, #_selectEquipDataList do + --把选择的装备绑上英雄 + EquipTreasureManager.SetTreasureUpOrDown(_selectEquipDataList[i], curHeroData.dynamicId) + --穿 + --再把英雄装备list 清空并添加上新选择的装备 + table.insert(curHeroData.jewels, _selectEquipDataList[i]) end end - - elseif _type==5 then + elseif _type == 5 then --一键脱 把身上装备英雄id置为“0” 再把英雄装备list清空 - if _equipOrTreasure==1 then + if _equipOrTreasure == 1 then if _selectEquipDataList then for i = 1, #_selectEquipDataList do - EquipManager.SetEquipUpHeroDid(_selectEquipDataList[i],"0") + EquipManager.SetEquipUpHeroDid(_selectEquipDataList[i], "0") end end - --for i = 1, #_selectEquipDataList do - -- --把选择的装备绑上英雄 - -- -- EquipTreasureManager.SetTreasureUpOrDown(_selectEquipDataList[i],curHeroData.dynamicId)--穿 - -- --再把英雄装备list 清空并添加上新选择的装备 - -- table.remove(curHeroData.equipIdList,i) - --end - curHeroData.equipIdList={} + curHeroData.equipIdList = {} else if _selectEquipDataList then for i = 1, #_selectEquipDataList do - EquipTreasureManager.SetTreasureUpOrDown(_selectEquipDataList[i],"") + EquipTreasureManager.SetTreasureUpOrDown(_selectEquipDataList[i], "0") end --table.remove(curHeroData.jewels,i) - curHeroData.jewels={} + curHeroData.jewels = {} end - --for i = 1, #_selectEquipDataList do - -- --把选择的装备绑上英雄 - -- EquipTreasureManager.SetTreasureUpOrDown(_selectEquipDataList[i],curHeroData.dynamicId)--穿 - -- --再把英雄装备list 清空并添加上新选择的装备 - -- table.remove(curHeroData.equipIdList,_selectEquipDataList[i]) - --end end - --curHeroData.equipIdList={} + --curHeroData.equipIdList={} end --刷新界面 this.ShowHeroEquip() @@ -843,11 +953,11 @@ function this.UpdateEquipPosHeroData(_equipOrTreasure,_type,_selectEquipDataList end --去除已穿的装备 function this:EquipListFilter(_allEquip) - local allShowEquip={} + local allShowEquip = {} for k, v in pairs(_allEquip) do - if v.upHeroDid=="0" then - if v.equipConfig.ProfessionLimit==0 or v.equipConfig.ProfessionLimit==curHeroData.profession then - table.insert(allShowEquip,v) + if v.upHeroDid == "0" then + if v.equipConfig.ProfessionLimit == 0 or v.equipConfig.ProfessionLimit == curHeroData.profession then + table.insert(allShowEquip, v) end end end @@ -862,13 +972,12 @@ function this.SelectImageSetParent(_objPoint) end --界面关闭时调用(用于子类重写) function RoleEquipPanel:OnClose() - end function this:AddRedPointVale(_equipDatas) for j = 1, #_equipDatas do _equipDatas[j].isRedPointShow = 1 for i = 1, #curHeroCanUpEquipTabs do - if curHeroCanUpEquipTabs[i] ==_equipDatas[j].did then + if curHeroCanUpEquipTabs[i] == _equipDatas[j].did then _equipDatas[j].isRedPointShow = 2 end end @@ -886,44 +995,46 @@ function this:SortEquipDatas(_equipDatas) curHeroCanUpEquipTabs = {} end this:AddRedPointVale(_equipDatas) - table.sort(_equipDatas, function(a, b) - if a.isRedPointShow ==b.isRedPointShow then - if a.equipConfig.Quality ==b.equipConfig.Quality then - if a.equipConfig.Position ==b.equipConfig.Position then - return a.id < b.id + table.sort( + _equipDatas, + function(a, b) + if a.isRedPointShow == b.isRedPointShow then + if a.equipConfig.Quality == b.equipConfig.Quality then + if a.equipConfig.Position == b.equipConfig.Position then + return a.id < b.id + else + return a.equipConfig.Position < b.equipConfig.Position + end else - return a.equipConfig.Position < b.equipConfig.Position + return a.equipConfig.Quality > b.equipConfig.Quality end else - return a.equipConfig.Quality > b.equipConfig.Quality + return a.isRedPointShow > b.isRedPointShow end - else - return a.isRedPointShow > b.isRedPointShow end - end) + ) end --做装备叠加特殊组拼数据 function this:EquipDJDatas(_itemDatas) - local equips = {} - for i = 1, #_itemDatas do - if equips[_itemDatas[i].id] then - equips[_itemDatas[i].id].num = equips[_itemDatas[i].id].num + 1 - else - equips[_itemDatas[i].id] = _itemDatas[i] - equips[_itemDatas[i].id].num = 1 - end - end - local showList = {} - for i, v in pairs(equips) do - table.insert(showList, v) - end + local equips = {} + for i = 1, #_itemDatas do + if equips[_itemDatas[i].id] then + equips[_itemDatas[i].id].num = equips[_itemDatas[i].id].num + 1 + else + equips[_itemDatas[i].id] = _itemDatas[i] + equips[_itemDatas[i].id].num = 1 + end + end + local showList = {} + for i, v in pairs(equips) do + table.insert(showList, v) + end return showList end --界面销毁时调用(用于子类重写) function RoleEquipPanel:OnDestroy() - SubUIManager.Close(this.UpView) this.ScrollView = nil end -return RoleEquipPanel \ No newline at end of file +return RoleEquipPanel diff --git a/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipTreasureChangePopup.lua b/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipTreasureChangePopup.lua index fdb60d3a45..a74650fd6b 100644 --- a/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipTreasureChangePopup.lua +++ b/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleEquipTreasureChangePopup.lua @@ -356,7 +356,7 @@ function this.SetPropertyShow(_infos,_preList,_grid) if proper.Style==1 then obj.transform:GetComponent("Text").text=" +".. value.currValue else - obj.transform:GetComponent("Text").text=" +".. value.currValue/1000 .."%" + obj.transform:GetComponent("Text").text=" +".. value.currValue/100 .."%" end obj.gameObject:SetActive(true) index=index+1 diff --git a/Assets/ManagedResources/~Lua/Modules/Shop/ShopManager.lua b/Assets/ManagedResources/~Lua/Modules/Shop/ShopManager.lua index 906153031a..7a1f2cdb82 100644 --- a/Assets/ManagedResources/~Lua/Modules/Shop/ShopManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Shop/ShopManager.lua @@ -625,13 +625,13 @@ function this.IsAutoRecoverCount(shopType) local curTimeStamp = GetTimeStamp() local shopData = this.GetShopDataByType(shopType) local lastRefreshTime = math.floor(shopData.lastRefreshTime / 1000) - local leftCount = math.min(maxTime, math.floor((curTimeStamp - lastRefreshTime)/refreshTime)) + local leftCount = math.min(maxTime, math.floor(math.ceil(curTimeStamp - lastRefreshTime)/refreshTime)) -- 如果没有免费次数了,但是有特权刷新次数 if leftCount <= 0 and shopInfo.RefreshPrivilege ~= 0 then return false end - + -- return true, leftCount end diff --git a/Assets/ManagedResources/~Lua/View/ShopView.lua b/Assets/ManagedResources/~Lua/View/ShopView.lua index 0bb5716875..1a559d3c1e 100644 --- a/Assets/ManagedResources/~Lua/View/ShopView.lua +++ b/Assets/ManagedResources/~Lua/View/ShopView.lua @@ -338,6 +338,7 @@ function this:RefreshBase() self.costIcon:SetActive(false) self.costLab:SetActive(false) self.countLabTip:GetComponent("Text").text = Language[12092] + self.isMaxTime = false else self.costIcon:SetActive(true) self.costLab:SetActive(true)