From 039b2d01aeecf017dfcbabdf6c90073bf0301590 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期二, 09 十二月 2025 11:44:15 +0800
Subject: [PATCH] 125 战斗 解决盈野的BOSS血量在战斗结束后还会剩余的问题

---
 Main/System/Battle/Skill/SkillBase.cs    |    2 ++
 Main/System/Battle/BoneFieldBattleWin.cs |   19 +++++++++++++------
 2 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/Main/System/Battle/BoneFieldBattleWin.cs b/Main/System/Battle/BoneFieldBattleWin.cs
index c7c2af2..d5bf43c 100644
--- a/Main/System/Battle/BoneFieldBattleWin.cs
+++ b/Main/System/Battle/BoneFieldBattleWin.cs
@@ -138,19 +138,26 @@
         }
     }
 
-
     protected override void OnDamageTaken(BattleDmgInfo info)
     {
+        // Debug.LogError("OnDamageTaken 琚皟鐢� 璋冪敤鑰呮槸 " + info.battleHurtParam.caster.casterObj?.teamHero.name + " 瀵硅薄 " + info.battleHurtParam.hurter.hurtObj?.teamHero.name);
         base.OnDamageTaken(info);
-
+        
         if (battleField == null || info.battleFieldGuid != battleField.guid)
             return;
 
-        if (bossBattleObject != null && info.hurtObj.ObjID == bossBattleObject.ObjID)
-        {
-            RefreshHP();
-        }
+        if (null == bossBattleObject)
+            return;
 
+        // 鈽呪槄鈽� 瀹屽叏浣跨敤 StoryBossBattleWin 鐨勯�昏緫 鈽呪槄鈽�
+        if (info.battleHurtParam.hurter.hurtObj != null && bossBattleObject.teamHero.ObjID == info.battleHurtParam.hurter.hurtObj.teamHero.ObjID)
+        {
+            bossLifeBar.Show((ulong)info.battleHurtParam.hurter.toHp, (ulong)bossBattleObject.teamHero.maxHp);
+        }
+        else if (info.battleHurtParam.caster.casterObj != null && bossBattleObject.teamHero.ObjID == info.battleHurtParam.caster.casterObj.teamHero.ObjID)
+        {
+            bossLifeBar.Show((ulong)info.battleHurtParam.caster.toHp, (ulong)bossBattleObject.teamHero.maxHp);
+        }
     }
 
     protected override void OnClose()
diff --git a/Main/System/Battle/Skill/SkillBase.cs b/Main/System/Battle/Skill/SkillBase.cs
index b6ab66b..956779a 100644
--- a/Main/System/Battle/Skill/SkillBase.cs
+++ b/Main/System/Battle/Skill/SkillBase.cs
@@ -594,6 +594,8 @@
     // 鍛戒腑鐩爣鍥炶皟锛氬鐞嗘墍鏈夎鍛戒腑鐨勭洰鏍囷紙鍖呮嫭涓荤洰鏍囥�佸脊灏勭洰鏍囥�佹簠灏勭洰鏍囷級
     protected virtual void OnHitTargets(int _hitIndex, List<HB427_tagSCUseSkill.tagSCUseSkillHurt> hitList)
     {
+        // Debug.LogError($"Skill {skillConfig.SkillID} hit targets _hitIndex: {_hitIndex} hit {string.Join(", ", hitList.Select(h => h.ObjID + ":" + battleField.battleObjMgr.GetBattleObject((int)h.ObjID)?.teamHero.name))}");
+
         //  閫犳垚浼ゅ鍓嶅厛澶勭悊琛�閲忓埛鏂板寘
         HandleRefreshHP();
 

--
Gitblit v1.8.0