Fixed lightcomponent sprites & broken sprites not being mirrored. Closes #893

This commit is contained in:
Joonas Rikkonen
2018-11-08 15:32:57 +02:00
parent 20da81e5dc
commit 083d88a64f
2 changed files with 21 additions and 4 deletions
@@ -74,9 +74,14 @@ namespace Barotrauma
{
SpriteEffects oldEffects = selectedSprite.effects;
selectedSprite.effects ^= SpriteEffects;
SpriteEffects oldBrokenSpriteEffects = SpriteEffects.None;
if (fadeInBrokenSprite != null)
{
oldBrokenSpriteEffects = fadeInBrokenSprite.Sprite.effects;
fadeInBrokenSprite.Sprite.effects ^= SpriteEffects;
}
float depth = GetDrawDepth();
if (body == null)
{
if (prefab.ResizeHorizontal || prefab.ResizeVertical || SpriteEffects.HasFlag(SpriteEffects.FlipHorizontally) || SpriteEffects.HasFlag(SpriteEffects.FlipVertically))
@@ -91,7 +96,6 @@ namespace Barotrauma
selectedSprite.Draw(spriteBatch, new Vector2(DrawPosition.X, -DrawPosition.Y), color, 0.0f, 1.0f, SpriteEffects.None, depth);
fadeInBrokenSprite?.Sprite.Draw(spriteBatch, new Vector2(DrawPosition.X, -DrawPosition.Y), color * fadeInBrokenSpriteAlpha, 0.0f, 1.0f, SpriteEffects.None, depth - 0.000001f);
}
}
else if (body.Enabled)
{
@@ -122,9 +126,12 @@ namespace Barotrauma
}
selectedSprite.effects = oldEffects;
if (fadeInBrokenSprite != null)
{
fadeInBrokenSprite.Sprite.effects = oldEffects;
}
}
List<IDrawableComponent> staticDrawableComponents = new List<IDrawableComponent>(drawableComponents); //static list to compensate for drawable toggling
for (int i = 0; i < staticDrawableComponents.Count; i++)
{