From af6a709b2c812b860cc034bd1b2f74a3f62a8fe4 Mon Sep 17 00:00:00 2001 From: ww-rm Date: Thu, 3 Apr 2025 00:30:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8A=A8=E7=94=BB=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E9=87=8D=E7=BD=AE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SpineViewer/Controls/SpinePreviewer.cs | 4 ++-- SpineViewer/Spine/Spine.cs | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/SpineViewer/Controls/SpinePreviewer.cs b/SpineViewer/Controls/SpinePreviewer.cs index f862968..9b134a0 100644 --- a/SpineViewer/Controls/SpinePreviewer.cs +++ b/SpineViewer/Controls/SpinePreviewer.cs @@ -619,7 +619,7 @@ namespace SpineViewer.Controls lock (SpineListView.Spines) { foreach (var spine in SpineListView.Spines) - spine.Track0Animation = spine.Track0Animation; // TODO: 多轨道重置 + spine.ResetAnimationsTime(); } } } @@ -631,7 +631,7 @@ namespace SpineViewer.Controls lock (SpineListView.Spines) { foreach (var spine in SpineListView.Spines) - spine.Track0Animation = spine.Track0Animation; // TODO: 多轨道重置 + spine.ResetAnimationsTime(); } } IsUpdating = true; diff --git a/SpineViewer/Spine/Spine.cs b/SpineViewer/Spine/Spine.cs index 9e2863c..96eaf0c 100644 --- a/SpineViewer/Spine/Spine.cs +++ b/SpineViewer/Spine/Spine.cs @@ -315,6 +315,18 @@ namespace SpineViewer.Spine /// public abstract float GetAnimationDuration(string name); + /// + /// 重置所有轨道上的动画时间 + /// + public void ResetAnimationsTime() + { + lock (_lock) + { + foreach (var i in getTrackIndices()) + setAnimation(i, getAnimation(i)); + } + } + #endregion #region 属性 | [4] 调试