5e0d58cfad
EN: 1.2.0.60 CN: 1.2.0.61 JP: 1.2.0.63 KR: 1.2.0.67
56 lines
2.3 KiB
Lua
56 lines
2.3 KiB
Lua
local DailyInstanceLevelSelectGridCtrl = class("DailyInstanceLevelSelectGridCtrl", BaseCtrl)
|
|
DailyInstanceLevelSelectGridCtrl._mapNodeConfig = {
|
|
imgLevelImage = {sComponentName = "Image"},
|
|
txtInstanceName = {sComponentName = "TMP_Text"},
|
|
txtInstanceDesc = {sComponentName = "TMP_Text"},
|
|
btnChosen = {
|
|
sComponentName = "UIButton",
|
|
callback = "OnBtn_ClickChosen"
|
|
},
|
|
imgCurChose = {sComponentName = "GameObject"},
|
|
txtCurChose = {
|
|
sComponentName = "TMP_Text",
|
|
sLanguageId = "DailyInstance_Cur_Chose"
|
|
},
|
|
txtBtn = {
|
|
sComponentName = "TMP_Text",
|
|
sLanguageId = "DailyInstance_Reward_Select"
|
|
}
|
|
}
|
|
DailyInstanceLevelSelectGridCtrl._mapEventConfig = {
|
|
ChangeDailyInstanceRewardMode = "OnEvent_ChangeDailyInstanceRewardMode"
|
|
}
|
|
function DailyInstanceLevelSelectGridCtrl:Refresh(nId)
|
|
local mapData = ConfigTable.GetData("DailyInstanceRewardGroup", nId)
|
|
if mapData == nil then
|
|
return
|
|
end
|
|
self:SetPngSprite(self._mapNode.imgLevelImage, mapData.RewardIcon)
|
|
NovaAPI.SetTMPText(self._mapNode.txtInstanceName, mapData.RewardName)
|
|
NovaAPI.SetTMPText(self._mapNode.txtInstanceDesc, mapData.RewardDes)
|
|
self.dailyRewardType = mapData.DailyRewardType
|
|
local curChoseType = PlayerData.DailyInstance:GetLastRewardType()
|
|
self._mapNode.imgCurChose:SetActive(curChoseType == self.dailyRewardType)
|
|
self._mapNode.txtCurChose.gameObject:SetActive(curChoseType == self.dailyRewardType)
|
|
self._mapNode.btnChosen.gameObject:SetActive(curChoseType ~= self.dailyRewardType)
|
|
end
|
|
function DailyInstanceLevelSelectGridCtrl:OnEvent_ChangeDailyInstanceRewardMode()
|
|
local curChoseType = PlayerData.DailyInstance:GetLastRewardType()
|
|
self._mapNode.imgCurChose:SetActive(curChoseType == self.dailyRewardType)
|
|
self._mapNode.txtCurChose.gameObject:SetActive(curChoseType == self.dailyRewardType)
|
|
self._mapNode.btnChosen.gameObject:SetActive(curChoseType ~= self.dailyRewardType)
|
|
end
|
|
function DailyInstanceLevelSelectGridCtrl:OnBtn_ClickChosen()
|
|
PlayerData.DailyInstance:SetRewardType(self.dailyRewardType)
|
|
EventManager.Hit("ChangeDailyInstanceRewardMode")
|
|
end
|
|
function DailyInstanceLevelSelectGridCtrl:CheckMainlinePass(mapData)
|
|
if mapData.MainLineId > 0 then
|
|
local nStar = PlayerData.Mainline:GetMianlineLevelStar(mapData.MainLineId)
|
|
return 0 < nStar
|
|
else
|
|
return true
|
|
end
|
|
end
|
|
return DailyInstanceLevelSelectGridCtrl
|