551 lines
No EOL
19 KiB
Lua
551 lines
No EOL
19 KiB
Lua
local XUiActivityBriefGridLine = require("XUi/XUiActivityBrief/XUiActivityBriefGridLine")
|
||
local XUiActivityBriefShop = XLuaUiManager.Register(XLuaUi, "UiActivityBriefShop")
|
||
|
||
local CSXTextManagerGetText = CS.XTextManager.GetText
|
||
local CSInstantiate = CS.UnityEngine.Object.Instantiate
|
||
local ShopHintText = CSXTextManagerGetText("ActivityBriefShopLock")
|
||
local CanBuyColor = CS.XGame.ClientConfig:GetString("ActivityShopItemTextCanBuyColor")
|
||
local CanNotBuyColor = CS.XGame.ClientConfig:GetString("ActivityShopItemTextCanNotBuyColor")
|
||
local ShopItemTextColor = {
|
||
CanBuyColor = CanBuyColor,
|
||
CanNotBuyColor = CanNotBuyColor,
|
||
}
|
||
local HIDE_GOOD_ID = 127671 -- 前期隐藏不下发,后期才下发的商品id -- todo 下个版本提优化单支持配置
|
||
|
||
function XUiActivityBriefShop:OnAwake()
|
||
self.SortGroup.gameObject:SetActiveEx(false)
|
||
self.GridShop.gameObject:SetActiveEx(false)
|
||
self.HintTxt.gameObject:SetActiveEx(false)
|
||
self.ImgEmpty.gameObject:SetActiveEx(true)
|
||
self.BtnTong1.gameObject:SetActiveEx(false)
|
||
self.GridLine.gameObject:SetActiveEx(false)
|
||
self.SortGroupContent = self.SortGroup.transform.parent:GetComponent("RectTransform")
|
||
|
||
self.ShopLockDecs = {}
|
||
self.SortGroupList = {}
|
||
self.XUiGridShopList = {}
|
||
|
||
self.AssetActivityPanel = XUiPanelActivityAsset.New(self.PanelActivityAsset, true)
|
||
self:SetButtonCallBack()
|
||
self:InitDynamicTable()
|
||
end
|
||
|
||
function XUiActivityBriefShop:OnStart(closeCb, openCb, selectedShopId, screenId)
|
||
self.CloseCb = closeCb
|
||
self.OpenCb = openCb
|
||
self.ScreenId = screenId
|
||
self.ShopIdList = XDataCenter.ActivityBriefManager.GetActivityShopIds()
|
||
|
||
self:CheckShopTabLock()
|
||
self:InitShopTabList(selectedShopId, screenId)
|
||
end
|
||
|
||
function XUiActivityBriefShop:OnEnable()
|
||
self:CheckShopTabLock()
|
||
self:RefreshShopTabLock()
|
||
self:UpdatePanel()
|
||
|
||
self:PlayAnimationWithMask("ShopEnable", function()
|
||
if self.OpenCb then self.OpenCb() end
|
||
end)
|
||
end
|
||
|
||
function XUiActivityBriefShop:OnDisable()
|
||
self:ClearCountDown()
|
||
|
||
for _, grid in ipairs(self.XUiGridShopList) do
|
||
grid:OnRecycle()
|
||
end
|
||
local lineGrids = self.DynamicTable:GetGrids()
|
||
for _, lineGrid in pairs(lineGrids) do
|
||
lineGrid:OnRecycle()
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:SetButtonCallBack()
|
||
XUiHelper.RegisterClickEvent(self, self.BtnBack, self.OnBtnBackClick)
|
||
XUiHelper.RegisterClickEvent(self, self.BtnShaiXuan, self.OnBtnShaiXuanClick)
|
||
end
|
||
|
||
function XUiActivityBriefShop:OnBtnBackClick()
|
||
self:Close()
|
||
|
||
if self.CloseCb then
|
||
self.CloseCb()
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:OnBtnShaiXuanClick()
|
||
local callBack = function(data)
|
||
self.SelectTag = data.text
|
||
self:UpdateGoodList()
|
||
end
|
||
|
||
local dataProvider = self:GetSuitScreenDataProvider()
|
||
local selectData = dataProvider[1]
|
||
for i = 1, #dataProvider do
|
||
local data = dataProvider[i]
|
||
if data.text == self.SelectTag then
|
||
selectData = data
|
||
break
|
||
end
|
||
end
|
||
|
||
XLuaUiManager.Open('UiShopWaferSelect', selectData, dataProvider, callBack)
|
||
end
|
||
|
||
function XUiActivityBriefShop:InitShopTabList(selectedShopId, screenId)
|
||
self.ShopBtn = {}
|
||
for i, shopId in ipairs(self.ShopIdList) do
|
||
local go = CSInstantiate(self.BtnTong1, self.BtnTong1.transform.parent)
|
||
go.gameObject:SetActiveEx(true)
|
||
local btn = go:GetComponent("XUiButton")
|
||
local shopName = XShopManager.GetShopName(shopId)
|
||
btn:SetNameByGroup(0, shopName)
|
||
table.insert(self.ShopBtn, btn)
|
||
end
|
||
|
||
self.BtnTab:Init(self.ShopBtn, function(index)
|
||
self:SelectShop(index)
|
||
end)
|
||
|
||
local selIndex = self:GetSelectShopIndex(selectedShopId, screenId)
|
||
self.BtnTab:SelectIndex(selIndex)
|
||
end
|
||
|
||
function XUiActivityBriefShop:SelectShop(index)
|
||
if self.CurIndex == index then
|
||
return
|
||
end
|
||
|
||
self.CurIndex = index
|
||
self:PlayAnimation("QieHuan")
|
||
self:UpdatePanel()
|
||
self.SortGroupContent.anchoredPosition = CS.UnityEngine.Vector2(0, 0)
|
||
end
|
||
|
||
-- 获取选中的商店下标
|
||
function XUiActivityBriefShop:GetSelectShopIndex(selectedShopId, screenId)
|
||
if XTool.IsNumberValid(screenId) then
|
||
local value, _ = XShopManager.GetShopScreenGroupSelectValueAndScreenNum(selectedShopId, screenId)
|
||
selectedShopId = XTool.IsNumberValid(value) and selectedShopId or 0
|
||
end
|
||
|
||
if selectedShopId then
|
||
for index, shopId in pairs(self.ShopIdList) do
|
||
if shopId == selectedShopId then
|
||
return index
|
||
end
|
||
end
|
||
end
|
||
|
||
-- 优先选中有可购商品的商店
|
||
for i, shopId in ipairs(self.ShopIdList) do
|
||
local goods = XShopManager.GetShopGoodsList(shopId)
|
||
for _, good in ipairs(goods) do
|
||
local canBuy = good.BuyTimesLimit == 0 or (good.TotalBuyTimes < good.BuyTimesLimit)
|
||
if canBuy then
|
||
return i
|
||
end
|
||
end
|
||
end
|
||
|
||
return 1
|
||
end
|
||
|
||
function XUiActivityBriefShop:GetCurShopId()
|
||
return self.ShopIdList[self.CurIndex]
|
||
end
|
||
|
||
function XUiActivityBriefShop:CheckShopTabLock()
|
||
self.ShopLockDecs = {}
|
||
for k, shopId in pairs(self.ShopIdList) do
|
||
local conditions = XDataCenter.ActivityBriefManager.GetActivityShopConditionByShopId(shopId)
|
||
for _, condition in pairs(conditions or {}) do
|
||
if condition ~= 0 then
|
||
local isOpen, desc = XConditionManager.CheckCondition(condition)
|
||
if not isOpen then
|
||
self.ShopLockDecs[shopId] = desc
|
||
break
|
||
end
|
||
end
|
||
end
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:RefreshShopTabLock()
|
||
for i, shopId in pairs(self.ShopIdList) do
|
||
local shopBtn = self.ShopBtn[i]
|
||
local isLock = self.ShopLockDecs[shopId] ~= nil
|
||
shopBtn:ShowTag(isLock)
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:UpdatePanel()
|
||
local shopId = self:GetCurShopId()
|
||
local goods = XShopManager.GetShopGoodsList(shopId)
|
||
|
||
-- 上锁提示
|
||
local isLock = self.ShopLockDecs[shopId] ~= nil
|
||
self.HintTxt.gameObject:SetActiveEx(isLock)
|
||
if isLock then
|
||
self.HintTxt.text = self.ShopLockDecs[shopId]
|
||
end
|
||
|
||
-- 无商品提示
|
||
local isEmpty = not next(goods)
|
||
self.ImgEmpty.gameObject:SetActiveEx(isEmpty)
|
||
if not isEmpty then
|
||
self.AssetActivityPanel:Refresh(XShopManager.GetShopShowIdList(shopId))
|
||
end
|
||
|
||
-- 刷新商店背景图和图标
|
||
local shopBg = XActivityBriefConfigs.GetActivityShopByInfoId(self.CurIndex).ShopBg
|
||
if shopBg and self.RImgBg then
|
||
self.RImgBg:SetRawImage(shopBg)
|
||
end
|
||
local shopIcon = XActivityBriefConfigs.GetActivityShopByInfoId(self.CurIndex).ShopIcon
|
||
if shopIcon and self.RImgShopIcon then
|
||
self.RImgShopIcon:SetRawImage(shopIcon)
|
||
end
|
||
|
||
self:InitShaiXuan()
|
||
self:UpdateGoodList()
|
||
self:StartCountDown()
|
||
end
|
||
|
||
-- 刷新商品列表
|
||
function XUiActivityBriefShop:UpdateGoodList()
|
||
local shopId = self:GetCurShopId()
|
||
local shopGoods
|
||
if self:IsShowShaiXuan() then
|
||
shopGoods = XShopManager.GetScreenGoodsListByTag(shopId, self.ScreenGroupIDList[1], self.SelectTag)
|
||
else
|
||
shopGoods = XShopManager.GetShopGoodsList(shopId)
|
||
end
|
||
|
||
self.PanelItemList.gameObject:SetActiveEx(false)
|
||
self.PanelItemList2.gameObject:SetActiveEx(false)
|
||
|
||
-- 筛选组
|
||
local sortGroupInfoList = self:GetSortGroupInfoList(shopGoods, shopId)
|
||
if #sortGroupInfoList > 1 then
|
||
self.PanelItemList.gameObject:SetActiveEx(true)
|
||
self:UpdateGoodListWithMultiGroup(sortGroupInfoList)
|
||
elseif #sortGroupInfoList == 1 then
|
||
self.PanelItemList2.gameObject:SetActiveEx(true)
|
||
self:UpdateGoodListWithOneGroup(sortGroupInfoList)
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:GetSortGroupInfoList(shopGoods)
|
||
if not shopGoods or #shopGoods == 0 then
|
||
return {}
|
||
end
|
||
|
||
local shopInfo = XActivityBriefConfigs.GetActivityShopByInfoId(self.CurIndex)
|
||
if not shopInfo.GoodsSortIds or #shopInfo.GoodsSortIds == 0 then
|
||
local sortGroupInfo = {}
|
||
sortGroupInfo.Bg = shopInfo.ShopSortGroupBg
|
||
sortGroupInfo.ShopGoods = shopGoods
|
||
return { sortGroupInfo }
|
||
end
|
||
|
||
local sortGroupList = {}
|
||
local shopId = self:GetCurShopId()
|
||
local shopGoodDic = {}
|
||
for _, good in ipairs(shopGoods) do
|
||
shopGoodDic[good.Id] = good
|
||
end
|
||
|
||
-- 收集筛选组
|
||
for i, sortId in ipairs(shopInfo.GoodsSortIds) do
|
||
local sortcfg = XActivityBriefConfigs.GetActivityShopGoodsSortById(sortId)
|
||
if sortcfg.ShopId ~= shopId then
|
||
XLog.Error(string.format("请策划老师检查配置:当前页签商店ShopId为%s(ActivityBriefShop.tab),GoodsSortIds[%s] = %s对应配置的商店ShopId为%s(ActivityBriefShopGoodsSort.tab)", shopId, i, sortcfg, sortcfg.ShopId))
|
||
end
|
||
|
||
local targetIdDic = {}
|
||
local sortGoods = {}
|
||
for index, targetId in ipairs(sortcfg.TargetIds) do
|
||
local good = shopGoodDic[targetId]
|
||
if good then
|
||
targetIdDic[targetId] = index
|
||
table.insert(sortGoods, good)
|
||
shopGoodDic[targetId] = nil
|
||
else
|
||
if targetIdDic[targetId] then
|
||
XLog.Error(string.format("请策划老师检查配置:ActivityBriefShopGoodsSort.tab表,Id = %s,TargetIds[%s] = %s,商店里配置了相同的商品id", sortId, index, targetId))
|
||
else
|
||
if targetId ~= HIDE_GOOD_ID then
|
||
XLog.Error(string.format("请策划老师检查配置:ActivityBriefShopGoodsSort.tab表,Id = %s,TargetIds[%s] = %s,商店里无此商品id", sortId, index, targetId))
|
||
end
|
||
end
|
||
end
|
||
end
|
||
|
||
if #sortGoods > 0 then
|
||
table.sort(sortGoods, function(a, b)
|
||
local indexA = targetIdDic[a.Id]
|
||
local indexB = targetIdDic[b.Id]
|
||
return indexA < indexB
|
||
end)
|
||
|
||
local sortGroupInfo = {}
|
||
sortGroupInfo.Bg = sortcfg.BgImg
|
||
sortGroupInfo.ShopGoods = sortGoods
|
||
sortGroupInfo.Index = #sortGroupList + 1
|
||
table.insert(sortGroupList, sortGroupInfo)
|
||
end
|
||
end
|
||
|
||
-- 剩下的商品自成一组
|
||
local remainGoods = {}
|
||
for _, good in ipairs(shopGoods) do
|
||
if shopGoodDic[good.Id] then
|
||
table.insert(remainGoods, good)
|
||
end
|
||
end
|
||
if #remainGoods > 0 then
|
||
local sortGroupInfo = {}
|
||
sortGroupInfo.Bg = shopInfo.ShopSortGroupBg
|
||
sortGroupInfo.ShopGoods = remainGoods
|
||
sortGroupInfo.Index = #sortGroupList + 1
|
||
table.insert(sortGroupList, sortGroupInfo)
|
||
end
|
||
|
||
-- 排序 全部售罄的组放在最后
|
||
if #sortGroupList > 1 then
|
||
for i, groupInfo in ipairs(sortGroupList) do
|
||
local isSellOut = true
|
||
for _, good in ipairs(groupInfo.ShopGoods) do
|
||
local canBuy = good.BuyTimesLimit == 0 or (good.TotalBuyTimes < good.BuyTimesLimit)
|
||
if canBuy then
|
||
isSellOut = false
|
||
break
|
||
end
|
||
end
|
||
groupInfo.IsSellOut = isSellOut
|
||
end
|
||
|
||
table.sort(sortGroupList, function(a, b)
|
||
local priorityA = 0
|
||
local priorityB = 0
|
||
priorityA = priorityA + (a.IsSellOut and 0 or 1000)
|
||
priorityB = priorityB + (b.IsSellOut and 0 or 1000)
|
||
|
||
priorityA = priorityA + (a.Index < b.Index and 100 or 0)
|
||
priorityB = priorityB + (b.Index < a.Index and 100 or 0)
|
||
return priorityA > priorityB
|
||
end)
|
||
end
|
||
|
||
return sortGroupList
|
||
end
|
||
|
||
function XUiActivityBriefShop:UpdateGoodListWithMultiGroup(sortGroupInfoList)
|
||
for _, sortGroup in ipairs(self.SortGroupList) do
|
||
sortGroup.gameObject:SetActiveEx(false)
|
||
end
|
||
for _, gridShop in ipairs(self.XUiGridShopList) do
|
||
gridShop.GameObject:SetActiveEx(false)
|
||
end
|
||
|
||
local gridIndex = 1
|
||
for i, info in ipairs(sortGroupInfoList) do
|
||
local sortGroupGo = self.SortGroupList[i]
|
||
if not sortGroupGo then
|
||
sortGroupGo = CSInstantiate(self.SortGroup, self.SortGroup.transform.parent)
|
||
table.insert(self.SortGroupList, sortGroupGo)
|
||
end
|
||
sortGroupGo.gameObject:SetActiveEx(true)
|
||
local obj = sortGroupGo:GetComponent("UiObject")
|
||
obj:GetObject("RImageBgIcon"):SetRawImage(info.Bg)
|
||
|
||
-- 刷新组内商品
|
||
local goodParent = obj:GetObject("GridShopList")
|
||
for _, goodData in ipairs(info.ShopGoods) do
|
||
local gridShop = self.XUiGridShopList[gridIndex]
|
||
if not gridShop then
|
||
local go = CSInstantiate(self.GridShop, self.GridShop.transform.parent)
|
||
gridShop = XUiGridShop.New(go)
|
||
gridShop:Init(self, self.RootUi)
|
||
table.insert(self.XUiGridShopList, gridShop)
|
||
end
|
||
gridShop.GameObject:SetActiveEx(true)
|
||
gridShop.Transform:SetParent(goodParent)
|
||
gridShop.Transform:SetAsLastSibling()
|
||
|
||
self:SetShopItemLock(gridShop)
|
||
self:SetShopItemBg(gridShop)
|
||
gridShop:UpdateData(goodData, ShopItemTextColor)
|
||
gridShop:RefreshOnSaleTime(goodData.OnSaleTime)
|
||
gridIndex = gridIndex + 1
|
||
end
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:UpdateGoodListWithOneGroup(sortGroupInfoList)
|
||
local info = sortGroupInfoList[1]
|
||
self.RImageBgIcon:SetRawImage(info.Bg)
|
||
|
||
self.ShopLineGoodsList = {}
|
||
local cnt = #info.ShopGoods
|
||
for i = 1, cnt, 2 do
|
||
local lineGoods = {}
|
||
table.insert(lineGoods, info.ShopGoods[i])
|
||
|
||
local nextGood = info.ShopGoods[i + 1]
|
||
if nextGood then
|
||
table.insert(lineGoods, nextGood)
|
||
end
|
||
|
||
table.insert(self.ShopLineGoodsList, lineGoods)
|
||
end
|
||
|
||
self.DynamicTable:SetDataSource(self.ShopLineGoodsList)
|
||
self.DynamicTable:ReloadDataASync(1)
|
||
end
|
||
|
||
function XUiActivityBriefShop:InitShaiXuan()
|
||
local shopId = self:GetCurShopId()
|
||
self.ScreenGroupIDList = XShopManager.GetShopScreenGroupIDList(shopId)
|
||
|
||
local goodList = XShopManager.GetShopGoodsList(shopId)
|
||
local isShow = self:IsShowShaiXuan() and goodList and #goodList > 0
|
||
self.BtnShaiXuan.gameObject:SetActiveEx(isShow)
|
||
if isShow then
|
||
self:GetSuitScreenDataProvider()
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:IsShowShaiXuan()
|
||
if self.ScreenGroupIDList and next(self.ScreenGroupIDList) then
|
||
return true
|
||
else
|
||
return false
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:GetSuitScreenDataProvider()
|
||
local dataProvider = {}
|
||
local hasAll = false
|
||
local shopId = self:GetCurShopId()
|
||
local groupId = self.ScreenGroupIDList[1]
|
||
local screenTagList = XShopManager.GetScreenTagListById(shopId, groupId)
|
||
local tagScreenAll = XShopManager.GetTagScreenAll()
|
||
for _, v in pairs(screenTagList or {}) do
|
||
if v.Text ~= tagScreenAll then
|
||
local goodsList = XShopManager.GetScreenGoodsListByTag(shopId, groupId, v.Text)
|
||
if #goodsList > 0 then
|
||
local firstGood = goodsList[1]
|
||
local templateId = firstGood.RewardGoods.TemplateId
|
||
local suitId = XDataCenter.EquipManager.GetSuitIdByTemplateId(templateId)
|
||
local suitCfg = XEquipConfig.GetEquipSuitCfg(suitId)
|
||
dataProvider[#dataProvider + 1] = {
|
||
text = v.Text,
|
||
icon = XDataCenter.EquipManager.GetSuitIconBagPath(suitId),
|
||
description = suitCfg.Description,
|
||
suitQualityIcon = XDataCenter.EquipManager.GetSuitQualityIcon(suitId)
|
||
}
|
||
end
|
||
end
|
||
end
|
||
if self.ScreenId then
|
||
local value, _ = XShopManager.GetShopScreenGroupSelectValueAndScreenNum(shopId, self.ScreenId)
|
||
--原来是通过下拉框来实现的,起点从0开始
|
||
if XTool.IsNumberValid(value) then
|
||
if dataProvider[value - 1] then
|
||
self.SelectTag = dataProvider[value - 1].text
|
||
end
|
||
end
|
||
self.ScreenId = nil
|
||
end
|
||
return dataProvider
|
||
end
|
||
|
||
|
||
function XUiActivityBriefShop:UpdateBuy(data, cb)
|
||
local shopId = XDataCenter.ActivityBriefManager.GetActivityShopIds()
|
||
if shopId == nil then
|
||
XUiManager.TipText("BriefActivityEndTipText")
|
||
XLuaUiManager.RunMain()
|
||
return
|
||
end
|
||
for _, v in pairs(shopId) do
|
||
local shopTimeInfo = XShopManager.GetShopTimeInfo(v)
|
||
local leftTime = shopTimeInfo.ClosedLeftTime
|
||
if leftTime <= 0 then
|
||
XUiManager.TipText("BriefActivityEndTipText")
|
||
XLuaUiManager.RunMain()
|
||
return
|
||
end
|
||
end
|
||
XLuaUiManager.Open("UiShopItem", self, data, cb, "000000ff")
|
||
end
|
||
|
||
-- 购买商品成功后的刷新函数
|
||
function XUiActivityBriefShop:RefreshBuy()
|
||
local shopId = self:GetCurShopId()
|
||
self.AssetActivityPanel:Refresh(XShopManager.GetShopShowIdList(shopId))
|
||
self:UpdateGoodList()
|
||
end
|
||
|
||
function XUiActivityBriefShop:SetShopItemBg(grid)
|
||
local bg = XActivityBriefConfigs.GetActivityShopByInfoId(self.CurIndex).ShopItemBg
|
||
if grid.ItemBg and bg then
|
||
grid.ItemBg:SetRawImage(bg)
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:SetShopItemLock(grid)
|
||
local shopId = self:GetCurShopId()
|
||
local isLock = self.ShopLockDecs[shopId] ~= nil
|
||
grid.IsShopLock = isLock
|
||
grid.ShopLockDecs = ShopHintText
|
||
if grid.ImgLock then
|
||
grid.ImgLock.gameObject:SetActiveEx(isLock)
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:InitDynamicTable()
|
||
self.DynamicTable = XDynamicTableNormal.New(self.PanelItemList2)
|
||
self.DynamicTable:SetProxy(XUiActivityBriefGridLine)
|
||
self.DynamicTable:SetDelegate(self)
|
||
end
|
||
|
||
function XUiActivityBriefShop:OnDynamicTableEvent(event, index, grid)
|
||
if event == DYNAMIC_DELEGATE_EVENT.DYNAMIC_GRID_INIT then
|
||
grid:Init(self, ShopItemTextColor)
|
||
elseif event == DYNAMIC_DELEGATE_EVENT.DYNAMIC_GRID_ATINDEX then
|
||
local lineGoods = self.ShopLineGoodsList[index]
|
||
grid:Refresh(lineGoods)
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:StartCountDown()
|
||
self:ClearCountDown()
|
||
self.CountDownTimer = XScheduleManager.ScheduleForever(function()
|
||
self:UpdateCountDown()
|
||
end, XScheduleManager.SECOND)
|
||
self:UpdateCountDown()
|
||
end
|
||
|
||
function XUiActivityBriefShop:UpdateCountDown()
|
||
local shopId = self.ShopIdList[self.CurIndex]
|
||
local shopTimeInfo = XShopManager.GetShopTimeInfo(shopId)
|
||
local leftTime = shopTimeInfo.ClosedLeftTime
|
||
if leftTime > 0 then
|
||
local timeStr = XUiHelper.GetTime(leftTime, XUiHelper.TimeFormatType.ACTIVITY)
|
||
self.TxtTime.text = CSXTextManagerGetText("ActivityBriefShopLeftTime", timeStr)
|
||
else
|
||
self:Close()
|
||
end
|
||
end
|
||
|
||
function XUiActivityBriefShop:ClearCountDown()
|
||
if self.CountDownTimer then
|
||
XScheduleManager.UnSchedule(self.CountDownTimer)
|
||
self.CountDownTimer = nil
|
||
end
|
||
end |