c1_lua/lua/app/ui/tips/cell/equip_group_cell.lua
2023-04-03 10:59:13 +08:00

140 lines
5.2 KiB
Lua

local EquipGroupCell = class("EquipGroupCell", BaseCell)
local H = {
NORMAL = 112,
HAS_TITLE = 190,
FIRST = 180,
}
local PROBABILITY_HEIGHT = 58
function EquipGroupCell:refresh(equipInfoList, type)
local uiMap = self:getUIMap()
if not self.equipCells then
self.equipCells = {}
for i = 1, 6 do
self.equipCells[i] = CellManager:addCellComp(uiMap["equil_group_cell.line.equip_cell_" .. i], GConst.TYPEOF_LUA_CLASS.EQUIP_CELL)
end
end
local isProbability = equipInfoList.isProbability
for i, cell in ipairs(self.equipCells) do
local equipId = nil
if not isProbability then
equipId = equipInfoList.equipList[i]
end
cell:getBaseObject():setActive(equipId ~= nil)
if equipId then
cell:refreshByCfg(equipId)
cell:addClickListener(function()
ModuleManager.TipsManager:showEquipTips(nil, equipId)
end)
else
cell:addClickListener(nil)
end
end
local probabilityCount = 0
if GFunc.showProbability() then
uiMap["equil_group_cell.probability"]:setVisible(isProbability)
if isProbability then
local y = -2
local img = uiMap["equil_group_cell.probability.line_img_desc"]
local tx = uiMap["equil_group_cell.probability.line_img_desc.tx"]
probabilityCount = probabilityCount + 1
img:setAnchoredPositionY(y)
tx:setText(I18N:getGlobalText(I18N.GlobalConst.PROBABILITY_TIPS_DESC))
y = y + PROBABILITY_HEIGHT
local img = uiMap["equil_group_cell.probability.line_img_1"]
local tx = uiMap["equil_group_cell.probability.line_img_1.tx"]
local tx1 = uiMap["equil_group_cell.probability.line_img_1.tx_1"]
local probability = equipInfoList.normal.probability
img:setVisible(probability > 0)
if probability > 0 then
probabilityCount = probabilityCount + 1
img:setAnchoredPositionY(y)
tx:setText(I18N:getGlobalText(I18N.GlobalConst.NORMAL_EQUIP_DESC))
tx1:setText(probability .. "%")
y = y + PROBABILITY_HEIGHT
end
img = uiMap["equil_group_cell.probability.line_img_2"]
tx = uiMap["equil_group_cell.probability.line_img_2.tx"]
tx1 = uiMap["equil_group_cell.probability.line_img_2.tx_1"]
probability = equipInfoList.excellent.probability
img:setVisible(probability > 0)
if probability > 0 then
probabilityCount = probabilityCount + 1
img:setAnchoredPositionY(y)
tx:setText(I18N:getGlobalText(I18N.GlobalConst.RARE_EQUIP_DESC))
tx1:setText(probability .. "%")
y = y + PROBABILITY_HEIGHT
end
img = uiMap["equil_group_cell.probability.line_img_3"]
tx = uiMap["equil_group_cell.probability.line_img_3.tx"]
tx1 = uiMap["equil_group_cell.probability.line_img_3.tx_1"]
probability = equipInfoList.rare.probability
img:setVisible(probability > 0)
if probability > 0 then
probabilityCount = probabilityCount + 1
img:setAnchoredPositionY(y)
tx:setText(I18N:getGlobalText(I18N.GlobalConst.EXCELLENT_EQUIP_DESC))
tx1:setText(probability .. "%")
y = y + PROBABILITY_HEIGHT
end
img = uiMap["equil_group_cell.probability.line_img_4"]
tx = uiMap["equil_group_cell.probability.line_img_4.tx"]
tx1 = uiMap["equil_group_cell.probability.line_img_4.tx_1"]
probability = equipInfoList.epic.probability
img:setVisible(probability > 0)
if probability > 0 then
probabilityCount = probabilityCount + 1
img:setAnchoredPositionY(y)
tx:setText(I18N:getGlobalText(I18N.GlobalConst.EPIC_EQUIP_DESC))
tx1:setText(probability .. "%")
y = y + PROBABILITY_HEIGHT
end
img = uiMap["equil_group_cell.probability.line_img_ssr"]
tx = uiMap["equil_group_cell.probability.line_img_ssr.tx"]
tx1 = uiMap["equil_group_cell.probability.line_img_ssr.tx_1"]
probability = equipInfoList.ssr.probability
img:setVisible(probability > 0)
if probability > 0 then
probabilityCount = probabilityCount + 1
img:setAnchoredPositionY(y)
tx:setText(I18N:getGlobalText(I18N.GlobalConst.SSR_EQUIP_DESC))
tx1:setText(probability .. "%")
y = y + PROBABILITY_HEIGHT
end
end
else
uiMap["equil_group_cell.probability"]:setVisible(false)
end
local h = H.NORMAL
if isProbability then
if probabilityCount <= 0 then
h = 0
else
h = PROBABILITY_HEIGHT * probabilityCount + PROBABILITY_HEIGHT
end
else
if equipInfoList.isFirstLine then
h = H.HAS_TITLE
end
if equipInfoList.isTop then
h = H.FIRST
end
end
self.baseObject:setSizeDeltaY(h)
end
return EquipGroupCell