using Framework.Timer; using UnityEngine; using UnityEngine.Events; namespace Game.Component { public enum EnemyAnimStateType { Idle, Walk, Attack, Die } public class EnemyAnimState : MonoBehaviour { public UnityEvent OnStateEnter; public SpriteRenderer SpriteRenderer; public virtual void SetState (EnemyAnimStateType state) { this.OnStateEnter?.Invoke (state.ToString ()); if (!ReferenceEquals (this.SpriteRenderer , default)) { var color = Color.black; switch (state) { case EnemyAnimStateType.Idle: color = Color.black; break; case EnemyAnimStateType.Walk: color = Color.white; break; case EnemyAnimStateType.Attack: color = Color.red; break; case EnemyAnimStateType.Die: color = Color.black; break; } this.SpriteRenderer.color = color; } } } }