summaryrefslogtreecommitdiff
path: root/Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs')
-rw-r--r--Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs22
1 files changed, 13 insertions, 9 deletions
diff --git a/Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs b/Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs
index 4b9cd21e..8be58188 100644
--- a/Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs
+++ b/Assets/Scripts/AbilitySystem/Abilities/IdleAbility.cs
@@ -5,25 +5,27 @@ using UnityEngine;
public class IdleAbility : AbilityBase
{
- /// <summary>
- /// idle的动画
- /// </summary>
+ Animator m_Animator;
+
int m_AnimHash;
/// <summary>
/// 在Idle状态时可以切换的ability
/// </summary>
- private List<Trigger> m_Triggers;
+ private List<Trigger> m_Triggers = new List<Trigger>();
- public IdleAbility(int animation)
+ public IdleAbility(Animator animator, int animation)
: base()
{
- m_AnimHash = animation;
+ m_Animator = animator;
+ m_AnimHash = animation;
}
public override void OnEnter()
{
-
+ m_Animator.speed = 1;
+ m_Animator.CrossFade(m_AnimHash, 0.3f);
+ m_Animator.speed = 0;
}
public override void OnInit()
@@ -42,9 +44,11 @@ public class IdleAbility : AbilityBase
base.OnUpdate();
}
- public void AddTrigger()
+ public void AddTrigger(Trigger trigger)
{
-
+ if (trigger == null || m_Triggers.Contains(trigger))
+ return;
+ m_Triggers.Add(trigger);
}
}