86 lines
2.5 KiB
Plaintext
86 lines
2.5 KiB
Plaintext
local BaseCell = autoImport("BaseCell")
|
|
GuildTaskCell = class("GuildTaskCell", BaseCell)
|
|
|
|
local pos = LuaVector3.zero
|
|
|
|
function GuildTaskCell:Init()
|
|
self:FindObjs()
|
|
self:AddButtonEvt()
|
|
end
|
|
|
|
function GuildTaskCell:FindObjs()
|
|
self.taskName = self:FindComponent("TaskName", UILabel)
|
|
self.desc = self:FindComponent("Desc", UILabel)
|
|
self.confirmed = self:FindGO("Confirmed")
|
|
self.progress = self:FindComponent("Progress", UILabel)
|
|
self.confirmBtn = self:FindGO("ConfirmBtn"):GetComponent(UISprite)
|
|
self.confirmLabel = self:FindGO("Label" , self.confirmBtn.gameObject):GetComponent(UILabel)
|
|
self.taskBg1 = self:FindGO("TaskBg1")
|
|
self.taskBg2 = self:FindGO("TaskBg2")
|
|
end
|
|
|
|
function GuildTaskCell:AddButtonEvt()
|
|
self:AddClickEvent(self.confirmBtn.gameObject,function ()
|
|
if self.canConfirm then
|
|
local currentRaidID = SceneProxy.Instance:GetCurRaidID()
|
|
local raidData = currentRaidID and Table_MapRaid[currentRaidID];
|
|
if(raidData and raidData.Type == 10)then
|
|
FuncShortCutFunc.Me():CallByID(1000)
|
|
return;
|
|
end
|
|
EventManager.Me():PassEvent(GuildChallengeEvent.CloseUI,self)
|
|
ServiceGuildCmdProxy.Instance:CallEnterTerritoryGuildCmd();
|
|
end
|
|
end)
|
|
end
|
|
|
|
function GuildTaskCell:SetData(data)
|
|
self.data = data
|
|
self.gameObject:SetActive(data ~= nil)
|
|
|
|
if data then
|
|
local staticData = Table_GuildChallenge[data.id]
|
|
|
|
if staticData ~= nil then
|
|
self.taskName.text = staticData.Name
|
|
self.desc.text = staticData.Traceinfo
|
|
self.progress.text = string.format(ZhString.GuildChallenge_Progress, data.progress, staticData.Target)
|
|
|
|
local sizeX = self.taskName.localSize.x
|
|
local posX = sizeX / 2 + 28
|
|
pos:Set(posX, 0, 0)
|
|
self.taskBg1.transform.localPosition = pos
|
|
pos:Set(-posX, 0, 0)
|
|
self.taskBg2.transform.localPosition = pos
|
|
end
|
|
|
|
local canReward = data.reward == true
|
|
self.confirmBtn.gameObject:SetActive(canReward);
|
|
|
|
if(data.finish)then
|
|
self:SetConfirm(true);
|
|
|
|
self.confirmBtn.gameObject:SetActive(canReward);
|
|
self.confirmed.gameObject:SetActive(not canReward)
|
|
else
|
|
self:SetConfirm(false);
|
|
|
|
self.confirmBtn.gameObject:SetActive(true);
|
|
self.confirmed.gameObject:SetActive(false)
|
|
end
|
|
end
|
|
end
|
|
|
|
function GuildTaskCell:SetConfirm(canConfirm)
|
|
self.canConfirm = canConfirm
|
|
|
|
if canConfirm then
|
|
-- self.confirmBtn.color = ColorUtil.NGUIWhite
|
|
self.confirmBtn.spriteName = "com_btn_1";
|
|
self.confirmLabel.effectColor = ColorUtil.ButtonLabelBlue
|
|
else
|
|
-- self.confirmBtn.color = ColorUtil.NGUIShaderGray
|
|
self.confirmBtn.spriteName = "com_btn_13";
|
|
self.confirmLabel.effectColor = ColorUtil.NGUIGray
|
|
end
|
|
end |