public SequencialAnimator(
     string i_Name,
     TimeSpan i_AnimationLength,
     Sprite i_BoundSprite,
     params SpriteAnimator[] i_Animations)
     : base(i_Name, i_AnimationLength, i_BoundSprite, i_Animations)
 {}
 public CompositeAnimator(string i_Name, TimeSpan i_AnimationLength, Sprite i_BoundSprite, params SpriteAnimator[] i_Animations)
     : base(i_Name, i_AnimationLength)
 {
     this.BoundSprite = i_BoundSprite;
     this.Initialize();
     foreach (SpriteAnimator animation in i_Animations)
     {
         this.Add(animation);
     }
 }
 public CompositeAnimator(Sprite i_BoundSprite)
     : this("AnimationsMamager", TimeSpan.Zero, i_BoundSprite)
 {
     this.Enabled = false;
     this.Initialize();
 }
 protected virtual void CloneSpriteInfo()
 {
     if (m_OriginalSpriteInfo == null)
     {
         m_OriginalSpriteInfo = m_BoundSprite.ShallowClone();
     }
 }