80af235e05
EN: 1.12.0.120 CN: 1.12.0.120 JP: 1.12.0.124 KR: 1.12.0.124
84 lines
2.6 KiB
Lua
84 lines
2.6 KiB
Lua
local MiningQuestCellCtrl = class("MiningQuestCellCtrl", BaseCtrl)
|
|
local JumpUtil = require("Game.Common.Utils.JumpUtil")
|
|
local totalLength = 520
|
|
local totalHeight = 37
|
|
MiningQuestCellCtrl._mapNodeConfig = {
|
|
txtTitle = {sComponentName = "TMP_Text"},
|
|
btn_Receive = {
|
|
sComponentName = "UIButton",
|
|
callback = "OnBtnClick_Receive"
|
|
},
|
|
txt_Receive = {
|
|
sComponentName = "TMP_Text",
|
|
"Mining_Quest_Receive"
|
|
},
|
|
btn_JumpTo = {
|
|
sComponentName = "UIButton",
|
|
callback = "OnBtnClick_JumpTo"
|
|
},
|
|
txt_JumoTo = {
|
|
sComponentName = "TMP_Text",
|
|
"Mining_Quest_Jump"
|
|
},
|
|
go_UnComplete = {},
|
|
go_Received = {},
|
|
go_ReceivedMask = {},
|
|
rtBarFill = {
|
|
sComponentName = "RectTransform"
|
|
},
|
|
btnReward = {
|
|
sComponentName = "UIButton",
|
|
callback = "OnBtnClick_Reward"
|
|
},
|
|
rtReward = {
|
|
sCtrlName = "Game.UI.TemplateEx.TemplateItemCtrl"
|
|
}
|
|
}
|
|
function MiningQuestCellCtrl:Init()
|
|
end
|
|
function MiningQuestCellCtrl:Awake(...)
|
|
end
|
|
function MiningQuestCellCtrl:OnDisable()
|
|
end
|
|
function MiningQuestCellCtrl:SetData(nActId, questData)
|
|
self.questData = questData
|
|
self.tbConfig = ConfigTable.GetData("MiningQuestConfig", self.questData.nId)
|
|
NovaAPI.SetText(self._mapNode.txtTitle, ConfigTable.GetUIText(self.tbConfig.QuestDes))
|
|
end
|
|
function MiningQuestCellCtrl:UpdateCellStatus()
|
|
self._mapNode.btn_Receive:SetActive(false)
|
|
self._mapNode.btn_JumpTo:SetActive(false)
|
|
self._mapNode.go_UnComplete:SetActive(false)
|
|
self._mapNode.go_Received:SetActive(false)
|
|
self._mapNode.go_ReceivedMask:SetActive(false)
|
|
if self.questData.nStatus == AllEnum.ActQuestStatus.Complete then
|
|
self._mapNode.btn_Receive:SetActive(true)
|
|
self._mapNode.rtBarFill.sizeDelta = Vector2(totalLength, totalHeight)
|
|
elseif self.questData.nStatus == AllEnum.ActQuestStatus.UnComplete then
|
|
self._mapNode.rtBarFill.sizeDelta = Vector2(self.questData.progress.Cur / self.questData.progress.Max * totalLength, totalHeight)
|
|
if self.tbConfig.JumpTo ~= nil or next(self.tbConfig.JumpTo) ~= nil then
|
|
self._mapNode.btn_JumpTo:SetActive(true)
|
|
else
|
|
self._mapNode.go_UnComplete:SetActive(true)
|
|
end
|
|
else
|
|
self._mapNode.go_Received:SetActive(true)
|
|
self._mapNode.go_ReceivedMask:SetActive(true)
|
|
self._mapNode.rtBarFill.sizeDelta = Vector2(totalLength, totalHeight)
|
|
end
|
|
end
|
|
function MiningQuestCellCtrl:OnBtnClick_Receive()
|
|
PlayerData.Activity:SendReceivePerQuest(self.nActId, self.nQuestId, nil)
|
|
end
|
|
function MiningQuestCellCtrl:OnBtnClick_JumpTo()
|
|
if nil ~= self.nJumpTo and 0 ~= self.nJumpTo then
|
|
JumpUtil.JumpTo(self.nJumpTo)
|
|
end
|
|
end
|
|
function MiningQuestCellCtrl:OnBtnClick_Reward(btn)
|
|
if nil ~= self.rewardId then
|
|
UTILS.ClickItemGridWithTips(self.rewardId, btn.transform, true, true, true)
|
|
end
|
|
end
|
|
return MiningQuestCellCtrl
|