From ee7f8b5362d27b228274c197dba97b17cb6bda57 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期日, 21 十二月 2025 19:07:17 +0800
Subject: [PATCH] Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_scripts

---
 Main/System/Battle/Skill/SkillBase.cs |   70 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 1 deletions(-)

diff --git a/Main/System/Battle/Skill/SkillBase.cs b/Main/System/Battle/Skill/SkillBase.cs
index 8e36377..072fbf4 100644
--- a/Main/System/Battle/Skill/SkillBase.cs
+++ b/Main/System/Battle/Skill/SkillBase.cs
@@ -1074,16 +1074,84 @@
         if (isFinished)
             return;
 
+        // 1. 寮哄埗缁撴潫鎶�鑳芥晥鏋�
         skillEffect?.ForceFinished();
+        skillEffect = null;
         
+        // 2. 寮哄埗缁撴潫鎵�鏈夊瓙鎶�鑳藉姩浣�
         otherSkillActionList.ForEach(action => action.ForceFinish());
         otherSkillActionList.Clear();
+
+        // 3. 娓呯悊 DOTween 鍔ㄧ敾锛堥槻姝㈢Щ鍔ㄥ洖璋冨湪鎴樻枟缁撴潫鍚庢墽琛岋級
+        if (caster != null && caster.heroRectTrans != null)
+        {
+            DG.Tweening.DOTween.Kill(caster.heroRectTrans);
+        }
+
+        // 4. 閲嶇疆鏂芥硶鑰呯姸鎬�
+        if (caster != null)
+        {
+            // 閲嶇疆浣嶇疆鍒板師鐐�
+            if (caster.heroRectTrans != null)
+            {
+                caster.heroRectTrans.anchoredPosition = Vector2.zero;
+            }
+            
+            // 閲嶇疆鏈濆悜
+            if (caster.heroGo != null)
+            {
+                Vector3 scale = caster.heroGo.transform.localScale;
+                scale.x = Mathf.Abs(scale.x);
+                caster.heroGo.transform.localScale = scale;
+            }
+
+            // 鍙栨秷骞诲奖鏁堟灉
+            caster.motionBase?.ShowIllusionShadow(false);
+            
+            // 鎾斁寰呮満鍔ㄧ敾锛堝鏋滆繕娲荤潃锛�
+            if (!caster.teamHero.isDead)
+            {
+                caster.motionBase?.ResetForReborn(false);
+            }
+
+            // 娓呯悊鍔ㄧ敾鍥炶皟
+            caster.motionBase?.CancelControledAnimation();
+        }
+
+        // 5. 鎭㈠ UI 鐘舵��
+        if (battleField != null)
+        {
+            // 鎭㈠鎵�鏈夎鑹茬殑鏄剧ず灞傜骇鍜岃鏉�
+            var allList = battleField.battleObjMgr?.allBattleObjDict?.Values;
+            if (allList != null)
+            {
+                foreach (BattleObject bo in allList)
+                {
+                    bo.layerMgr?.SetFront();
+                    bo.heroInfoBar?.SetActive(true);
+                }
+            }
+            
+            // 鍏抽棴鎶�鑳介伄缃�
+            if (battleField.battleRootNode != null && battleField.battleRootNode.skillMaskNode != null)
+            {
+                battleField.battleRootNode.skillMaskNode.SetActive(false);
+            }
+        }
 
         isFinished = true;
         moveFinished = true;
         isPlay = true;
 
-        // 澶勭悊鎵�鏈夊墿浣欏寘
+        // 6. 澶勭悊鎵�鏈夊墿浣欏寘锛堝寘鎷� buff 鍖咃級
+        // 鍏堝鐞� buffCollections
+        foreach (var buff in buffCollections)
+        {
+            PackageRegedit.Distribute(buff);
+        }
+        buffCollections.Clear();
+
+        // 澶勭悊鍓╀綑鐨� packList
         while (packList.Count > 0)
         {
             var pack = packList[0];

--
Gitblit v1.8.0