Fix turret positioning in the map editor.
This commit is contained in:
@@ -66,9 +66,10 @@ namespace OpenRA.Graphics
|
|||||||
return new IRenderable[] { imageRenderable };
|
return new IRenderable[] { imageRenderable };
|
||||||
}
|
}
|
||||||
|
|
||||||
public IRenderable[] RenderUI(int2 pos, WVec offset, int zOffset, PaletteReference palette, float scale)
|
public IRenderable[] RenderUI(WorldRenderer wr, int2 pos, WVec offset, int zOffset, PaletteReference palette, float scale)
|
||||||
{
|
{
|
||||||
var imagePos = pos - new int2((int)(scale * Image.Size.X / 2), (int)(scale * Image.Size.Y / 2));
|
var screenOffset = (scale * wr.ScreenVectorComponents(offset)).XY.ToInt2();
|
||||||
|
var imagePos = pos + screenOffset - new int2((int)(scale * Image.Size.X / 2), (int)(scale * Image.Size.Y / 2));
|
||||||
var imageRenderable = new UISpriteRenderable(Image, WPos.Zero + offset, imagePos, CurrentSequence.ZOffset + zOffset, palette, scale);
|
var imageRenderable = new UISpriteRenderable(Image, WPos.Zero + offset, imagePos, CurrentSequence.ZOffset + zOffset, palette, scale);
|
||||||
|
|
||||||
if (CurrentSequence.ShadowStart >= 0)
|
if (CurrentSequence.ShadowStart >= 0)
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ namespace OpenRA.Mods.Common.Effects
|
|||||||
IEnumerable<IRenderable> IEffectAnnotation.RenderAnnotation(WorldRenderer wr)
|
IEnumerable<IRenderable> IEffectAnnotation.RenderAnnotation(WorldRenderer wr)
|
||||||
{
|
{
|
||||||
var screenPos = wr.Viewport.WorldToViewPx(wr.ScreenPxPosition(pos));
|
var screenPos = wr.Viewport.WorldToViewPx(wr.ScreenPxPosition(pos));
|
||||||
return anim.RenderUI(screenPos, WVec.Zero, 0, wr.Palette(palette), 1f);
|
return anim.RenderUI(wr, screenPos, WVec.Zero, 0, wr.Palette(palette), 1f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace OpenRA.Mods.Common.Graphics
|
|||||||
|
|
||||||
IEnumerable<IRenderable> IActorPreview.RenderUI(WorldRenderer wr, int2 pos, float scale)
|
IEnumerable<IRenderable> IActorPreview.RenderUI(WorldRenderer wr, int2 pos, float scale)
|
||||||
{
|
{
|
||||||
return animation.RenderUI(pos, offset(), zOffset(), pr, scale);
|
return animation.RenderUI(wr, pos, offset(), zOffset(), pr, scale);
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerable<IRenderable> IActorPreview.Render(WorldRenderer wr, WPos pos)
|
IEnumerable<IRenderable> IActorPreview.Render(WorldRenderer wr, WPos pos)
|
||||||
|
|||||||
Reference in New Issue
Block a user