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
This commit is contained in:
@@ -0,0 +1,113 @@
|
||||
local AchievementGridCtrl = class("AchievementGridCtrl", BaseCtrl)
|
||||
local JumpUtil = require("Game.Common.Utils.JumpUtil")
|
||||
local nBarLength = 512
|
||||
local nBarHeight = 512
|
||||
AchievementGridCtrl._mapNodeConfig = {
|
||||
imgCup = {sComponentName = "Image"},
|
||||
TMPTitle = {sComponentName = "TMP_Text"},
|
||||
TMPDesc = {sComponentName = "TMP_Text"},
|
||||
TMPProcess = {sComponentName = "TMP_Text"},
|
||||
TMPTimeTitle = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Achievement_Tips_Completed"
|
||||
},
|
||||
txtBtnJump = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Quest_JumpTo"
|
||||
},
|
||||
TMPTime = {sComponentName = "TMP_Text"},
|
||||
rtBarFill = {
|
||||
sComponentName = "RectTransform"
|
||||
},
|
||||
btnItem = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Item"
|
||||
},
|
||||
btnReceive = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Receive"
|
||||
},
|
||||
btnJump = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Jumpto"
|
||||
},
|
||||
rtItem = {
|
||||
sCtrlName = "Game.UI.TemplateEx.TemplateItemCtrl"
|
||||
},
|
||||
imgCup0 = {nCount = 3},
|
||||
txtBtnReceive = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Quest_Receive_Btn_Text"
|
||||
},
|
||||
TMPUncomplete = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Quest_UnComplete_Text"
|
||||
}
|
||||
}
|
||||
AchievementGridCtrl._mapEventConfig = {}
|
||||
AchievementGridCtrl._mapRedDotConfig = {}
|
||||
function AchievementGridCtrl:Awake()
|
||||
end
|
||||
function AchievementGridCtrl:FadeIn()
|
||||
end
|
||||
function AchievementGridCtrl:FadeOut()
|
||||
end
|
||||
function AchievementGridCtrl:OnEnable()
|
||||
end
|
||||
function AchievementGridCtrl:OnDisable()
|
||||
end
|
||||
function AchievementGridCtrl:OnDestroy()
|
||||
end
|
||||
function AchievementGridCtrl:OnRelease()
|
||||
end
|
||||
function AchievementGridCtrl:OnGridRefresh(mapAchievement)
|
||||
self.mapAchievement = mapAchievement
|
||||
local mapAchievementCfgData = ConfigTable.GetData("Achievement", mapAchievement.nId)
|
||||
if mapAchievementCfgData == nil then
|
||||
self.gameObject:SetActive(false)
|
||||
return
|
||||
end
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPTitle, mapAchievementCfgData.Title)
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPDesc, mapAchievementCfgData.Desc)
|
||||
if mapAchievementCfgData.Tid1 ~= 0 then
|
||||
self._mapNode.rtItem.gameObject:SetActive(true)
|
||||
self._mapNode.rtItem:SetItem(mapAchievementCfgData.Tid1, nil, mapAchievementCfgData.Qty1, nil, mapAchievement.nStatus == 3)
|
||||
else
|
||||
self._mapNode.rtItem.gameObject:SetActive(false)
|
||||
end
|
||||
self._mapNode.btnReceive.gameObject:SetActive(mapAchievement.nStatus == 1)
|
||||
self._mapNode.btnJump.gameObject:SetActive(mapAchievement.nStatus == 2 and 0 < mapAchievementCfgData.JumpTo)
|
||||
self._mapNode.TMPTimeTitle.gameObject:SetActive(mapAchievement.nStatus == 3)
|
||||
self._mapNode.TMPUncomplete.gameObject:SetActive(mapAchievement.nStatus == 2 and mapAchievementCfgData.JumpTo == 0)
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPProcess, string.format("%d/%d", mapAchievement.nCur, mapAchievement.nMax))
|
||||
if mapAchievement.nStatus == 3 then
|
||||
self._mapNode.rtBarFill.sizeDelta = Vector2(nBarLength, nBarHeight)
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPTime, mapAchievement.sTime)
|
||||
elseif 0 < mapAchievement.nMax then
|
||||
self._mapNode.rtBarFill.sizeDelta = Vector2(nBarLength * (mapAchievement.nCur / mapAchievement.nMax), nBarHeight)
|
||||
else
|
||||
self._mapNode.rtBarFill.sizeDelta = Vector2(0, nBarHeight)
|
||||
end
|
||||
self:SetPngSprite(self._mapNode.imgCup, "UI/big_sprites/zs_achievement_cup_0" .. mapAchievementCfgData.Rarity)
|
||||
for i = 1, 3 do
|
||||
self._mapNode.imgCup0[i]:SetActive(i == mapAchievementCfgData.Rarity and mapAchievement.nStatus == 3)
|
||||
end
|
||||
end
|
||||
function AchievementGridCtrl:OnBtnClick_Receive()
|
||||
local mapAchievementCfgData = ConfigTable.GetData("Achievement", self.mapAchievement.nId)
|
||||
PlayerData.Achievement:SendAchievementRewardReq({
|
||||
self.mapAchievement.nId
|
||||
}, mapAchievementCfgData.Type, nil)
|
||||
end
|
||||
function AchievementGridCtrl:OnBtnClick_Jumpto()
|
||||
local mapAchievementCfgData = ConfigTable.GetData("Achievement", self.mapAchievement.nId) or {}
|
||||
JumpUtil.JumpTo(mapAchievementCfgData.JumpTo)
|
||||
end
|
||||
function AchievementGridCtrl:OnBtnClick_Item(btn)
|
||||
local mapAchievementCfgData = ConfigTable.GetData("Achievement", self.mapAchievement.nId)
|
||||
if mapAchievementCfgData == nil then
|
||||
return
|
||||
end
|
||||
UTILS.ClickItemGridWithTips(mapAchievementCfgData.Tid1, btn.gameObject, true, true, true)
|
||||
end
|
||||
return AchievementGridCtrl
|
||||
Reference in New Issue
Block a user