public AnimatedSprite(Texture2D texture, int frameWidth, int frameHeight, double framesPerSecond, bool looping = true) { _texture = texture; _frames = new List<Rectangle>(); _currentFrame = 0; _timePerFrame = 1.0 / framesPerSecond; _elapsedTime = 0; _looping = looping; IsPlaying = true;
if (_elapsedTime >= _timePerFrame) { _currentFrame++; _elapsedTime -= _timePerFrame; monogame animated sprite
public void Update(GameTime gameTime) { if (!IsPlaying) return; public AnimatedSprite(Texture2D texture
if (_currentFrame >= _frames.Count) { if (_looping) _currentFrame = 0; else { _currentFrame = _frames.Count - 1; IsPlaying = false; } } } } _frames = new List<