From 75da4da96e33133f45253f64261dc4489cf03db4 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 09 一月 2026 18:15:44 +0800
Subject: [PATCH] 266 【内政】古宝系统

---
 Main/System/Gubao/GubaoCallCell.cs |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/Main/System/Gubao/GubaoCallCell.cs b/Main/System/Gubao/GubaoCallCell.cs
index 41c4ccd..2419170 100644
--- a/Main/System/Gubao/GubaoCallCell.cs
+++ b/Main/System/Gubao/GubaoCallCell.cs
@@ -40,6 +40,7 @@
             canImage.SetActive(false);
             rotationTween.Stop();
             openEffect.Stop();
+            showEffect.effectId = GetShowEffectID(result.itemId, result.count);
             showEffect.PlayByArrIndex(Math.Max(itemCfg.ItemColor - 1, 0));
             itemIcon.SetActive(true);
             itemName.SetActive(true);
@@ -50,7 +51,7 @@
             itemName.text = itemCfg.ItemName;
             itemName.color = UIHelper.GetFuncQualityColor(itemCfg.ItemColor);
             cntText.text = "x" + result.count.ToString();
-            
+
             if (gbCfg == null)
             {
                 pieceImg.SetActive(false);
@@ -63,7 +64,7 @@
                 {
                     newImg.SetActive(false);
                 }
-                else if (VirtualPackManager.Instance.GetNoPackItemCount(result.itemId) < gbCfg.UnlockItemCnt)
+                else if (result.count >= gbCfg.UnlockItemCnt && VirtualPackManager.Instance.GetNoPackItemCount(result.itemId) < gbCfg.UnlockItemCnt * 2)
                 {
                     newImg.SetActive(true);
                 }
@@ -103,6 +104,7 @@
         await UniTask.Delay(200);
         canImage.SetActive(false);
         await UniTask.Delay(400);
+        showEffect.effectId = GetShowEffectID(result.itemId, result.count);
         showEffect.PlayByArrIndex(Math.Max(itemCfg.ItemColor - 1, 0));
         itemIcon.SetActive(true);
         itemName.SetActive(true);
@@ -124,7 +126,7 @@
             {
                 newImg.SetActive(false);
             }
-            else if (VirtualPackManager.Instance.GetNoPackItemCount(result.itemId) < gbCfg.UnlockItemCnt)
+            else if (result.count >= gbCfg.UnlockItemCnt && VirtualPackManager.Instance.GetNoPackItemCount(result.itemId) < gbCfg.UnlockItemCnt * 2)
             {
                 newImg.SetActive(true);
             }
@@ -137,4 +139,17 @@
     }
 
 
+    int GetShowEffectID(int itemID, int cnt)
+    {
+        var config = GubaoConfig.Get(itemID);
+        if (config == null)
+        {
+            return 1095;
+        }
+        if (cnt >= config.UnlockItemCnt)
+        {
+            return 1094;
+        }
+        return 1095;
+    }
 }

--
Gitblit v1.8.0