From d01510bbd4fd2578d7954333651d24ef57e90810 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期五, 19 十二月 2025 18:24:06 +0800
Subject: [PATCH] 125 战斗 王异复活卡死问题修复

---
 Main/System/Battle/BattleObject/BattleObject.cs                   |    4 ++++
 Main/System/Battle/Motion/MotionBase.cs                           |    2 ++
 Main/System/Battle/BattleField/RecordActions/DeathRecordAction.cs |   10 +++++++++-
 3 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/Main/System/Battle/BattleField/RecordActions/DeathRecordAction.cs b/Main/System/Battle/BattleField/RecordActions/DeathRecordAction.cs
index a781a20..b2019b3 100644
--- a/Main/System/Battle/BattleField/RecordActions/DeathRecordAction.cs
+++ b/Main/System/Battle/BattleField/RecordActions/DeathRecordAction.cs
@@ -111,7 +111,15 @@
             isComplete = true;
         }, withoutAnime);
 
-        return () => isComplete;
+        return () =>
+        {
+            if (deadObj.isReborning)
+            {
+                isComplete = true;
+            }
+
+            return isComplete;
+        };
     }
 
     public override void ForceFinish()
diff --git a/Main/System/Battle/BattleObject/BattleObject.cs b/Main/System/Battle/BattleObject/BattleObject.cs
index a696b86..5959019 100644
--- a/Main/System/Battle/BattleObject/BattleObject.cs
+++ b/Main/System/Battle/BattleObject/BattleObject.cs
@@ -72,6 +72,8 @@
     private List<HB405_tagMCAddExp> hB405_tagMCAddExps = new List<HB405_tagMCAddExp>();
     public BattleHeroInfoBar heroInfoBar;
 
+    public bool isReborning = false;
+
     public BattleObject(BattleField _battleField)
     {
         battleField = _battleField;
@@ -489,6 +491,7 @@
     //  澶嶆椿action
     public void OnReborn(HB427_tagSCUseSkill.tagSCUseSkillHurt vNetData, bool reviveSelf = false)
     {
+        isReborning = true;
         heroGo.SetActive(true);
         motionBase.ResetForReborn(reviveSelf);
         heroRectTrans.anchoredPosition = Vector2.zero;
@@ -510,6 +513,7 @@
     {
         //  娓呯┖鎵�鏈�
         motionBase.ResetForReborn(false);
+        isReborning = false;
     }
 
 
diff --git a/Main/System/Battle/Motion/MotionBase.cs b/Main/System/Battle/Motion/MotionBase.cs
index f145634..301e75a 100644
--- a/Main/System/Battle/Motion/MotionBase.cs
+++ b/Main/System/Battle/Motion/MotionBase.cs
@@ -108,6 +108,8 @@
     public virtual Spine.TrackEntry PlayDeadAnimation(Action onComplete = null)
     {
         if (animState == null) return null;
+
+        CancelControledAnimation();
         
         // 浣跨敤杞ㄩ亾9浣滀负姝讳骸鍔ㄧ敾涓撶敤杞ㄩ亾锛堢嫭绔嬩簬涓昏建閬�0鍜屽瓙鎶�鑳借建閬�1-8锛�
         const int deathTrackIndex = 9;

--
Gitblit v1.8.0