Files
StellaSora_DataLua/lua/game/ui/jointdrill/jointdrillquestitemctrl.lua
T
SL1900 5e0d58cfad Initial version - 1.2.0.60
EN: 1.2.0.60
CN: 1.2.0.61
JP: 1.2.0.63
KR: 1.2.0.67
2025-12-03 01:00:00 +09:00

63 lines
2.0 KiB
Lua

local JointDrillQuestItemCtrl = class("JointDrillQuestItemCtrl", BaseCtrl)
JointDrillQuestItemCtrl._mapNodeConfig = {
itemCanvasGroup = {
sNodeName = "goItem",
sComponentName = "CanvasGroup"
},
txtDesc = {sComponentName = "TMP_Text"},
btnReward = {
nCount = 3,
sComponentName = "UIButton",
callback = "OnBtnClick_Item"
},
goReward = {
nCount = 3,
sCtrlName = "Game.UI.TemplateEx.TemplateItemCtrl"
},
imgComplete = {},
imgUnComplete = {}
}
JointDrillQuestItemCtrl._mapEventConfig = {}
JointDrillQuestItemCtrl._mapRedDotConfig = {}
function JointDrillQuestItemCtrl:SetItem(mapQuestData)
local mapQuestCfg = ConfigTable.GetData("JointDrillQuest", mapQuestData.Id)
if mapQuestCfg ~= nil then
NovaAPI.SetTMPText(self._mapNode.txtDesc, mapQuestCfg.Title)
self.tbReward = {}
for i = 1, 3 do
self._mapNode.btnReward[i].gameObject:SetActive(mapQuestCfg["AwardItemTid" .. i] ~= 0)
if mapQuestCfg["AwardItemTid" .. i] ~= 0 then
local nTid = mapQuestCfg["AwardItemTid" .. i]
local nCount = mapQuestCfg["AwardItemNum" .. i]
table.insert(self.tbReward, {nTid = nTid, nCount = nCount})
local bReceived = mapQuestData.Status == 2
self._mapNode.goReward[i]:SetItem(nTid, nil, nCount, nil, bReceived)
end
end
self._mapNode.imgComplete.gameObject:SetActive(mapQuestData.Status ~= 0)
self._mapNode.imgUnComplete.gameObject:SetActive(mapQuestData.Status == 0)
NovaAPI.SetCanvasGroupAlpha(self._mapNode.itemCanvasGroup, mapQuestData.Status == 2 and 0.6 or 1)
end
end
function JointDrillQuestItemCtrl:Awake()
end
function JointDrillQuestItemCtrl:OnEnable()
end
function JointDrillQuestItemCtrl:OnDisable()
end
function JointDrillQuestItemCtrl:OnDestroy()
end
function JointDrillQuestItemCtrl:OnBtnClick_Item(btn, nIndex)
if self.tbReward[nIndex] == nil then
return
end
local nTid = self.tbReward[nIndex].nTid
local mapData = {
nTid = nTid,
bShowDepot = true,
bShowJumpto = false
}
EventManager.Hit(EventId.OpenPanel, PanelId.ItemTips, btn.transform, mapData)
end
return JointDrillQuestItemCtrl