From 3e4a7a9a6e848d288ae6701496a8b859403ad353 Mon Sep 17 00:00:00 2001 From: chai <215380520@qq.com> Date: Tue, 15 Nov 2022 21:35:07 +0800 Subject: * play animation --- .../Erika_AnimatorController.controller | 2 +- .../Unit/Components/UnitAnimation/UnitMotion.cs | 74 +++++++++++----------- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/Erika/Assets/Bundle/Unit/PC/Erika/AnimatorController/Erika_AnimatorController.controller b/Erika/Assets/Bundle/Unit/PC/Erika/AnimatorController/Erika_AnimatorController.controller index c4b72c13..5999e06f 100644 --- a/Erika/Assets/Bundle/Unit/PC/Erika/AnimatorController/Erika_AnimatorController.controller +++ b/Erika/Assets/Bundle/Unit/PC/Erika/AnimatorController/Erika_AnimatorController.controller @@ -509,7 +509,7 @@ AnimatorStateTransition: m_Mute: 0 m_IsExit: 0 serializedVersion: 3 - m_TransitionDuration: 0.1 + m_TransitionDuration: 0.05 m_TransitionOffset: 0 m_ExitTime: 0.75 m_HasExitTime: 0 diff --git a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitMotion.cs b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitMotion.cs index ffd89a88..5007edd7 100644 --- a/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitMotion.cs +++ b/Erika/Assets/Scripts/Unit/Components/UnitAnimation/UnitMotion.cs @@ -234,6 +234,43 @@ public class UnitMotion : UnitComponent return m_MotionData.HasMotionId(uid); } + #region 覆盖动画状态机片段 + + /// + /// 设置override controller对应片段的覆盖片段 + /// + /// 原placeholder片段名(也可以认为是状态名) + /// + private bool SyncOverrideAnim(string target, AnimationClip clip) + { + if (m_Animator != null) + { + if (m_OverrideController[target] != clip) + { + m_OverrideController[target] = clip != null ? clip : null; + } + return true; + } + return false; + } + + private bool SyncOverrideAnim(string target, string path) + { + AnimationClip clip = ResourceManager.Instance.LoadAsset(path); + if (clip == null) + return false; + return SyncOverrideAnim(target, clip); + } + + private bool SyncOverrideAnim(MotionData motion) + { + string state = motion.animatorState.ToString(); + string path = motion.animationData.animationPath; + return SyncOverrideAnim(state, path); + } + + #endregion + #region 播放动作,对外屏蔽Animator /// @@ -373,41 +410,4 @@ public class UnitMotion : UnitComponent #endregion - #region 覆盖动画状态机片段 - - /// - /// 设置override controller对应片段的覆盖片段 - /// - /// 原placeholder片段名(也可以认为是状态名) - /// - private bool SyncOverrideAnim(string target, AnimationClip clip) - { - if(m_Animator != null) - { - if(m_OverrideController[target] != clip) - { - m_OverrideController[target] = clip != null ? clip : null; - } - return true; - } - return false; - } - - private bool SyncOverrideAnim(string target, string path) - { - AnimationClip clip = ResourceManager.Instance.LoadAsset(path); - if (clip == null) - return false; - return SyncOverrideAnim(target, clip); - } - - private bool SyncOverrideAnim(MotionData motion) - { - string state = motion.animatorState.ToString(); - string path = motion.animationData.animationPath; - return SyncOverrideAnim(state, path); - } - - #endregion - } -- cgit v1.1-26-g67d0