From 596bbf063f87587b6eba71bbad8f8867539436dc Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期二, 16 十二月 2025 16:35:37 +0800
Subject: [PATCH] 125 战斗 吸血bug修复

---
 Main/System/Battle/BattleUtility.cs                     |   10 ++++++++++
 Main/System/Battle/Skill/SkillBase.cs                   |    7 ++++++-
 Main/System/Battle/UIComp/BattleFloatingUIController.cs |    6 ++++--
 3 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/Main/System/Battle/BattleUtility.cs b/Main/System/Battle/BattleUtility.cs
index 97a7046..6e338dd 100644
--- a/Main/System/Battle/BattleUtility.cs
+++ b/Main/System/Battle/BattleUtility.cs
@@ -319,6 +319,16 @@
         {
             var hurt = hB427_TagSCUseSkill.HurtList[i];
             totalSuckHp += hurt.SuckHP;
+            for (int k = 0; k < hurt.HurtListEx.Length; k++)
+            {
+                var hurtEx = hurt.HurtListEx[k];
+                totalSuckHp += hurtEx.SuckHP;
+            }
+        }
+        for (int i = 0; i < hB427_TagSCUseSkill.HurtListEx.Length; i++)
+        {
+            var hurt = hB427_TagSCUseSkill.HurtListEx[i];
+            totalSuckHp += hurt.SuckHP;
         }
         return totalSuckHp;
     }
diff --git a/Main/System/Battle/Skill/SkillBase.cs b/Main/System/Battle/Skill/SkillBase.cs
index dcc5639..8e36377 100644
--- a/Main/System/Battle/Skill/SkillBase.cs
+++ b/Main/System/Battle/Skill/SkillBase.cs
@@ -710,9 +710,14 @@
         tempDropList.TryGetValue(objID, out BattleDrops battleDrops);
         tempDeadPackList.TryGetValue(objID, out BattleDeadPack deadPack);
 
+        bool clearSuckHp = tagUseSkillAttack.HurtList.ToList().IndexOf(hurt) != 0;
+
         // ============ 鍙傛暟鎵撳寘 ============
         BattleHurtParam hurtParam = BattleUtility.CalcBattleHurtParam(this, _hitIndex, target, hurt, battleDrops, deadPack);
-
+        if (clearSuckHp)
+        {
+            hurtParam.caster.suckHpList.Clear();
+        }
 #if UNITY_EDITOR
         PrintHurtParamDebugInfo(hurtParam);
 #endif
diff --git a/Main/System/Battle/UIComp/BattleFloatingUIController.cs b/Main/System/Battle/UIComp/BattleFloatingUIController.cs
index ee2ccc2..bc1f775 100644
--- a/Main/System/Battle/UIComp/BattleFloatingUIController.cs
+++ b/Main/System/Battle/UIComp/BattleFloatingUIController.cs
@@ -197,7 +197,8 @@
     /// </summary>
     private Vector2 GetBeginPosition()
     {
-        return runtimeBeginPos ?? config.beginPos;
+        Vector2 vector2 = runtimeBeginPos ?? config.beginPos;
+        return vector2;// + new Vector2(UnityEngine.Random.Range(-100, 100), UnityEngine.Random.Range(-100, 100));
     }
     
     /// <summary>
@@ -205,7 +206,8 @@
     /// </summary>
     private Vector2 GetEndPosition()
     {
-        return runtimeEndPos ?? config.endPos;
+        Vector2 vector2 = runtimeEndPos ?? config.endPos;
+        return vector2;// + new Vector2(UnityEngine.Random.Range(-100, 100), UnityEngine.Random.Range(-100, 100));
     }
     
     /// <summary>

--
Gitblit v1.8.0