From ca577b96e0022e0ddaa8e106e147e53d8166df1c Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期五, 07 十一月 2025 11:40:36 +0800
Subject: [PATCH] 164 天子的考验-客户端

---
 Main/System/TianziBillborad/TianziDamageBar.cs |  170 ++++++--------------------------------------------------
 1 files changed, 18 insertions(+), 152 deletions(-)

diff --git a/Main/System/TianziBillborad/TianziDamageBar.cs b/Main/System/TianziBillborad/TianziDamageBar.cs
index 73ee3b0..9ac69ad 100644
--- a/Main/System/TianziBillborad/TianziDamageBar.cs
+++ b/Main/System/TianziBillborad/TianziDamageBar.cs
@@ -58,179 +58,45 @@
 
     public void Init()
     {
-        int dataMapID = TianziBillboradManager.Instance.DataMapID;
-        int lineID = TianziBillboradManager.Instance.todayLineID;
-        if (!TianziBillboradManager.Instance.TryGetBossConfig(dataMapID, lineID, out DungeonConfig dungeonConfig, out NPCLineupConfig npcLineupConfig, out NPCConfig npcConfig))
-            return;
-        bossId = npcConfig.NPCID;
-        nowHpNum = 1; // 榛樿浠庣1鏉¤寮�濮�
-        if (!TianziConfig.TryGetTianziConfigByBossIDAndHPNum(bossId, nowHpNum, out TianziConfig tianziConfig))
-            return;
-        if (TianziBillboradManager.Instance.loaclHpNum > 0)
+        if (TianziBillboradManager.Instance.loaclMaxHp > 0)
         {
             nowHunt = TianziBillboradManager.Instance.loaclNowHunt;
             nowHpMax = TianziBillboradManager.Instance.loaclMaxHp;
             nowHpNum = TianziBillboradManager.Instance.loaclHpNum;
-            m_BoxCount.text = Language.Get("TianziBillborad07", Mathf.Max(nowHpNum - 1, 0));
+            Show(nowHunt, nowHpMax, nowHpNum);
         }
         else
         {
+            int dataMapID = TianziBillboradManager.Instance.DataMapID;
+            int lineID = TianziBillboradManager.Instance.todayLineID;
+            if (!TianziBillboradManager.Instance.TryGetBossConfig(dataMapID, lineID, out DungeonConfig dungeonConfig, out NPCLineupConfig npcLineupConfig, out NPCConfig npcConfig))
+                return;
+            bossId = npcConfig.NPCID;
+            nowHpNum = 1; // 榛樿浠庣1鏉¤寮�濮�
+            if (!TianziConfig.TryGetTianziConfigByBossIDAndHPNum(bossId, nowHpNum, out TianziConfig tianziConfig))
+                return;
             m_IntensifySlider.stage = 0;
             m_IntensifySlider.ResetStage();
             nowHunt = 0; // 鍒濆琛�閲忎负0
             nowHpMax = (ulong)tianziConfig.MaxHP;
             m_BoxCount.text = Language.Get("TianziBillborad07", 0);
+            Show(nowHunt, nowHpMax, nowHpNum);
         }
+    }
 
