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