ro-table/Asstes/Resources/Script/FrameWork/GUI/cell/GvgQuestTableCell.txt
2025-06-04 05:02:57 +08:00

69 lines
2.6 KiB
Plaintext

local baseCell = autoImport("BaseCell")
GvgQuestTableCell = class("GvgQuestTableCell", baseCell)
function GvgQuestTableCell:Init()
GvgQuestTableCell.super.Init(self);
self.questName = self:FindComponent("questName",UILabel)
self.icon = self:FindComponent("icon",UISprite)
self.rewardName = self:FindComponent("rewardName",UILabel)
self.rewardCount = self:FindComponent("rewardCount",UILabel)
end
function GvgQuestTableCell:SetData(data)
local key = data.key
local value = data.value
local configData = GameConfig.GVGConfig.reward[GvgProxy.GvgQuestMap[key]]
if(configData)then
local index = 1
local dataInfo
local maxRound = #configData > index and #configData or index
if(key == FuBenCmd_pb.EGVGDATA_KILLUSER)then
self.rewardName.text = ZhString.MainViewGvgPage_GvgQuestTip_KillUser
self.rewardCount.text = "x"..configData.count
local itemData = Table_Item[configData.itemid]
if(itemData)then
IconManager:SetItemIcon(itemData.Icon,self.icon)
end
self.questName.text = string.format(ZhString.MainViewGvgPage_GvgQuestTip_KillUserDes,value)
return
end
while true do
if((configData[index] and configData[index].times > value) or index > maxRound)then
if(index > maxRound)then
dataInfo = configData[maxRound]
else
dataInfo = configData[index]
end
self.rewardName.text = string.format(dataInfo.desc,value <= dataInfo.times and value or dataInfo.times)
self.rewardCount.text = "x"..dataInfo.count
local itemData = Table_Item[dataInfo.itemid]
if(itemData)then
IconManager:SetItemIcon(itemData.Icon,self.icon)
end
if(key == FuBenCmd_pb.EGVGDATA_KILLMETAL)then
self.questName.text = configData.desc
elseif(configData[maxRound].times <= value)then
self.questName.text = string.format(configData.desc,ZhString.AnnounceQuestPanel_Complete)
elseif(key == FuBenCmd_pb.EGVGDATA_HONOR)then
local str = string.format("%s/%s",(value <= 1200 and value or GameConfig.GVGConfig.reward.max_honor),(GameConfig.GVGConfig.reward.max_honor or 1200))
self.questName.text = string.format(configData.desc,str)
else
local str = string.format("%s/%s",index-1,maxRound)
self.questName.text = string.format(configData.desc,str)
end
break
end
index = index+1
end
end
-- self.data = data
-- local level = data.staticData.Name.Level
-- level = level and "Lv."..level or ""
-- self.questName.text = data.staticData.Name..level
-- self.checkBox.value = data.trace
-- local rewards = QuestProxy.Instance:getValidReward(data)
-- rewards = rewards or {}
-- self.rewardList:ResetDatas(rewards)
end