From c6ea64fb4e4755c4290bf5228d8cd463bc81c21f Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期四, 13 十一月 2025 21:42:16 +0800
Subject: [PATCH] 0312 英雄之路红点受限每日任务开启;增加检测装备输出

---
 Main/System/Equip/EquipModel.cs               |   19 +++++++++++++++++--
 Main/System/Main/PlayerMainDate.cs            |    5 +++++
 Main/Main.cs                                  |    1 +
 Main/System/Achievement/AchievementManager.cs |   28 ++++++++++++++++++++++++++++
 4 files changed, 51 insertions(+), 2 deletions(-)

diff --git a/Main/Main.cs b/Main/Main.cs
index f336ab3..bbda289 100644
--- a/Main/Main.cs
+++ b/Main/Main.cs
@@ -87,6 +87,7 @@
         managers.Add(ExpSecretCollectionManager.Instance);
         managers.Add(SignManager.Instance);
         managers.Add(RenameManager.Instance);
+        managers.Add(AchievementManager.Instance);
         foreach (var manager in managers)
         {
             manager.Init();
diff --git a/Main/System/Achievement/AchievementManager.cs b/Main/System/Achievement/AchievementManager.cs
index e5a97f6..22a74c2 100644
--- a/Main/System/Achievement/AchievementManager.cs
+++ b/Main/System/Achievement/AchievementManager.cs
@@ -15,15 +15,26 @@
     public override void Init()
     {
         DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent += OnBeforePlayerDataInitialize;
+        FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
     }
 
     public override void Release()
     {
         DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent -= OnBeforePlayerDataInitialize;
+        FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
     }
 
     void OnBeforePlayerDataInitialize()
     {
+        achivementDict.Clear();
+    }
+
+    void OnFuncStateChangeEvent(int funcID)
+    {
+        if (funcID == (int)FuncOpenEnum.DayMission)
+        {
+            UpdateRedpoint(new List<int>() { 1 });
+        }
     }
 
     public void UpdateAchievement(HA340_tagSCSuccessInfoList netPack)
@@ -135,6 +146,10 @@
 
         foreach (var type in _types)
         {
+            if (!isOpened(type))
+            {
+                continue;
+            }
             var redpoint = RedpointCenter.Instance.GetRedpoint(redpointDict[type]);
             redpoint.state = RedPointState.None;
             //鏍规嵁ID鍒ゆ柇鏄惁鏈夊彲棰嗗彇鐨�
@@ -156,6 +171,19 @@
         }
     }
 
+
+    bool isOpened(int type)
+    {
+        if (type == 1)
+        {
+            if (FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.DayMission))
+            {
+                return true;
+            }
+        }
+        return false;
+    }
+
     //鏍规嵁绫诲瀷鑾峰彇鎵�鏈夋垚灏盜D, 涓旀槸鎺掑簭鍚庣殑 鏈鍙�>鏈揪鎴�>宸查鍙�
     public List<int> GetAchievementIDs(int type)
     {
diff --git a/Main/System/Equip/EquipModel.cs b/Main/System/Equip/EquipModel.cs
index 3529a53..238549c 100644
--- a/Main/System/Equip/EquipModel.cs
+++ b/Main/System/Equip/EquipModel.cs
@@ -163,11 +163,17 @@
     public void CalcFloorEquip(int itemIndex)
     {
         if (itemIndex == -1)
+        {
+            Debug.Log("CalcFloorEquip 鏃犳晥鐨勭墿鍝佺储寮�");
             return;
+        }
 
         var item = PackManager.Instance.GetItemByIndex(PackType.DropItem, itemIndex);
         if (item == null)
+        {
+            Debug.Log("CalcFloorEquip 鏃犳晥鐨勭墿鍝佺储寮�");
             return;
+        }
 
         //闈炶嚜鍔ㄦā寮忎笅锛岀瓫閫夎澶囨墦寮�瑁呭鎿嶄綔鐣岄潰
         if (IsEquip(item))
@@ -185,6 +191,7 @@
     {
         if (PackManager.Instance.GetSinglePack(PackType.DropItem).GetItems().Count == 0)
         {
+            Debug.Log("CalcAllFloorItems 娌℃湁鎺夎惤鐗╁搧");
             return;
         }
         //鏋勫缓鎵�鏈夌墿鍝�
@@ -327,7 +334,10 @@
     public bool OpenEquipExchangeWin(ItemModel equip)
     {
         if (equip == null)
+        {
+            Debug.LogWarning("OpenEquipExchangeWin: 瑁呭涓虹┖");
             return false;
+        }
 
         if (!DTC0403_tagPlayerLoginLoadOK.finishedLogin)
         {
@@ -341,6 +351,7 @@
         if (AutoFightModel.Instance.TryAutoFightDoEquip(equip))
         {
             //鑷姩鎴樺姏瀵规瘮, 鏉′欢涓嶆弧瓒崇殑鍒嗚В
+            Debug.LogWarning("OpenEquipExchangeWin: 鑷姩鎴樺姏瀵规瘮, 鏉′欢涓嶆弧瓒崇殑鍒嗚В");
             return false;
         }
 
@@ -349,21 +360,25 @@
         //鏈洖澶嶈澶囨搷浣滅粨鏋滐紝鍚﹀垯浼氭樉绀烘棫瑁呭
         if (waitEquipOPPack)
         {
-            Debug.LogError("OpenEquipExchangeWin: 绛夊緟鏈嶅姟鍣ㄥ搷搴�");
+            Debug.LogWarning("OpenEquipExchangeWin: 绛夊緟鏈嶅姟鍣ㄥ搷搴�");
             return false;
         }
 
 
         if (UIManager.Instance.IsOpened<EquipExchangeWin>())
         {
+            Debug.LogWarning("OpenEquipExchangeWin: 瑁呭鐣岄潰宸叉墦寮�");
             return false;
         }
 
         
         selectFloorEquip = GetSelectFloorEquip();
         if (selectFloorEquip == null)
+        {
+            Debug.LogWarning("OpenEquipExchangeWin: 娌℃湁鍙�夎澶�");
             return false;
-
+        }
+        Debug.LogWarning("OpenEquipExchangeWin: 鎵撳紑瑁呭鐣岄潰");
         UIManager.Instance.OpenWindow<EquipExchangeWin>();
         return true;
 
diff --git a/Main/System/Main/PlayerMainDate.cs b/Main/System/Main/PlayerMainDate.cs
index a35504f..6fe99db 100644
--- a/Main/System/Main/PlayerMainDate.cs
+++ b/Main/System/Main/PlayerMainDate.cs
@@ -49,6 +49,11 @@
 
     public void PowerAdd(long power)
     {
+        if (NewBieCenter.Instance.inGuiding)
+        {
+            return;
+        }
+
         if (prowBool)
         {
             prowNum = power;

--
Gitblit v1.8.0