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