c1_lua/lua/app/ui/arena/cell/arena_rank_cell.lua
2023-06-28 18:36:53 +08:00

42 lines
1.6 KiB
Lua

local ArenaRankCell = class("ArenaRankCell", BaseCell)
function ArenaRankCell:init()
local uiMap = self:getUIMap()
self.txRank = uiMap["arena_rank_cell.tx_rank"]
self.playerHeadCell = CellManager:addCellComp(uiMap["arena_rank_cell.player_head_cell"], GConst.TYPEOF_LUA_CLASS.PLAYER_HEAD_CELL)
self.txName = uiMap["arena_rank_cell.tx_name"]
self.cellGrading = uiMap["arena_rank_cell.arena_grading_cell"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.ARENA_GRADING_CELL)
self.btnFormation = uiMap["arena_rank_cell.btn_formation"]
self.btnFormation:addClickListener(function()
if DataManager.ArenaData:hasRankFormation() then
self:showHeroFormationTips()
else
self.clickFormation = true
ModuleManager.ArenaManager:reqRankHeroes(self.rankInfo.ID)
end
end)
self:bind(DataManager.ArenaData, "isDirty", function()
if self.clickFormation then
self:showHeroFormationTips()
end
end)
end
function ArenaRankCell:refresh(rank)
self.clickFormation = false
self.rankInfo = DataManager.ArenaData:getRankData(rank)
self.playerHeadCell:refresh(self.rankInfo.avatar, self.rankInfo.avatar_frame)
self.txRank:setText(self.rankInfo.rank)
self.txName:setText(rank)
self.cellGrading:refresh(DataManager.ArenaData:getGradingIdFromScore(self.rankInfo.score))
end
function ArenaRankCell:showHeroFormationTips()
self.clickFormation = false
ModuleManager.TipsManager:showHeroFormation(self.btnFormation, DataManager.ArenaData:getRankFormation(self.rankInfo.ID))
end
return ArenaRankCell