private void AnimateState(CharacterState state)
{
try {
spriteAnimator.Sequences = state.GetSpriteAnimationSequences();
}
catch (SpriteAnimationNotAvailableException)
{
return;
}
try
{
spriteAnimator.TransitionSequence = state.GetTransitionAnimationSequence(lastStateAnimation);
}
catch (SpriteAnimationNotAvailableException)
{
spriteAnimator.TransitionSequence = null;
}
spriteAnimator.Settings = state.SpriteAnimationSettings;
spriteAnimator.OnAnimationSequenceComplete -= AnimationSequenceCompleteEventHandler;
spriteAnimator.OnAnimationSequenceComplete += AnimationSequenceCompleteEventHandler;
spriteAnimator.Animate();
}