From dd033e18101f61653015ab7f7d4853a0c4ec1306 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期四, 19 三月 2026 10:35:15 +0800
Subject: [PATCH] 533 开服冲榜-客户端  开服庆典添加特权标识和返利,修复特权卡功能没开时能购买有权限限制的礼包bug,目前特权卡功能没开时会弹提示

---
 Main/System/OSActivity/OSRankHeroCallGiftCell.cs |    9 +++++++--
 Main/System/OSActivity/OSGalaGiftCell.cs         |   30 +++++++++++++++++++++++++++++-
 Main/System/OSActivity/OSRankGiftBaseCell.cs     |    9 +++++++--
 Main/System/TimeRush/TimeRushGiftCell.cs         |    9 +++++++--
 4 files changed, 50 insertions(+), 7 deletions(-)

diff --git a/Main/System/OSActivity/OSGalaGiftCell.cs b/Main/System/OSActivity/OSGalaGiftCell.cs
index f9fac21..602d89f 100644
--- a/Main/System/OSActivity/OSGalaGiftCell.cs
+++ b/Main/System/OSActivity/OSGalaGiftCell.cs
@@ -5,6 +5,10 @@
 
 public class OSGalaGiftCell : CellView
 {
+    [SerializeField] ImageEx vipImage;
+    [SerializeField] TextEx vipText;
+    [SerializeField] ImageEx rateImage;
+    [SerializeField] TextEx rateText;
     [SerializeField] Text nameText;
     [SerializeField] ItemCell[] itemCells;
     [SerializeField] Button buyBtn;
@@ -24,6 +28,10 @@
             id -= 100000000;
             var ctgConfig = CTGConfig.Get(id);
             nameText.text = ctgConfig.Title;
+            vipImage.SetActive(ctgConfig.VipLevel > 0);
+            vipText.text = ctgConfig.VipLevel > 0 ? Language.Get($"VipLevelInfo{ctgConfig.VipLevel}") : string.Empty;
+            rateImage.SetActive(true);
+            rateText.text = Language.Get("DailySpecials07", ctgConfig.Percentage);
             for (int i = 0; i < itemCells.Length; i++)
             {
                 var itemCell = itemCells[i];
@@ -53,6 +61,24 @@
                         SysNotifyMgr.Instance.ShowTip("ActivityOver");
                         return;
                     }
+                    if (ctgConfig.VipLevel > 0 && !FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto8");
+                        return;
+                    }
+                    if (ctgConfig.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto5");
+                        UIManager.Instance.OpenWindow<PrivilegeCardWin>();
+                        return;
+                    }
+                    if (ctgConfig.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
+                        UIManager.Instance.OpenWindow<PrivilegeCardWin>();
+                        return;
+                    }
+
                     RechargeManager.Instance.CTG(id);
                 });
 
@@ -73,6 +99,8 @@
         }
         else
         {
+            rateImage.SetActive(false);
+            vipImage.SetActive(false);
             //鍟嗗簵
             var storeConfig = StoreConfig.Get(id);
             nameText.text = storeConfig.Name;
@@ -127,7 +155,7 @@
                     moneyIcon.SetIconWithMoneyType(storeConfig.MoneyType);
                 }
                 redImg.SetActive(storeConfig.MoneyNum == 0);
-            }   
+            }
             var buyCnt = StoreModel.Instance.GetShopLimitBuyCount(id);
             buyLimitText.text = Language.Get("storename6", storeConfig.LimitCnt - buyCnt, storeConfig.LimitCnt);
 
diff --git a/Main/System/OSActivity/OSRankGiftBaseCell.cs b/Main/System/OSActivity/OSRankGiftBaseCell.cs
index 0b6e975..e2982d4 100644
--- a/Main/System/OSActivity/OSRankGiftBaseCell.cs
+++ b/Main/System/OSActivity/OSRankGiftBaseCell.cs
@@ -66,13 +66,18 @@
                         return;
                     }
 
-                    if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && ctgConfig.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
+                    if (ctgConfig.VipLevel > 0 && !FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto8");
+                        return;
+                    }
+                    if (ctgConfig.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
                     {
                         SysNotifyMgr.Instance.ShowTip("MinggeAuto5");
                         UIManager.Instance.OpenWindow<PrivilegeCardWin>();
                         return;
                     }
-                    if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && ctgConfig.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
+                    if (ctgConfig.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
                     {
                         SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
                         UIManager.Instance.OpenWindow<PrivilegeCardWin>();
diff --git a/Main/System/OSActivity/OSRankHeroCallGiftCell.cs b/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
index 49dcc70..b1b2a18 100644
--- a/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
+++ b/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
@@ -61,13 +61,18 @@
                         SysNotifyMgr.Instance.ShowTip("ActivityOver");
                         return;
                     }
-                    if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && ctgConfig.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
+                    if (ctgConfig.VipLevel > 0 && !FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto8");
+                        return;
+                    }
+                    if (ctgConfig.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
                     {
                         SysNotifyMgr.Instance.ShowTip("MinggeAuto5");
                         UIManager.Instance.OpenWindow<PrivilegeCardWin>();
                         return;
                     }
-                    if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && ctgConfig.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
+                    if (ctgConfig.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
                     {
                         SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
                         UIManager.Instance.OpenWindow<PrivilegeCardWin>();
diff --git a/Main/System/TimeRush/TimeRushGiftCell.cs b/Main/System/TimeRush/TimeRushGiftCell.cs
index 1a1691f..9fa7079 100644
--- a/Main/System/TimeRush/TimeRushGiftCell.cs
+++ b/Main/System/TimeRush/TimeRushGiftCell.cs
@@ -64,13 +64,18 @@
         buyButton.interactable = isCanBuy;
         buyButton.SetListener(() =>
         {
-            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && config.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
+            if (config.VipLevel > 0 && !FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard))
+            {
+                SysNotifyMgr.Instance.ShowTip("MinggeAuto8");
+                return;
+            }
+            if (config.VipLevel == 1 && !InvestModel.Instance.IsInvested(InvestModel.monthCardType))
             {
                 SysNotifyMgr.Instance.ShowTip("MinggeAuto5");
                 UIManager.Instance.OpenWindow<PrivilegeCardWin>();
                 return;
             }
-            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && config.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
+            if (config.VipLevel == 2 && !InvestModel.Instance.IsInvested(InvestModel.foreverCardType))
             {
                 SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
                 UIManager.Instance.OpenWindow<PrivilegeCardWin>();

--
Gitblit v1.8.0