summaryrefslogtreecommitdiff
path: root/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-09-01 09:49:36 +0800
committerchai <chaifix@163.com>2021-09-01 09:49:36 +0800
commite7c9ddfae65a93336d414c2af90effd1d8bada82 (patch)
treee1e6e41d7e460ae3dd3bafb76979610ad928656d /Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs
parenta5c191cf74238084d9bd9f805b4b6755f70d956d (diff)
*misc
Diffstat (limited to 'Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs')
-rw-r--r--Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs48
1 files changed, 26 insertions, 22 deletions
diff --git a/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs b/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs
index 26361098..d7138516 100644
--- a/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs
+++ b/Assets/Scripts/Unit/Components/UnitAnimation/MonsterAnimation.cs
@@ -18,23 +18,11 @@ public class MonsterAnimation : UnitAnimation
Idle = 0,
Move,
Jump,
- Hit,
- Attack,
- Rise,
- Stinger,
- Turn,
- Landing,
-
- AirAttack0,
- AirAttack1,
- AirAttack2,
- AirAttack3,
-
- Attack0,
- Attack1,
- Attack2,
- Attack3,
- }
+
+ HitLight,
+ HitAir,
+ Rise,
+ }
public override void Initialize()
{
@@ -45,7 +33,7 @@ public class MonsterAnimation : UnitAnimation
m_Animator.speed = 0;
m_LayerInfo = new AnimatorLayerInfo[2];
- m_LayerInfo[0] = new AnimatorLayerInfo(this, m_Animator, (int)ELayer.Basic);
+ m_LayerInfo[0] = new AnimatorLayerInfo(this, m_Animator, (int)ELayer.Basic, ELayer.Basic.ToString());
//m_LayerInfo[1] = new AnimatorLayerInfo(this, m_Animator, ELayer.Attack);
if (m_Animator == null)
@@ -88,23 +76,39 @@ public class MonsterAnimation : UnitAnimation
public void AnimIdle()
{
- m_Animator.CrossFade("Idle", 0.2f, 0);
+ this.CrossFade(EAnimState.Idle, 0.2f, 0);
}
public void AnimHitLight()
{
- m_Animator.Play("HitLight", 0, 0);
+ this.Play(EAnimState.HitLight, 0, 0);
//m_Animator.CrossFade("HitLight", 0.05f, 0, 0, 0);
}
public void AnimHitAir()
{
- m_Animator.Play("HitAir", 0, 0);
+ this.Play(EAnimState.HitAir, 0, 0);
//m_Animator.CrossFade("HitLight", 0.05f, 0, 0, 0);
}
public void AnimRise()
{
- m_Animator.CrossFade("Rise", 0);
+ this.CrossFade(EAnimState.Rise, 0);
}
+ private void Play(EAnimState animState, int layerIndex = 0, float normalizedTime = float.NegativeInfinity)
+ {
+ AnimatorLayerInfo layer = this.layers[layerIndex];
+ if (layer == null)
+ return;
+ layer.OnPlay(animState.ToString(), normalizedTime);
+ }
+
+ public void CrossFade(EAnimState animState, float normalizedTransitionDuration, int layerIndex = 0, float normalizedTimeOffset = float.NegativeInfinity, float normalizedTransitionTime = 0.0f)
+ {
+ AnimatorLayerInfo layer = this.layers[layerIndex];
+ if (layer == null)
+ return;
+ layer.OnCrossFade(animState.ToString(), normalizedTransitionDuration, normalizedTimeOffset, normalizedTransitionTime);
+ }
+
}