/// <summary> /// Draws a sprite animation with the specified scaling factor. /// </summary> /// <param name="animation">A <see cref="SpriteAnimationController"/> representing the sprite animation to draw.</param> /// <param name="position">The sprite's position in screen coordinates.</param> /// <param name="scale">The sprite's scale factor.</param> public void DrawScaledSprite(SpriteAnimationController animation, Vector2 position, Vector2 scale) { if (SpriteBatch == null) throw new InvalidOperationException(PresentationStrings.DrawingContextDoesNotHaveSpriteBatch); SpriteBatch.DrawScaledSprite(animation, position, scale, Color.White * Opacity, 0f); }
/// <summary> /// Draws a sprite animation with the specified scaling factor. /// </summary> /// <param name="animation">A <see cref="SpriteAnimationController"/> representing the sprite animation to draw.</param> /// <param name="position">The sprite's position in screen coordinates.</param> /// <param name="scale">The sprite's scale factor.</param> /// <param name="color">The sprite's color.</param> /// <param name="rotation">The sprite's rotation in radians.</param> /// <param name="effects">The sprite's rendering effects.</param> /// <param name="layerDepth">The sprite's layer depth.</param> public void DrawScaledSprite(SpriteAnimationController animation, Vector2 position, Vector2 scale, Color color, Single rotation, SpriteEffects effects, Single layerDepth) { if (SpriteBatch == null) throw new InvalidOperationException(PresentationStrings.DrawingContextDoesNotHaveSpriteBatch); SpriteBatch.DrawScaledSprite(animation, position, scale, color * Opacity, rotation, effects, layerDepth); }
/// <summary> /// Draws a sprite animation. /// </summary> /// <param name="animation">A <see cref="SpriteAnimationController"/> representing the sprite animation to draw.</param> /// <param name="position">The sprite's position in screen coordinates.</param> /// <param name="width">The width in pixels of the destination rectangle, or <c>null</c> to use the width of the sprite.</param> /// <param name="height">The height in pixels of the destination rectangle, or <c>null</c> to use the height of the sprite.</param> /// <param name="color">The sprite's tint color.</param> /// <param name="rotation">The sprite's rotation in radians.</param> public void DrawSprite(SpriteAnimationController animation, Vector2 position, Single? width, Single? height, Color color, Single rotation) { if (SpriteBatch == null) throw new InvalidOperationException(PresentationStrings.DrawingContextDoesNotHaveSpriteBatch); SpriteBatch.DrawSprite(animation, position, width, height, color * Opacity, rotation); }