From 9f5db2e92b93dcbe7c5d53606d62c8f04aef3c19 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期三, 18 三月 2026 23:20:18 +0800
Subject: [PATCH] 533 开服冲榜-客户端  开服冲榜的将星云集、百炼成军、红袖添香、命定乾坤和限时冲刺的武将冲刺、古宝冲刺、元宝冲刺添加特权标识

---
 Main/System/OSActivity/OSRankHeroCallGiftCell.cs |   17 +++++++++++++++++
 Main/System/OSActivity/OSRankGiftBaseCell.cs     |   19 +++++++++++++++++++
 Main/System/TimeRush/TimeRushGiftCell.cs         |   19 +++++++++++++++++++
 3 files changed, 55 insertions(+), 0 deletions(-)

diff --git a/Main/System/OSActivity/OSRankGiftBaseCell.cs b/Main/System/OSActivity/OSRankGiftBaseCell.cs
index db81691..0b6e975 100644
--- a/Main/System/OSActivity/OSRankGiftBaseCell.cs
+++ b/Main/System/OSActivity/OSRankGiftBaseCell.cs
@@ -3,6 +3,8 @@
 
 public abstract class OSRankGiftBaseCell : CellView
 {
+    [SerializeField] protected ImageEx vipImage;
+    [SerializeField] protected TextEx vipText;
     [SerializeField] protected ImageEx rateImage;
     [SerializeField] protected TextEx rateText;
     [SerializeField] protected Text nameText;
@@ -29,6 +31,8 @@
             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++)
@@ -61,6 +65,20 @@
                         SysNotifyMgr.Instance.ShowTip("ActivityOver");
                         return;
                     }
+
+                    if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && 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))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
+                        UIManager.Instance.OpenWindow<PrivilegeCardWin>();
+                        return;
+                    }
+
                     RechargeManager.Instance.CTG(id);
                 });
 
@@ -81,6 +99,7 @@
         else
         {
             rateImage.SetActive(false);
+            vipImage.SetActive(false);
             // 鍟嗗簵鐗╁搧
             var storeConfig = StoreConfig.Get(id);
             nameText.text = storeConfig.Name;
diff --git a/Main/System/OSActivity/OSRankHeroCallGiftCell.cs b/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
index 7fda606..49dcc70 100644
--- a/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
+++ b/Main/System/OSActivity/OSRankHeroCallGiftCell.cs
@@ -5,6 +5,8 @@
 
 public class OSRankHeroCallGiftCell : CellView
 {
+    [SerializeField] ImageEx vipImage;
+    [SerializeField] TextEx vipText;
     [SerializeField] ImageEx rateImage;
     [SerializeField] TextEx rateText;
     [SerializeField] Text nameText;
@@ -26,6 +28,8 @@
             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++)
@@ -57,6 +61,18 @@
                         SysNotifyMgr.Instance.ShowTip("ActivityOver");
                         return;
                     }
+                    if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && 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))
+                    {
+                        SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
+                        UIManager.Instance.OpenWindow<PrivilegeCardWin>();
+                        return;
+                    }
 
                     RechargeManager.Instance.CTG(id);
                 });
@@ -79,6 +95,7 @@
         else
         {
             rateImage.SetActive(false);
+            vipImage.SetActive(false);
             //鍟嗗簵
             var storeConfig = StoreConfig.Get(id);
             nameText.text = storeConfig.Name;
diff --git a/Main/System/TimeRush/TimeRushGiftCell.cs b/Main/System/TimeRush/TimeRushGiftCell.cs
index e6c3be1..1a1691f 100644
--- a/Main/System/TimeRush/TimeRushGiftCell.cs
+++ b/Main/System/TimeRush/TimeRushGiftCell.cs
@@ -3,6 +3,8 @@
 
 public class TimeRushGiftCell : MonoBehaviour
 {
+    [SerializeField] ImageEx vipImage;
+    [SerializeField] TextEx vipText;
     [SerializeField] ImageEx rateImage;
     [SerializeField] TextEx rateText;
     [SerializeField] TextEx titleText;
@@ -38,6 +40,7 @@
         moneyIconImage.SetActive(false);
         rateImage.SetActive(true);
 
+
         if (!RechargeManager.Instance.TryGetOrderInfo(ctgId, out var orderConfig))
             return;
         if (!RechargeManager.Instance.TryGetRechargeCount(ctgId, out var rechargeCount))
@@ -48,6 +51,8 @@
             return;
 
         CTGConfig config = CTGConfig.Get(ctgId);
+        vipImage.SetActive(config.VipLevel > 0);
+        vipText.text = config.VipLevel > 0 ? Language.Get($"VipLevelInfo{config.VipLevel}") : string.Empty;
         rateText.text = Language.Get("DailySpecials07", config.Percentage);
 
         bool isCanBuy = manager.IsCanBuyCTG(ctgId);
@@ -59,6 +64,19 @@
         buyButton.interactable = isCanBuy;
         buyButton.SetListener(() =>
         {
+            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.PrivilegeCard) && 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))
+            {
+                SysNotifyMgr.Instance.ShowTip("MinggeAuto7");
+                UIManager.Instance.OpenWindow<PrivilegeCardWin>();
+                return;
+            }
+
             RechargeManager.Instance.CTG(ctgId);
         });
 
@@ -85,6 +103,7 @@
     private void DisplayStore(int id)
     {
         rateImage.SetActive(false);
+        vipImage.SetActive(false);
         if (!StoreConfig.HasKey(id))
             return;
         StoreConfig storeConfig = StoreConfig.Get(id);

--
Gitblit v1.8.0