From 8d1f072d55dcb5de7479374f8cf8f8a7cb0adc23 Mon Sep 17 00:00:00 2001 From: bottlefish <781230111@qq.com> Date: Fri, 10 Jul 2026 22:33:05 +0800 Subject: [PATCH] =?UTF-8?q?feat(dialog):=20=E6=B7=BB=E5=8A=A0=E7=B2=BE?= =?UTF-8?q?=E7=81=B5=E5=8A=A8=E6=95=88=20Yarn=20=E5=91=BD=E4=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Cursor --- .../Scripts/Dialog System/BaseYarnCommand.cs | 23 ++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/Assets/Scripts/Dialog System/BaseYarnCommand.cs b/Assets/Scripts/Dialog System/BaseYarnCommand.cs index 64785e84e..3ea567548 100644 --- a/Assets/Scripts/Dialog System/BaseYarnCommand.cs +++ b/Assets/Scripts/Dialog System/BaseYarnCommand.cs @@ -92,6 +92,27 @@ namespace AibisDream yield return SpriteShowcase.Instance.ShowObj(picName, duration); } + [YarnCommand("show_sprite_motion")] + public static IEnumerator ShowSpriteMotion(string picName, string motionProfile, float duration = 0.35f) + { + var showcase = SpriteShowcase.Instance; + if (showcase == null) yield break; + yield return showcase.ShowObjWithMotion(picName, motionProfile, duration); + } + + [YarnCommand("sprite_motion")] + public static IEnumerator SpriteMotion(string motionProfile, float leadDuration = 0.18f) + { + var showcase = SpriteShowcase.Instance; + if (showcase == null) yield break; + + showcase.PlayCurrentMotion(motionProfile); + if (leadDuration > 0f) + { + yield return new WaitForSeconds(leadDuration); + } + } + [YarnCommand("hide_sprite")] public static IEnumerator HideSprite(float duration = 1) { @@ -209,4 +230,4 @@ namespace AibisDream #endregion } -} \ No newline at end of file +}