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,104 @@
|
||||
local DailyInstanceRoomInfoCtrl = class("DailyInstanceRoomInfoCtrl", BaseCtrl)
|
||||
local colorWhite = Color(1, 1, 1, 1)
|
||||
local colorRed = Color(0.8470588235294118, 0.3137254901960784, 0.32941176470588235)
|
||||
DailyInstanceRoomInfoCtrl._mapNodeConfig = {
|
||||
BossHUDPanel = {
|
||||
sNodeName = "BossHUDPanel",
|
||||
sCtrlName = "Game.UI.DailyInstanceRoomInfo.DailyInstanceShelock.DailyInstanceShelockHpBar"
|
||||
},
|
||||
rtnfo = {},
|
||||
TMPTitle = {sComponentName = "TMP_Text"},
|
||||
TMPDesc = {sComponentName = "TMP_Text"},
|
||||
TMPChallengeTime = {sComponentName = "TMP_Text"},
|
||||
imgBoxIcon = {sComponentName = "Image"},
|
||||
rtChallengeTime = {},
|
||||
imgBoxIconMask = {sComponentName = "Image"}
|
||||
}
|
||||
DailyInstanceRoomInfoCtrl._mapEventConfig = {
|
||||
Daily_Instance_Gameplay_TypeOne_UniqueID = "OnEvent_OpenHpBar"
|
||||
}
|
||||
local tbIconName = {
|
||||
[3] = "item_90101",
|
||||
[2] = "item_90102",
|
||||
[1] = "item_90103"
|
||||
}
|
||||
function DailyInstanceRoomInfoCtrl:Awake()
|
||||
self.rootAnim = self.gameObject:GetComponent("Animator")
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:FadeIn()
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:FadeOut()
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnEnable()
|
||||
self._mapNode.imgBoxIconMask.gameObject:SetActive(true)
|
||||
self:SetPngSprite(self._mapNode.imgBoxIcon, "Icon/Item/" .. tbIconName[1])
|
||||
self:SetPngSprite(self._mapNode.imgBoxIconMask, "Icon/Item/" .. tbIconName[1])
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnDisable()
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnDestroy()
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnRelease()
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnStageChange(nCond)
|
||||
self.rootAnim:Play("DailyShelock_reward")
|
||||
local Wait = function()
|
||||
self._mapNode.imgBoxIconMask.gameObject:SetActive(false)
|
||||
self:SetPngSprite(self._mapNode.imgBoxIcon, "Icon/Item/" .. tbIconName[nCond])
|
||||
end
|
||||
self:AddTimer(1, 1, Wait, true, true, nil, nil)
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:StartEvent(nFloorId, nWaitTime, nLevelId)
|
||||
self.gameObject:SetActive(true)
|
||||
local mapFloorCfgData = ConfigTable.GetData("DailyInstanceFloor", nFloorId)
|
||||
local mapLevelCfgData = ConfigTable.GetData("DailyInstance", nLevelId)
|
||||
self.nBossDataId = mapFloorCfgData.monsterId
|
||||
self.nTotalTime = mapFloorCfgData.LevelTotalTime
|
||||
self._mapNode.BossHUDPanel:SetHpBarGrid(mapFloorCfgData.OneStarCondition, mapFloorCfgData.TwoStarCondition)
|
||||
self.cond1 = mapFloorCfgData.OneStarCondition
|
||||
self.cond2 = mapFloorCfgData.TwoStarCondition
|
||||
self.nState = 1
|
||||
self.bEnd = false
|
||||
self._mapNode.rtnfo:SetActive(false)
|
||||
self._mapNode.imgBoxIcon.gameObject:SetActive(true)
|
||||
self._mapNode.TMPDesc.gameObject:SetActive(false)
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPDesc, mapLevelCfgData.ThreeStarDesc)
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPChallengeTime, "00:00")
|
||||
NovaAPI.SetTMPColor(self._mapNode.TMPChallengeTime, colorWhite)
|
||||
self._mapNode.BossHUDPanel.gameObject:SetActive(false)
|
||||
self._mapNode.rtChallengeTime:SetActive(false)
|
||||
EventManager.Add("Daily_Instance_Gameplay_Time", self, self.OnEvent_SpecialMode_Count)
|
||||
EventManager.Add("OnEvent_ShowRtChallengeTime", self, self.ShowRtChallengeTime)
|
||||
local waitCallback = function()
|
||||
self._mapNode.rtnfo:SetActive(false)
|
||||
self._mapNode.TMPDesc.gameObject:SetActive(true)
|
||||
self._mapNode.BossHUDPanel.gameObject:SetActive(true)
|
||||
end
|
||||
self:AddTimer(1, nWaitTime, waitCallback, true, true, false)
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:SetTime(nTime)
|
||||
local nMin = math.floor(nTime / 60)
|
||||
local nSec = math.fmod(nTime, 60)
|
||||
NovaAPI.SetTMPText(self._mapNode.TMPChallengeTime, string.format("%02d:%02d", nMin, nSec))
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnEvent_SpecialMode_Count(nTime)
|
||||
if self.nTotalTime - nTime <= 5 then
|
||||
NovaAPI.SetTMPColor(self._mapNode.TMPChallengeTime, colorRed)
|
||||
else
|
||||
NovaAPI.SetTMPColor(self._mapNode.TMPChallengeTime, colorWhite)
|
||||
end
|
||||
self:SetTime(self.nTotalTime - nTime)
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:OnEvent_OpenHpBar(nEntityId)
|
||||
self._mapNode.BossHUDPanel:OpenUI(nEntityId, self.nBossDataId, self)
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:ShowRtChallengeTime()
|
||||
self._mapNode.rtChallengeTime:SetActive(true)
|
||||
end
|
||||
function DailyInstanceRoomInfoCtrl:LevelEnd()
|
||||
self.bEnd = true
|
||||
self.gameObject:SetActive(false)
|
||||
EventManager.Remove("Daily_Instance_Gameplay_Time", self, self.OnEvent_SpecialMode_Count)
|
||||
EventManager.Remove("OnEvent_ShowRtChallengeTime", self, self.ShowRtChallengeTime)
|
||||
end
|
||||
return DailyInstanceRoomInfoCtrl
|
||||
Reference in New Issue
Block a user