From 271a39a4373ade8f380848d0a80012dcfacac7e2 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期二, 17 三月 2026 21:16:56 +0800
Subject: [PATCH] 492 武将登场-客户端 皇权礼包适配每日限购

---
 Main/System/HeroDebut/HeroDebutManager.cs  |   13 +++++++++++--
 Main/System/HeroDebut/HeroDebutGiftCell.cs |    8 ++++----
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/Main/System/HeroDebut/HeroDebutGiftCell.cs b/Main/System/HeroDebut/HeroDebutGiftCell.cs
index 2a8124d..598bed3 100644
--- a/Main/System/HeroDebut/HeroDebutGiftCell.cs
+++ b/Main/System/HeroDebut/HeroDebutGiftCell.cs
@@ -14,7 +14,7 @@
     [SerializeField] ImageEx redImage;
     HeroDebutManager manager => HeroDebutManager.Instance;
     StoreModel storeModel => StoreModel.Instance;
-    
+
     public void Display(int index, List<HeroDebutGiftItem> giftItems)
     {
         if (giftItems.IsNullOrEmpty() || index < 0 || index >= giftItems.Count) return;
@@ -43,12 +43,12 @@
 
         CTGConfig config = CTGConfig.Get(ctgId);
 
-        bool isCanBuy = manager.IsNoSellOutCTGID(ctgId);
+        bool isCanBuy = manager.IsCanBuyToday(ctgId);
         titleText.text = config.Title;
         buyImage.SetSprite(isCanBuy ? "DailySpecialsBuy1" : "DailySpecialsBuy2");
         buyText.text = !isCanBuy ? Language.Get("storename11") : Language.Get("PayMoneyNum", UIHelper.GetMoneyFormat(orderConfig.PayRMBNumOnSale));
-        limitCountText.SetActive(true);
-        limitCountText.text = Language.Get("TimeRush07", UIHelper.AppendColor(rechargeCount.totalCount >= config.TotalBuyCount ? TextColType.Red : TextColType.LightGreen, Mathf.Max(0, config.TotalBuyCount - rechargeCount.totalCount).ToString()));
+        limitCountText.SetActive(config.DailyBuyCount > 0);
+        limitCountText.text = Language.Get("HeroDebut39", UIHelper.AppendColor(rechargeCount.todayCount >= config.DailyBuyCount ? TextColType.Red : TextColType.LightGreen, Mathf.Max(0, config.DailyBuyCount - rechargeCount.todayCount).ToString()));
         buyButton.interactable = isCanBuy;
         buyButton.SetListener(() =>
         {
diff --git a/Main/System/HeroDebut/HeroDebutManager.cs b/Main/System/HeroDebut/HeroDebutManager.cs
index e571afd..08fe78f 100644
--- a/Main/System/HeroDebut/HeroDebutManager.cs
+++ b/Main/System/HeroDebut/HeroDebutManager.cs
@@ -609,8 +609,17 @@
     #endregion
 
     #region 鐨囨潈绀煎寘
-
     //娌″敭缃�
+    public bool IsCanBuyToday(int ctgID)
+    {
+        CTGConfig config = CTGConfig.Get(ctgID);
+        if (config == null) return false;
+        if (!RechargeManager.Instance.TryGetRechargeCount(ctgID, out var rechargeCount)) return false;
+
+        if (config.DailyBuyCount == 0) return true;
+        return rechargeCount.todayCount < config.DailyBuyCount;
+    }
+
     public bool IsNoSellOutCTGID(int ctgID)
     {
         CTGConfig config = CTGConfig.Get(ctgID);
@@ -680,7 +689,7 @@
         {
             res = res.OrderBy(item =>
             {
-                bool isCanBuy = item.type == 0 ? IsNoSellOutShopID(item.id) : IsNoSellOutCTGID(item.id);
+                bool isCanBuy = item.type == 0 ? IsNoSellOutShopID(item.id) : IsCanBuyToday(item.id);
                 return !isCanBuy;
             })
             .ThenBy(item => item.type)

--
Gitblit v1.8.0