public SpriteSheetAnimation Play(string name, Action onCompleted = null) { if ((_currentAnimation == null) || _currentAnimation.IsComplete || (_currentAnimation.Name != name)) { _currentAnimation = _animationFactory.Create(name); _currentAnimation.OnCompleted = onCompleted; } return(_currentAnimation); }