diff --git a/Assets/ManagedResources/~Lua/Modules/Main/MainPanel.lua b/Assets/ManagedResources/~Lua/Modules/Main/MainPanel.lua index 2d0fd2c515..7672058955 100644 --- a/Assets/ManagedResources/~Lua/Modules/Main/MainPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Main/MainPanel.lua @@ -997,29 +997,32 @@ function this.TimeFormat() activityTabs[k].go.gameObject:SetActive(false) end elseif v.ActId == 668 then - --超值基金 + -- 加入对月卡的判断 + local isMonthCardActive = OperatingManager.IsMonthCardActive() local isOpen_128 = OperatingManager.IsBaseOpen(GoodsTypeDef.MONTHCARD_128) local isOpen_328 = OperatingManager.IsBaseOpen(GoodsTypeDef.MONTHCARD_328) - activityTabs[k].go.gameObject:SetActive(isOpen_128 or isOpen_328) - local cardType = nil - if isOpen_328 then - cardType = GoodsTypeDef.MONTHCARD_328 - end - if not cardType and isOpen_128 then - cardType = GoodsTypeDef.MONTHCARD_128 - end - if cardType then - local data = OperatingManager.GetGiftGoodsInfo(cardType) - if data then - local time = data.endTime - PlayerManager.serverTime - if time < 1 then - activityTabs[k].go.gameObject:SetActive(false) - else - activityTabs[k].go.gameObject:SetActive(true) - if time >= 86400 then - activityTabs[k].timeText.text = TimeToDH(time) + activityTabs[k].go.gameObject:SetActive(isMonthCardActive and (isOpen_128 or isOpen_328)) + if isMonthCardActive then + local cardType = nil + if isOpen_328 then + cardType = GoodsTypeDef.MONTHCARD_328 + end + if not cardType and isOpen_128 then + cardType = GoodsTypeDef.MONTHCARD_128 + end + if cardType then + local data = OperatingManager.GetGiftGoodsInfo(cardType) + if data then + local time = data.endTime - PlayerManager.serverTime + if time < 1 then + activityTabs[k].go.gameObject:SetActive(false) else - activityTabs[k].timeText.text = TimeToHMS(time) + activityTabs[k].go.gameObject:SetActive(true) + if time >= 86400 then + activityTabs[k].timeText.text = TimeToDH(time) + else + activityTabs[k].timeText.text = TimeToHMS(time) + end end end end @@ -1178,9 +1181,11 @@ function this.RefreshGiftBtnShow() for k,v in pairs(activitys) do local ishow = DynamicActivityManager.IsQualifiled(v.Id) if v.ActId == 668 and ishow then + -- 加入对月卡的判断 + local isMonthCardActive = OperatingManager.IsMonthCardActive() local isOpen_128 = OperatingManager.IsBaseOpen(GoodsTypeDef.MONTHCARD_128) local isOpen_328 = OperatingManager.IsBaseOpen(GoodsTypeDef.MONTHCARD_328) - activityTabs[k].go.gameObject:SetActive(isOpen_128 or isOpen_328) + activityTabs[k].go.gameObject:SetActive(isMonthCardActive and (isOpen_128 or isOpen_328)) end end end @@ -1235,27 +1240,31 @@ function this.RefreshActivityShow() end elseif v.ActId == 668 then --超值基金 + -- 加入对月卡的判断 + local isMonthCardActive = OperatingManager.IsMonthCardActive() local isOpen_128 = OperatingManager.IsBaseOpen(GoodsTypeDef.MONTHCARD_128) local isOpen_328 = OperatingManager.IsBaseOpen(GoodsTypeDef.MONTHCARD_328) - activityTabs[k].go.gameObject:SetActive(isOpen_128 or isOpen_328) - local cardType = nil - if isOpen_328 then - cardType = GoodsTypeDef.MONTHCARD_328 - end - if not cardType and isOpen_128 then - cardType = GoodsTypeDef.MONTHCARD_328 - end - if cardType then - local data = OperatingManager.GetGiftGoodsInfo(cardType) - if data then - local time = data.endTime - PlayerManager.serverTime - if time < 1 then - activityTabs[k].go.gameObject:SetActive(false) - else - activityTabs[k].go.gameObject:SetActive(true) - end + activityTabs[k].go.gameObject:SetActive(isMonthCardActive and (isOpen_128 or isOpen_328)) + if isMonthCardActive then + local cardType = nil + if isOpen_328 then + cardType = GoodsTypeDef.MONTHCARD_328 end - end + if not cardType and isOpen_128 then + cardType = GoodsTypeDef.MONTHCARD_328 + end + if cardType then + local data = OperatingManager.GetGiftGoodsInfo(cardType) + if data then + local time = data.endTime - PlayerManager.serverTime + if time < 1 then + activityTabs[k].go.gameObject:SetActive(false) + else + activityTabs[k].go.gameObject:SetActive(true) + end + end + end + end end elseif v.ActiveType > 0 then local activityId = ActivityGiftManager.IsActivityTypeOpen(v.ActiveType) diff --git a/Assets/ManagedResources/~Lua/Modules/Operating/OperatingManager.lua b/Assets/ManagedResources/~Lua/Modules/Operating/OperatingManager.lua index 163c6b2d95..6720ec1e08 100644 --- a/Assets/ManagedResources/~Lua/Modules/Operating/OperatingManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Operating/OperatingManager.lua @@ -672,6 +672,14 @@ function this.GetMonthCardData() return nil end end +function this.IsMonthCardActive() + local curAllMonthCardData = this.GetMonthCardData() + local curMonthCardOpenState = curAllMonthCardData[MONTH_CARD_TYPE.MONTHCARD] and curAllMonthCardData[MONTH_CARD_TYPE.MONTHCARD].endingTime ~= 0 + local curLuxuryMonthCardOpenState = curAllMonthCardData[MONTH_CARD_TYPE.LUXURYMONTHCARD] and curAllMonthCardData[MONTH_CARD_TYPE.LUXURYMONTHCARD].endingTime ~= 0 + local isMonthCardActive = curMonthCardOpenState or curLuxuryMonthCardOpenState + return isMonthCardActive +end + --月卡到期 local addTimeNum = 30 * 24 * 60 * 60 function this.RefreshMonthCardEnd()