From 778218d5d3562d8287f0612f83b8958daba8548e Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 10 十月 2025 18:21:27 +0800
Subject: [PATCH] 125 战斗 最后一击死亡处理

---
 Main/System/Battle/BattleObject/BattleObject.cs |   24 +++++++++++++++++++++---
 1 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/Main/System/Battle/BattleObject/BattleObject.cs b/Main/System/Battle/BattleObject/BattleObject.cs
index ec4ec52..26f9384 100644
--- a/Main/System/Battle/BattleObject/BattleObject.cs
+++ b/Main/System/Battle/BattleObject/BattleObject.cs
@@ -268,14 +268,32 @@
         return true;
     }
 
-    public virtual void Hurt(List<long> damageValues, long _totalDamage, HB427_tagSCUseSkill.tagSCUseSkillHurt hurt, SkillConfig skillConfig, bool playAnimation = true)
+    public virtual void Hurt(List<long> damageValues, long _totalDamage,
+        HB427_tagSCUseSkill.tagSCUseSkillHurt hurt, SkillConfig skillConfig, bool isLastHit,
+        BattleDrops battleDrops, HB422_tagMCTurnFightObjDead deadPack)
     {
         BattleDmgInfo dmgInfo = PopDamage(damageValues, _totalDamage, hurt, skillConfig);
 
-        if ((dmgInfo.IsType(DamageType.Damage) || dmgInfo.IsRealdamage()) && playAnimation)
+        bool isFatalAttack = (null != deadPack) && isLastHit;
+
+        if (isFatalAttack)
         {
-            motionBase.PlayAnimation(MotionName.hit, false);
+            if (null != battleDrops)
+            {
+                PushDropItems(battleDrops);
+            }
+            battleField.OnObjsDead(new List<HB422_tagMCTurnFightObjDead>() { deadPack });
+            
         }
+        else
+        {
+            if ((dmgInfo.IsType(DamageType.Damage) || dmgInfo.IsRealdamage()))
+            {
+                motionBase.PlayAnimation(MotionName.hit, false);
+            }
+        }
+
+
     }
 
     public void SuckHp(uint suckHP, SkillConfig skillConfig)

--
Gitblit v1.8.0