public void Animate()
 {
     if (currentSequence != null && (Time.time - lastAnimateTime) < (1.0f / currentSequence.FramesPerSecond))
     {
         return;
     }
     lastAnimateTime = Time.time;
     if (currentSequence == null || currentSequence.EndOfSequence) {
         currentSequence = GetNextSequence();
     }
     SetFrame(currentSequence.NextFrame());
 }
 public void AddTransitionAnimationSequence(CharacterState lastState, SpriteAnimationSequence spriteAnimationSequence)
 {
     SpriteTransitionAnimationSequences.Add(lastState, spriteAnimationSequence);
 }
 public void Reset()
 {
     currentSequenceIndex = -1;
     currentSequence = null;
     lastAnimateTime = 0;
 }
 public void AddSpriteAnimationSequence(SpriteAnimationSequence spriteAnimationSequence)
 {
     SpriteAnimationSequences.Add(spriteAnimationSequence);
 }