-
-
+    public void Show(ulong hunt, ulong maxHp, int hpNum)
+    {
+        nowHunt = hunt;
+        nowHpMax = maxHp;
+        nowHpNum = hpNum;
         // 闄ら浂淇濇姢
         float percentage = 0f;
         if (nowHpMax > 0)
         {
             percentage = Mathf.Clamp(nowHunt, 0, nowHpMax) / (float)nowHpMax;
         }
-
         m_IntensifySlider.value = percentage;
-        m_IntensifySlider.stage = nowHpNum; // 璁剧疆褰撳墠闃舵
+        m_IntensifySlider.stage = nowHpNum;
         m_HurtInfo.text = Language.Get("BoneField09", nowHunt, UIHelper.ReplaceLargeNum(nowHpMax));
-    }
-
-
-    // public event Action IsLastHitUnLockEvent;
-    // public void Show(ulong hp, ulong maxHp, BattleDmgInfo info)  // 鏄剧ず浼ゅ鏉�
-    // {
-    //     if (!TianziConfig.TryGetTianziConfigByBossIDAndMaxHP(bossId, (long)maxHp, out TianziConfig tianziConfig))
-    //         return;
-    //     if (info.isLastHit && isLock)
-    //     {
-    //         isLock = false;
-    //         IsLastHitUnLockEvent?.Invoke();
-    //     }
-
-    //     int hpNum = tianziConfig.HPNum;
-    //     ulong hunt = maxHp - hp;
-
-    //     if (maxHp < nowHpMax)
-    //     {
-    //         Debug.LogWarning($"TianziDamageBar SkillID  {info.skillConfig.SkillID} hp {hp} maxHp {maxHp} hunt {hunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax {nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-    //         return;
-    //     }
-
-    //     if (!isLock)
-    //     {
-    //         // 鏍规嵁maxHp鑾峰緱褰撳墠鏄鍑犳潯琛�
-    //         nowHpNum = hpNum;
-    //         nowHunt = hunt;
-    //         nowHpMax = maxHp;
-    //         // 闄ら浂淇濇姢
-    //         float percentage = 0f;
-    //         if (nowHpMax > 0)
-    //         {
-    //             percentage = Mathf.Clamp(nowHunt, 0, nowHpMax) / (float)nowHpMax;
-    //         }
-    //         m_IntensifySlider.value = percentage;
-    //         m_IntensifySlider.stage = nowHpNum; // 璁剧疆褰撳墠闃舵
-    //         Debug.Log($"TianziDamageBar SkillID  {info.skillConfig.SkillID} hp {hp} maxHp {maxHp} hunt {hunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax {nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-    //     }
-    // }
-
-    // bool isLock = false;
-    // public void ShowByB419(ulong hp, ulong maxHp)
-    // {
-    //     if (!TianziConfig.TryGetTianziConfigByBossIDAndMaxHP(bossId, (long)maxHp, out TianziConfig tianziConfig))
-    //         return;
-
-    //     isLock = true;
-
-    //     int hpNum = tianziConfig.HPNum;
-    //     ulong hunt = maxHp - hp;
-
-    //     if (maxHp < nowHpMax)
-    //     {
-    //         Debug.LogWarning($"TianziDamageBar  B419 hp {hp} maxHp {maxHp} hunt {hunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax {nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-    //         return;
-    //     }
-    //     nowHpNum = hpNum;
-    //     nowHunt = hunt;
-    //     nowHpMax = maxHp;
-    //     // 闄ら浂淇濇姢
-    //     float percentage = 0f;
-    //     if (nowHpMax > 0)
-    //     {
-    //         percentage = Mathf.Clamp(nowHunt, 0, nowHpMax) / (float)nowHpMax;
-    //     }
-    //     m_IntensifySlider.value = percentage;
-    //     m_IntensifySlider.stage = nowHpNum; // 璁剧疆褰撳墠闃舵
-    //     Debug.Log($"TianziDamageBar B419 hp {hp} maxHp {maxHp} hunt {hunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax{nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-    // }
-
-
-    public void Show(ulong totalHP)  // 鏄剧ず浼ゅ鏉�
-    {
-        if (!TianziConfig.TryGetTianziConfigByBossIDAndDamage(bossId, totalHP, out TianziConfig tianziConfig))
-            return;
-        ulong endMaxHp = (ulong)tianziConfig.MaxHP;
-        int endHpNum = tianziConfig.HPNum;
-        ulong endNowHunt = TianziConfig.GetCurrentHPDamage(bossId, totalHP);
-
-        nowHpNum = endHpNum;
-        nowHunt = endNowHunt;
-        nowHpMax = endMaxHp;
-
-        // 闄ら浂淇濇姢
-        float percentage = 0f;
-        if (nowHpMax > 0)
-        {
-            percentage = Mathf.Clamp(nowHunt, 0, nowHpMax) / (float)nowHpMax;
-        }
-        m_IntensifySlider.value = percentage;
-        m_IntensifySlider.stage = nowHpNum; // 璁剧疆褰撳墠闃舵
-        //Debug.Log($"TianziDamageBar end nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax{nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-    }
-
-
-    public void Show(BattleDmgInfo _damageInfo)
-    {
-        if (_damageInfo == null)
-            return;
-        //闂伩鍜屽洖琛�绫讳笉绠椾激瀹�
-        if (_damageInfo.IsType(DamageType.Dodge) || _damageInfo.IsType(DamageType.Recovery))
-            return;
-        var damages = _damageInfo.damageList;
-        for (int i = 0; i < damages.Count; i++)
-        {
-            ulong hunt = (ulong)damages[i];
-            TianziBillboradManager.Instance.loaclAllHunt += hunt;
-            if (!TianziConfig.TryGetTianziConfigByBossIDAndDamage(bossId, TianziBillboradManager.Instance.loaclAllHunt, out TianziConfig tianziConfig))
-                return;
-            TianziBillboradManager.Instance.loaclMaxHp = (ulong)tianziConfig.MaxHP;
-            TianziBillboradManager.Instance.loaclHpNum = tianziConfig.HPNum;
-            TianziBillboradManager.Instance.loaclNowHunt = TianziConfig.GetCurrentHPDamage(bossId, TianziBillboradManager.Instance.loaclAllHunt);
-
-            // if (loaclMaxHp < nowHpMax || loaclHpNum < nowHpNum)
-            // {
-            //     Debug.LogWarning($"TianziDamageBar hunt {hunt} loaclAllHunt {loaclAllHunt} loaclHpNum {loaclHpNum} loaclNowHunt {loaclNowHunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax{nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-            //     return;
-            // }
-
-            // if (loaclNowHunt < nowHunt)
-            // {
-            //     Debug.LogWarning($"TianziDamageBar hunt {hunt} loaclAllHunt {loaclAllHunt} loaclHpNum {loaclHpNum} loaclNowHunt {loaclNowHunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax{nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-            //     return;
-            // }
-            nowHunt = TianziBillboradManager.Instance.loaclNowHunt;
-            nowHpMax = TianziBillboradManager.Instance.loaclMaxHp;
-            nowHpNum = TianziBillboradManager.Instance.loaclHpNum;
-            // 闄ら浂淇濇姢
-            float percentage = 0f;
-            if (nowHpMax > 0)
-            {
-                percentage = Mathf.Clamp(nowHunt, 0, nowHpMax) / (float)nowHpMax;
-            }
-            m_IntensifySlider.value = percentage;
-            m_IntensifySlider.stage = nowHpNum;
-            //Debug.Log($"TianziDamageBar hunt {hunt} loaclAllHunt {loaclAllHunt} loaclHpNum {loaclHpNum} loaclNowHunt {loaclNowHunt} nowHpNum {nowHpNum} nowHunt {nowHunt} nowHpMax{nowHpMax} 鏃堕棿: {DateTime.Now:HH:mm:ss}");
-        }
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0