FBClient.Sprites.AnimatedSprite.Draw C# (CSharp) Method

Draw() public method

public Draw ( GameTime gameTime, SpriteBatch spriteBatch, Vector2 position ) : void
gameTime Microsoft.Xna.Framework.GameTime
spriteBatch Microsoft.Xna.Framework.Graphics.SpriteBatch
position Microsoft.Xna.Framework.Vector2
return void
        public void Draw(GameTime gameTime, SpriteBatch spriteBatch, Vector2 position)
        {
            Rectangle? sourceRectangle = _controlable ? _animations[_currentAnimation].CurrentFrameRect : _animation.CurrentFrameRect;

            if (Width != Engine.TileWidth || Height != Engine.TileHeight)
            {
                spriteBatch.Draw(
                    _texture,
                    new Rectangle(
                        (int)(Engine.Origin.X + position.X - Engine.TileWidth / 4f),
                        (int)(Engine.Origin.Y + position.Y - Engine.TileHeight / 2f),
                        Engine.TileWidth + Engine.TileWidth / 2,
                        Engine.TileHeight + Engine.TileHeight / 2),
                    sourceRectangle,
                    Color.White, 0f, Vector2.Zero, SpriteEffects.None, 1f);
            }
            else
            {
                spriteBatch.Draw(
                _texture,
                new Vector2(Engine.Origin.X + position.X, Engine.Origin.Y + position.Y),
                sourceRectangle,
                Color.White, 0f, Vector2.Zero, 1f, SpriteEffects.None, 1f);
            }
        }