Merge branch 'dev_20230919' of http://git.juzugame.com/b6-client/b6-lua into dev_20230919

This commit is contained in:
xiekaidong 2023-09-12 16:22:18 +08:00
commit 0426fe03a6
2 changed files with 39 additions and 31 deletions

View File

@ -2,10 +2,16 @@ local RunesManager = class("RunesManager", BaseModule)
-- 锁定和解锁属性栏
function RunesManager:reqChangeLockGrid(heroId, index, isLock)
if self.isReqLockChange then
return
end
self.isReqLockChange = true
self:sendMessage(ProtoMsgType.FromMsgEnum.RuneLockReq, {hero_id = heroId, grid_num = index, lock = isLock}, {}, self.rspChangeLockGrid)
end
function RunesManager:rspChangeLockGrid(result)
self.isReqLockChange = false
if result.hero_girds then
DataManager.RunesData:onGridLockSuccess(result.reqData.hero_id, result.hero_girds.grids)
end
@ -13,21 +19,11 @@ end
-- 淬炼
function RunesManager:reqQuenching(heroId, autoCount)
if DataManager.RunesData:getRunes(heroId):getAttrLockCount() >= DataManager.RunesData:getUnlockCount() then
GFunc.showToast(I18N:getGlobalText(I18N.GlobalConst.RUNES_DESC_25))
return
end
if self.isReqQuenching then
return
end
local cost = DataManager.RunesData:getRunes(heroId):getMaterialCost()
if not GFunc.checkCost(GFunc.getRewardId(cost), GFunc.getRewardNum(cost), true) then
UIManager:showUI("app/ui/runes/runes_source_ui")
return
end
self.isReqQuenching = true
self:sendMessage(ProtoMsgType.FromMsgEnum.RuneQuenchingReq, {hero_id = heroId, auto_count = autoCount}, {}, self.rspQuenching, BIReport.ITEM_GET_TYPE.RUNES_QUENCHING)
end

View File

@ -53,7 +53,7 @@ function RunesInfoComp:init()
boxType = GConst.MESSAGE_BOX_TYPE.MB_OK_CANCEL,
showToday = GConst.MESSAGE_BOX_SHOW_TODAY.RUNES_AUTO,
okFunc = function()
self:startAutoQuenching()
self:reqQuenching(true)
end,
}
GFunc.showMessageBox(params)
@ -62,7 +62,7 @@ function RunesInfoComp:init()
end
end)
self.btnUse:addClickListener(function()
ModuleManager.RunesManager:reqQuenching(self.heroEntity:getCfgId(), 0)
self:reqQuenching(false)
end)
self:bind(DataManager.BagData.ItemData, "dirty", function()
self:refresh()
@ -154,19 +154,36 @@ function RunesInfoComp:refreshSuit()
self.txEmpty:setActive(isEmpty)
end
-- 开始自动淬炼
function RunesInfoComp:startAutoQuenching()
-- 请求淬炼
function RunesInfoComp:reqQuenching(isAuto)
-- 是否全部锁定
if DataManager.RunesData:getRunes(self.heroEntity:getCfgId()):getAttrLockCount() >= DataManager.RunesData:getUnlockCount() then
GFunc.showToast(I18N:getGlobalText(I18N.GlobalConst.RUNES_DESC_25))
return
end
-- 材料是否足够
local cost = self.runesEntity:getMaterialCost()
if not GFunc.checkCost(GFunc.getRewardId(cost), GFunc.getRewardNum(cost), true) then
UIManager:showUI("app/ui/runes/runes_source_ui")
return
end
if isAuto then
-- 自动淬炼
self.mask:setActive(true)
self:autoQuenching()
self.autoSid = self.baseObject:scheduleGlobal(function()
local cost = self.runesEntity:getMaterialCost()
if not GFunc.checkCost(GFunc.getRewardId(cost), GFunc.getRewardNum(cost), true) then
self:endAutoQuenching()
return
end
self:autoQuenching()
ModuleManager.RunesManager:reqQuenching(self.heroEntity:getCfgId(), 0)
end, 1 / 3)
self.spineAuto:playAnim("attack", true, true)
else
-- 单次淬炼
ModuleManager.RunesManager:reqQuenching(self.heroEntity:getCfgId(), 0)
end
end
-- 结束自动淬炼
@ -188,9 +205,4 @@ function RunesInfoComp:endAutoQuenching()
self.spineAuto:playAnim("idle", true, true)
end
-- 请求一次自动淬炼
function RunesInfoComp:autoQuenching()
ModuleManager.RunesManager:reqQuenching(self.heroEntity:getCfgId(), 0)
end
return RunesInfoComp