From 2d3a60767d0cd69c8dec97e39937bcd0c667be1c Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 12 十一月 2025 18:54:57 +0800
Subject: [PATCH] 125 战斗 血条&护盾1护盾2表现

---
 Main/System/MainLevel/MainLevelManager.cs |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 55 insertions(+), 4 deletions(-)

diff --git a/Main/System/MainLevel/MainLevelManager.cs b/Main/System/MainLevel/MainLevelManager.cs
index 5b940f9..0bebb67 100644
--- a/Main/System/MainLevel/MainLevelManager.cs
+++ b/Main/System/MainLevel/MainLevelManager.cs
@@ -1,21 +1,72 @@
 using System.Collections.Generic;
 using UnityEngine;
 using LitJson;
+using System;
 
 
 public class MainLevelManager : GameSystemManager<MainLevelManager>
 {
 
+    public Dictionary<int, int> m_DailyBootyDict = new Dictionary<int, int>();
+    public event Action OnUpdateDayBooty;
     public override void Init()
     {
-        base.Init();
+        DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent += OnBeforePlayerDataInitialize;
     }
 
     public override void Release()
     {
-        base.Release();
+        DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent -= OnBeforePlayerDataInitialize;
     }
 
-    
-	
+    private void OnBeforePlayerDataInitialize()
+    {
+        m_DailyBootyDict.Clear();
+    }
+
+    public void UpdateDayDropBooty(HB123_tagSCDropBootyInfo netPack)
+    {
+        for (int i = 0; i < netPack.Count; i++)
+        {
+            m_DailyBootyDict[(int)netPack.DropBootyList[i].ItemID] = (int)netPack.DropBootyList[i].TodayDropCnt;
+        }
+        OnUpdateDayBooty?.Invoke();
+    }
+
+    public bool CanChallengeBoss()
+    {
+        //鏈�鍚庝竴娉㈤�氳繃锛屼笖褰撳墠娉㈣繕鏄渶鍚庝竴娉紱鍊掗��鍙�掗��娉笉浼氬�掗��鍏冲崱
+        if (PlayerDatas.Instance.baseData.ExAttr2 != PlayerDatas.Instance.baseData.ExAttr1)
+        {
+            return false;
+        }
+        var value = PlayerDatas.Instance.baseData.ExAttr2;
+        var chapterID = value / 10000;
+        var levelNum = value % 10000 / 100;
+        var waveID = value % 100;
+
+        var config = MainLevelConfig.GetMainLevelConfig(chapterID, levelNum);
+        if (waveID < MainLevelConfig.GetwaveCount(config))
+        {
+            return false;
+        }
+
+        return true;
+    }
+
+    //levelID 涓哄鎴风閰嶇疆鐨処D
+    public bool IsPassedByMainLevelID(int levelID)
+    {
+        var value = PlayerDatas.Instance.baseData.ExAttr1;
+        var chapterID = value / 10000;
+        var levelNum = value % 10000 / 100;
+
+        var config = MainLevelConfig.Get(levelID);
+        if (chapterID > config.ChapterID || (chapterID == config.ChapterID && levelNum > config.LevelNum))
+        {
+            return true;
+        }
+
+        return false;
+    }
 }
\ No newline at end of file

--
Gitblit v1.8.0