From 8581fb56f1bc0ad0c396a9f689be14e94e6ca00b Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期日, 28 九月 2025 19:57:19 +0800
Subject: [PATCH] 125 战斗 1.战斗层级无效问题 2.连击不回原位就直接开打的问题 3.特效延迟销毁问题 4.部分技能使用之后会卡死的问题

---
 Main/System/Battle/BattleUtility.cs |   40 ++++++----------------------------------
 1 files changed, 6 insertions(+), 34 deletions(-)

diff --git a/Main/System/Battle/BattleUtility.cs b/Main/System/Battle/BattleUtility.cs
index 3d39c4e..03d2cda 100644
--- a/Main/System/Battle/BattleUtility.cs
+++ b/Main/System/Battle/BattleUtility.cs
@@ -63,9 +63,12 @@
     public static TweenerCore<Vector2, Vector2, DG.Tweening.Plugins.Options.VectorOptions> MoveToTarget(
         RectTransform transform, RectTransform target, Vector2 offset, Action onComplete = null, float speed = 500f)
     {
+        // 鑾峰彇鐩爣鑺傜偣鐨勪笘鐣屽潗鏍囷紙閿氱偣浣嶇疆锛�
+        Vector3 worldPos = target.position;
 
-        // 鑾峰彇鐩爣鑺傜偣鐨勪笘鐣屽潗鏍囷紙涓績鐐癸級
-        Vector3 worldPos = target.TransformPoint(target.rect.center + offset);
+        // 濡傛灉闇�瑕佸姞 offset锛岄渶鑰冭檻 scale
+        Vector3 offsetWorld = target.TransformVector(offset);
+        worldPos += offsetWorld;
 
         RectTransform canvasRect = transform.parent as RectTransform;
 
@@ -77,45 +80,14 @@
             null,
             out localPoint);
 
-        // 鍒涘缓RawImage
         float distance = Vector2.Distance(transform.anchoredPosition, localPoint);
-
-        float duration = distance / speed; // 鍋囪閫熷害涓�1000鍗曚綅/绉掞紝鍙互鏍规嵁闇�瑕佽皟鏁�
+        float duration = distance / speed;
 
         var tween = transform.DOAnchorPos(localPoint, duration).SetEase(Ease.Linear);
         tween.onComplete += () =>
         {
             onComplete?.Invoke();
         };
-
-        // MarkStartAndEnd(transform as RectTransform, target);
-
-
-        // // 1. 鑾峰彇鐩爣鐨勪笘鐣屽潗鏍囷紙鍔� offset锛�
-        // Vector3 targetWorldPos = target.TransformPoint(target.anchoredPosition + offset);
-
-        // // 2. 鑾峰彇婧愯妭鐐圭殑 parent
-        // RectTransform sourceParent = transform.parent as RectTransform;
-        // if (sourceParent == null)
-        // {
-        //     BattleDebug.LogError("婧愯妭鐐规病鏈夌埗鑺傜偣锛屾棤娉曡浆鎹㈠潗鏍囷紒");
-        //     return null;
-        // }
-
-        // // 3. 鎶婄洰鏍囦笘鐣屽潗鏍囪浆鎹㈠埌婧� parent 鐨勬湰鍦板潗鏍�
-        // Vector2 targetAnchoredPos;
-        // RectTransformUtility.ScreenPointToLocalPointInRectangle(
-        //     sourceParent,
-        //     RectTransformUtility.WorldToScreenPoint(CameraManager.uiCamera, targetWorldPos),
-        //     CameraManager.uiCamera,
-        //     out targetAnchoredPos);
-
-        // // 4. DOTween 绉诲姩
-        // var tween = transform.DOAnchorPos(targetAnchoredPos, duration).SetEase(Ease.Linear);
-        // tween.onComplete += () =>
-        // {
-        //     onComplete?.Invoke();
-        // };
 
         return tween;
     }

--
Gitblit v1.8.0