PGRData/Script/matrix/xui/xuirift/XUiRiftFightLayerSelect.lua
2024-09-01 22:49:41 +02:00

567 lines
No EOL
22 KiB
Lua
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

--大秘境作战层选择界面(点击区域进入此处)
local XUiRiftFightLayerSelect = XLuaUiManager.Register(XLuaUi, "UiRiftFightLayerSelect")
local XUiGridRiftFightLayer = require("XUi/XUiRift/Grid/XUiGridRiftFightLayer")
local XUiRiftPluginGrid = require("XUi/XUiRift/Grid/XUiRiftPluginGrid")
local IsPlayEnableAnimTrigger = nil
local BubbleChangeTime = 3 -- 插件和奖励列表切换的时间
local BubbleDuration = 10 -- 启用切换气泡
function XUiRiftFightLayerSelect:OnAwake()
self.FuncUnlockItemId = nil -- 特权解锁的道具id
self.GridRewardList = {}
self.GridPluginList = {}
self:InitButton()
self:InitDynamicTable()
self:InitAssetPanel()
self.BtnAttributeRedEventId = XRedPointManager.AddRedPointEvent(self.BtnAttribute, self.OnCheckAttribute, self, { XRedPointConditions.Types.CONDITION_RIFT_ATTRIBUTE })
end
function XUiRiftFightLayerSelect:InitButton()
XUiHelper.RegisterClickEvent(self, self.BtnBack, self.OnBtnMapClick)
XUiHelper.RegisterClickEvent(self, self.BtnMainUi, function() XLuaUiManager.RunMain() end)
self:BindHelpBtn(self.BtnHelp, "RiftHelp")
self:BindHelpBtn(self.BtnLuckHelp, "RiftLuckyHelp")
XUiHelper.RegisterClickEvent(self, self.BtnTask, function() XLuaUiManager.Open("UiRiftTask") end)
XUiHelper.RegisterClickEvent(self, self.BtnTask2, self.OnBtnFuncUnlockClick)
XUiHelper.RegisterClickEvent(self, self.BtnAttribute, self.OnBtnAttributeClick)
XUiHelper.RegisterClickEvent(self, self.BtnPluginBag, function() XLuaUiManager.Open("UiRiftPluginBag") end)
XUiHelper.RegisterClickEvent(self, self.BtnShop, function() XDataCenter.RiftManager.OpenUiShop() end)
XUiHelper.RegisterClickEvent(self, self.BtnCharacter, function() XLuaUiManager.Open("UiRiftCharacter", nil, nil, nil, true) end)
-- XUiHelper.RegisterClickEvent(self, self.BtnMap, self.OnBtnMapClick)
XUiHelper.RegisterClickEvent(self, self.BtnLuck, self.OnBtnLuckClick)
XUiHelper.RegisterClickEvent(self, self.BtnStart, self.OnBtnStartClick)
XUiHelper.RegisterClickEvent(self, self.BtnStartAgain, self.OnBtnStartClick)
XUiHelper.RegisterClickEvent(self, self.BtnGiveup, self.OnBtnGiveupClick)
XUiHelper.RegisterClickEvent(self, self.BtnRefresh, self.OnBtnRefreshClick)
XUiHelper.RegisterClickEvent(self, self.BtnMopup, self.OnBtnMopupClick) -- 派遣(扫荡)
XUiHelper.RegisterClickEvent(self, self.BtnReward, function() XLuaUiManager.Open("UiRiftPreview", self.CurrSelectXFightLayer) end)
end
function XUiRiftFightLayerSelect:InitDynamicTable()
-- 选择作战层的滑动列表
self.DynamicTable = XDynamicTableNormal.New(self.FightLayerList)
self.DynamicTable:SetProxy(XUiGridRiftFightLayer, self)
self.DynamicTable:SetDelegate(self)
end
function XUiRiftFightLayerSelect:OnStart(parentUi, panel3D)
self.ParentUi = parentUi
self.Panel3D = panel3D
parentUi.ChildUi = self
IsPlayEnableAnimTrigger = true
end
function XUiRiftFightLayerSelect:InitBubbleChange()
if self.BubbleTimer then
return
end
local duration = BubbleDuration
local changeCD = BubbleChangeTime -- 插件和奖励列表切换的时间
local flag = true
self.PanelRewardList.gameObject:SetActiveEx(flag)
self.PanelPluginList.gameObject:SetActiveEx(not flag)
self.Transform:Find("Animation/RewardEnable"):PlayTimelineAnimation()
self.BubbleTimer = XScheduleManager.ScheduleForever(function()
changeCD = changeCD - 1
duration = duration - 1
if changeCD < 0 then -- 切换气泡显示
changeCD = BubbleChangeTime
flag = not flag
self.PanelRewardList.gameObject:SetActiveEx(flag)
self.PanelPluginList.gameObject:SetActiveEx(not flag)
end
if duration < 0 then -- 气泡消失
self.Transform:Find("Animation/RewardDisable"):PlayTimelineAnimation(function ()
self.PanelRewardList.gameObject:SetActiveEx(false)
self.PanelPluginList.gameObject:SetActiveEx(false)
end)
self:RemoveTimer()
end
end, XScheduleManager.SECOND, 0)
end
function XUiRiftFightLayerSelect:RemoveTimer()
if not self.BubbleTimer then return end
XScheduleManager.UnSchedule(self.BubbleTimer)
self.BubbleTimer = nil
end
function XUiRiftFightLayerSelect:OnEnable()
self.ParentUi.ChildUi = self
if IsPlayEnableAnimTrigger then -- 从riftMain打开时才播动画
IsPlayEnableAnimTrigger = nil
self.Transform:Find("Animation/AnimEnable1"):PlayTimelineAnimation()
end
-- 切换为区域镜头
self.XChapter = XDataCenter.RiftManager.GetEntityChapterById(self.ParentUi.CurrSelectIndex)
self.Panel3D:SetCameraAngleByChapterId(self.ParentUi.CurrSelectIndex)
self.Panel3D:SetOtherGameObjectShowByChapterId(self.ParentUi.CurrSelectIndex)
self.Panel3D:SetDragComponentEnable(false)
-- 每次进入检查以下trigger
-- 1.跨层通关 2.跨层解锁 3.跳转作战层并开始作战 4.是否首通当前区域
-- 高盖低机制trigger展示提示界面
local jumpResTrigger = XDataCenter.RiftManager.GetIsTriggerJumpRes()
if jumpResTrigger then
XLuaUiManager.Open("UiRiftJumpResults", jumpResTrigger, function ()
self.XChapter:CheckFirstPassAndOpenTipFun(function (nextChapter)
self.ParentUi:AutoPositioningToOpenBubbleByChapterId(nextChapter:GetId())
self:OnBtnMapClick()
end)
end)
end
-- 每次进入界面检测【跃升跨层解锁】Trigger和【下一层】跳转Trigger跃升trigger优先
local isJumpOpenTrigger = XDataCenter.RiftManager.GetIsTriggerJumpOpen()
local isLayerIdTrigger = XDataCenter.RiftManager.GetIsNewLayerIdTrigger()
self.PanelBegin.gameObject:SetActiveEx(false) -- 弹横幅
self.PanelBeginJump.gameObject:SetActiveEx(false)
self:AutoPositioningByLayerId(isLayerIdTrigger)
self:RefreshDynamicTable()
self:Refresh()
self:InitBubbleChange()
-- 刷新完数据 最后再弹各种提示
-- 横幅互斥
if isJumpOpenTrigger then
self.PanelBeginJump.gameObject:SetActiveEx(true)
self.TxtBeginJump.text = CS.XTextManager.GetText("RiftLayerStartByJump", XDataCenter.RiftManager.GetMaxUnLockFightLayerId())
elseif isLayerIdTrigger then
self.PanelBegin.gameObject:SetActiveEx(true)
self.TxtBegin.text = CS.XTextManager.GetText("RiftLayerStartByAuto", isLayerIdTrigger)
end
-- 跳转Trigger必开始作战
if isLayerIdTrigger then
XDataCenter.RiftManager.RiftStartLayerRequest(isLayerIdTrigger, function ()
self:Refresh()
end)
end
-- 检测区域是否全部通关 弹提示,必现要在跃升奖励之后再弹该提示
if not jumpResTrigger then
self.XChapter:CheckFirstPassAndOpenTipFun(function (nextChapter)
self.ParentUi:AutoPositioningToOpenBubbleByChapterId(nextChapter:GetId())
self:OnBtnMapClick()
end)
end
end
function XUiRiftFightLayerSelect:Refresh()
self:RefreshUiShow() -- 刷新2d界面ui信息
self:RefreshFightLayerData() -- 刷新3d关卡节点数据
end
function XUiRiftFightLayerSelect:RefreshUiShow()
self.BtnMopup:SetNameByGroup(1, XDataCenter.RiftManager.GetSweepLeftTimes().."/"..XDataCenter.RiftManager.GetCurrentConfig().DailySweepTimes)
-- 目标(任务/权限回收)
self:RefreshUiTask()
self:RefreshFuncUnlock()
-- 幸运值信息
local value = math.floor((self.XChapter:GetLuckValueProgress() * 100))
self.TxtLuckProgress.text = value.. "%"
self.ImgLuckProgress.fillAmount = self.XChapter:GetLuckValueProgress()
local isUnlock = XDataCenter.RiftManager.IsFuncUnlock(XRiftConfig.FuncUnlockId.LuckyStage)
self.PanelHiddenStage.gameObject:SetActiveEx(isUnlock)
-- 资源栏
self:UpdateAssetPanel()
-- 属性加点按钮
local isUnlock = XDataCenter.RiftManager.IsFuncUnlock(XRiftConfig.FuncUnlockId.Attribute)
self.BtnAttribute:SetDisable(not isUnlock)
-- 商店按钮
XRedPointManager.Check(self.BtnAttributeRedEventId)
local isShopRed = XDataCenter.RiftManager.IsShopRed()
self.BtnShop:ShowReddot(isShopRed)
-- 插件背包按钮
local isPluginRed = XDataCenter.RiftManager.IsPluginBagRed()
self.BtnPluginBag:ShowReddot(isPluginRed)
end
function XUiRiftFightLayerSelect:RefreshDynamicTable()
local resourceList = self.XChapter:GetAllFightLayersOrderList()
local res = {}
local unLockCount = 0
for i, xFightLayer in ipairs(resourceList) do
if xFightLayer:CheckHasLock() then
unLockCount = unLockCount + 1
if unLockCount > 5 then
break
end
end
table.insert(res, xFightLayer)
end
self.LayerListData = res
self.DynamicTable:SetDataSource(self.LayerListData)
self.DynamicTable:ReloadDataSync(self.CurrSelectLayerListIndex or 1)
end
function XUiRiftFightLayerSelect:OnDynamicTableEvent(event, index, grid)
if event == DYNAMIC_DELEGATE_EVENT.DYNAMIC_GRID_ATINDEX then
local isSelect = self.CurrSelectLayerListIndex == index
grid:Update(self.LayerListData[index], index)
grid:SetSelect(isSelect)
if isSelect then
self.CurrGrid = grid
end
elseif event == DYNAMIC_DELEGATE_EVENT.DYNAMIC_GRID_TOUCHED then
local xFightLayer = self.LayerListData[index]
if xFightLayer:CheckHasLock() then
local text = nil
if xFightLayer.Config.UnlockByPrevLayer then
text = "RiftLayerLimit2"
else
text = "RiftLayerLimit1"
end
XUiManager.TipError(CS.XTextManager.GetText(text))
return
end
self.CurrGrid:SetSelect(false)
grid:SetSelect(true)
self.CurrGrid = grid
self.CurrSelectLayerListIndex = index
end
end
-- 自动定位层级,该函数不包含动态列表刷新,调用完该函数后要再手动调用一遍刷新动态列表
-- 1.如果传入指定序号,则直接定位到该序号
function XUiRiftFightLayerSelect:AutoPositioning(index)
local curIndex = index or 1
self.CurrSelectLayerListIndex = curIndex
end
-- 自动定位层级
-- 如果传了id定位到该id对应的层
-- 没传的话 则自动定位到当前已经在作战中的层
-- 如果没有在作战中的层,则定位到上一次战斗过的层
-- 如果没有上一次战斗的层级,则定位到上一次进入查看过的层级
-- 如果都不满足则定位到列表的第一个
function XUiRiftFightLayerSelect:AutoPositioningByLayerId(layerId)
self.LayerListData = self.XChapter:GetAllFightLayersOrderList()
local curIndex = 1
local curLayerId = self.LayerListData[1]:GetId() -- 默认选第一个
if layerId then
curLayerId = layerId
else
local curPlayingLayer = self.XChapter:GetCurPlayingFightLayer()
local lastFightStage = XDataCenter.RiftManager.GetLastFightXStage()
if curPlayingLayer then
curLayerId = curPlayingLayer:GetId()
elseif lastFightStage then
curLayerId = lastFightStage:GetParent():GetParent():GetId()
else
local lastFightLayerData = XDataCenter.RiftManager.GetLastRecordFightLayer()
if not XTool.IsTableEmpty(lastFightLayerData) then
curLayerId = lastFightLayerData.FightLayerId
end
end
end
-- 找到这个作战层在列表里的序号index 如果该作战层不属于该chapter则还是定位到默认index=1的作战层
self.CurrSelectXFightLayer = XDataCenter.RiftManager.GetEntityFightLayerById(curLayerId)
local xCurFightLayer = XDataCenter.RiftManager.GetEntityFightLayerById(curLayerId)
for k, xFightLayer in pairs(self.LayerListData) do
if xFightLayer == xCurFightLayer then
curIndex = k
break
end
end
self:AutoPositioning(curIndex)
end
function XUiRiftFightLayerSelect:OnGridFightLayerSelected(grid)
-- 进入战斗层,记录进入打个卡
XDataCenter.RiftManager.SaveLastFightLayer(grid.XFightLayer)
grid.XFightLayer:SaveFirstEnter()
if self.CurrSelectXFightLayer == grid.XFightLayer then
return
end
self.CurrSelectXFightLayer = grid.XFightLayer
self.Transform:Find("Animation/QieHuan"):PlayTimelineAnimation()
grid:RefreshReddot()
self:Refresh()
self:InitBubbleChange() -- 打开气泡
end
-- 刷新该层的相关数据
function XUiRiftFightLayerSelect:RefreshFightLayerData()
-- 刷新层名 深度
self.TxtDepth.text = self.CurrSelectXFightLayer:GetId()
self.TxtTitle.text = self.CurrSelectXFightLayer:GetTypeDesc()
-- 刷新奖励信息
local rewards = {}
local rewardId = self.CurrSelectXFightLayer:GetConfig().RewardId
if rewardId > 0 then
rewards = XRewardManager.GetRewardList(rewardId)
end
for i, grid in ipairs(self.GridRewardList) do
grid.GameObject:SetActiveEx(false)
end
for i, item in ipairs(rewards) do
local grid = self.GridRewardList[i]
if not grid then
local ui = CS.UnityEngine.Object.Instantiate(self.GridReward, self.GridReward.parent)
grid = XUiGridCommon.New(self, ui)
self.GridRewardList[i] = grid
end
grid:Refresh(item)
grid:SetReceived(self.CurrSelectXFightLayer:CheckHasPassed())
grid.GameObject:SetActive(true)
end
self.GridReward.gameObject:SetActiveEx(false)
-- 刷新插件信息
for i, grid in ipairs(self.GridPluginList) do
grid.GameObject:SetActiveEx(false)
end
local pluginIds = self.CurrSelectXFightLayer.ClientConfig.PluginList
for i, pluginId in ipairs(pluginIds) do
local grid = self.GridPluginList[i]
if not grid then
local ui = CS.UnityEngine.Object.Instantiate(self.GridRiftPlugin, self.GridRiftPlugin.parent)
grid = XUiRiftPluginGrid.New(ui)
self.GridPluginList[i] = grid
end
local xPlugin = XDataCenter.RiftManager.GetPlugin(pluginId)
grid:Refresh(xPlugin)
grid:Init(function ()
XLuaUiManager.Open("UiRiftPluginShopTips", {PluginId = xPlugin:GetId()})
end)
grid.GameObject:SetActive(true)
end
self.GridRiftPlugin.gameObject:SetActiveEx(false)
-- 刷新关卡节点(3D)
self.Panel3D:SetGridStageGroupData(self.CurrSelectXFightLayer)
-- 作战层动态列表和地图按钮互斥显示
local isFightBtn = self.CurrSelectXFightLayer:CheckHasStarted()
self.PanelLayerList.gameObject:SetActiveEx(not isFightBtn)
self.PanelFightBtn.gameObject:SetActiveEx(isFightBtn)
-- 刷新按钮显示状态
local isShow = self.CurrSelectXFightLayer:CheckHasPassed() -- 已通关用再次挑战按钮
self.BtnStartAgain.gameObject:SetActiveEx(isShow)
self.BtnStart.gameObject:SetActiveEx(not isShow)
local currBtnStart = isShow and self.BtnStartAgain or self.BtnStart
currBtnStart.gameObject:SetActiveEx(true)
self.BtnRefresh.gameObject:SetActiveEx(false)
self.BtnGiveup:SetDisable(false)
self.BtnRefresh:SetDisable(false)
if self.CurrSelectXFightLayer:CheckHasStarted() then -- 作战开始
currBtnStart.gameObject:SetActiveEx(false)
-- 作战开始但是进度为0
if self.CurrSelectXFightLayer:GetProgress() <= 0 then
self.BtnRefresh.gameObject:SetActiveEx(true)
else
self.BtnRefresh.gameObject:SetActiveEx(false)
end
elseif self.CurrSelectXFightLayer:CheckNoneData() then -- 没有任何数据
self.BtnGiveup:SetDisable(true)
self.BtnRefresh:SetDisable(true)
end
local isZoom = self.CurrSelectXFightLayer:GetType() == XRiftConfig.LayerType.Zoom
self.BtnMopup.gameObject:SetActiveEx(not isZoom) -- 跃升层隐藏扫荡按钮
self.BtnMopup:SetDisable(self.CurrSelectXFightLayer:CheckMopupDisable()) -- 跃升层隐藏扫荡按钮
end
function XUiRiftFightLayerSelect:OnBtnStartClick()
XDataCenter.RiftManager.RiftStartLayerRequest(self.CurrSelectXFightLayer:GetId(), function ()
self:Refresh()
end)
end
function XUiRiftFightLayerSelect:OnBtnGiveupClick()
local title = CS.XTextManager.GetText("TipTitle")
local content = CS.XTextManager.GetText("RiftGiveUpConfirm")
local sureCallback = function ()
XDataCenter.RiftManager.RiftStopLayerRequest(function ()
self:Refresh()
local playTrans = self.Transform:Find("Animation/LayerListEnable")
if playTrans.gameObject.activeInHierarchy then
playTrans:PlayTimelineAnimation()
end
end)
end
XLuaUiManager.Open("UiDialog", title, content, XUiManager.DialogType.Normal, nil, sureCallback)
end
function XUiRiftFightLayerSelect:OnBtnRefreshClick()
local title = CS.XTextManager.GetText("TipTitle")
local content = CS.XTextManager.GetText("RiftRefreshRandomConfirm")
local sureCallback = function ()
XDataCenter.RiftManager.RiftStartLayerRequestWithCD(self.CurrSelectXFightLayer:GetId(), function ()
self:Refresh()
end)
end
if self.CurrSelectXFightLayer:CheckIsOwnFighting() then
XLuaUiManager.Open("UiDialog", title, content, XUiManager.DialogType.Normal, nil, sureCallback)
else
sureCallback()
end
end
function XUiRiftFightLayerSelect:OnBtnMopupClick()
if XDataCenter.RiftManager.GetSweepLeftTimes() <= 0 then
XUiManager.TipError(CS.XTextManager.GetText("RiftSweepTimesLimit"))
return
end
if not self.CurrSelectXFightLayer:CheckHasPassed() then
XUiManager.TipError(CS.XTextManager.GetText("RiftSweepFirstPassLimit"))
return
end
if self.CurrSelectXFightLayer:CheckIsOwnFighting() then
XUiManager.TipError(CS.XTextManager.GetText("RiftSweepDataLimit"))
return
end
local title = CS.XTextManager.GetText("TipTitle")
local content = CS.XTextManager.GetText("RiftSweepConfirm")
local sureCallback = function ()
XDataCenter.RiftManager.RiftSweepLayerRequest(self.CurrSelectXFightLayer:GetId(), function ()
self:Refresh()
end)
end
XLuaUiManager.Open("UiDialog", title, content, XUiManager.DialogType.Normal, nil, sureCallback)
end
function XUiRiftFightLayerSelect:OnBtnLuckClick()
-- 区域唯一幸运节点检测
local luckFightLayer = self.XChapter:GetCurrLuckFightLayer()
if luckFightLayer and luckFightLayer:GetLuckStageGroup() and not luckFightLayer:GetLuckStageGroup():CheckHasPassed() then
local title = CS.XTextManager.GetText("TipTitle")
local content = CS.XTextManager.GetText("RiftLuckOnlyLimit")
local sureCallback = function ()
-- 检测跳转限制,目标作战层不是该层
if self.CurrSelectXFightLayer:CheckIsOwnFighting() and luckFightLayer ~= self.CurrSelectXFightLayer then
XUiManager.TipError(CS.XTextManager.GetText("RiftFightLimit"))
return
end
-- 跳转到指定层
self:AutoPositioningByLayerId(luckFightLayer:GetId())
self:RefreshDynamicTable()
self:Refresh()
end
XLuaUiManager.Open("UiDialog", title, content, XUiManager.DialogType.Normal, nil, sureCallback)
return
end
-- 开始作战状态检测
if not self.CurrSelectXFightLayer:CheckHasStarted() then
XUiManager.TipError(CS.XTextManager.GetText("RiftLuckNotFightLimit"))
return
end
-- 幸运值检测
if self.XChapter:GetLuckValueProgress() < 1 then
XUiManager.TipError(CS.XTextManager.GetText("RiftLuckValueLimit"))
return
end
XDataCenter.RiftManager.RiftStartLuckyNodeRequest(function ()
self:Refresh()
end)
end
function XUiRiftFightLayerSelect:OnBtnBackClick()
self:Close()
self.ParentUi:Close()
end
function XUiRiftFightLayerSelect:OnBtnMapClick()
self:Close()
self.ParentUi:OnChildUiClose()
end
-- 点击特权解锁
function XUiRiftFightLayerSelect:OnBtnFuncUnlockClick()
if self.FuncUnlockItemId then
local data = {
Id = self.FuncUnlockItemId,
Count = "0"
}
XLuaUiManager.Open("UiTip", data)
XDataCenter.RiftManager.CloseFuncUnlockRed()
self:RefreshFuncUnlock()
end
end
function XUiRiftFightLayerSelect:OnBtnAttributeClick()
local isUnlock = XDataCenter.RiftManager.IsFuncUnlock(XRiftConfig.FuncUnlockId.Attribute)
if isUnlock then
XLuaUiManager.Open("UiRiftAttribute")
else
local funcUnlockCfg = XRiftConfig.GetCfgByIdKey(XRiftConfig.TableKey.RiftFuncUnlock, XRiftConfig.FuncUnlockId.Attribute)
XUiManager.TipError(funcUnlockCfg.Desc)
end
end
function XUiRiftFightLayerSelect:OnCheckAttribute(count)
self.BtnAttribute:ShowReddot(count >= 0)
end
function XUiRiftFightLayerSelect:OnDisable()
-- 关闭界面隐藏所有关卡节点
self.Panel3D:ClearAllStageGroup()
self.Panel3D:SetDragComponentEnable(true)
self:RemoveTimer()
end
function XUiRiftFightLayerSelect:InitAssetPanel()
self.AssetActivityPanel = XUiPanelActivityAsset.New(self.PanelSpecialTool)
XDataCenter.ItemManager.AddCountUpdateListener(
{
XDataCenter.ItemManager.ItemId.RiftGold,
XDataCenter.ItemManager.ItemId.RiftCoin
},
handler(self, self.UpdateAssetPanel),
self.AssetActivityPanel
)
end
function XUiRiftFightLayerSelect:UpdateAssetPanel()
self.AssetActivityPanel:Refresh(
{
XDataCenter.ItemManager.ItemId.RiftGold,
XDataCenter.ItemManager.ItemId.RiftCoin
}
)
end
-- 刷新任务ui
function XUiRiftFightLayerSelect:RefreshUiTask()
local titleName, desc = XDataCenter.RiftManager.GetBtnShowTask()
local isShow = titleName ~= nil
self.PanelTask.gameObject:SetActiveEx(isShow)
if isShow then
self.TxtTaskName.text = titleName
self.TxtTaskDesc.text = desc
local isShowRed = XDataCenter.RiftManager.CheckTaskCanReward()
self.BtnTask:ShowReddot(isShowRed)
end
end
-- 刷新特权解锁ui
function XUiRiftFightLayerSelect:RefreshFuncUnlock()
local unlockConfig = XDataCenter.RiftManager.GetNextFuncUnlockConfig()
local isShow = unlockConfig ~= nil
self.PanelTask2.gameObject:SetActiveEx(isShow)
if isShow then
self.FuncUnlockItemId = unlockConfig.ItemId
self.TxtTaskDesc2.text = unlockConfig.Desc
local isRed = XDataCenter.RiftManager.IsFuncUnlockRed()
self.BtnTask2:ShowReddot(isRed)
end
end
return XUiRiftFightLayerSelect