Scale is now set via a field on Render* and interacts properly with chronoshift and building previews.
This commit is contained in:
@@ -82,7 +82,9 @@ namespace OpenRA.Mods.RA.Orders
|
||||
else
|
||||
{
|
||||
foreach (var r in Preview)
|
||||
r.Sprite.DrawAt(wr,Game.CellSize*topLeft + r.Pos, r.Palette ?? world.LocalPlayer.Palette);
|
||||
r.Sprite.DrawAt(Game.CellSize*topLeft + r.Pos,
|
||||
wr.GetPaletteIndex(r.Palette ?? world.LocalPlayer.Palette),
|
||||
r.Scale*r.Sprite.size);
|
||||
|
||||
var res = world.WorldActor.Trait<ResourceLayer>();
|
||||
var isCloseEnough = BuildingInfo.IsCloseEnoughToBase(world, world.LocalPlayer, Building, topLeft);
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace OpenRA.Mods.RA.Render
|
||||
var anim = new Animation(RenderSimple.GetImage(building, Tileset), () => 0);
|
||||
anim.PlayRepeating("idle");
|
||||
var rb = building.Traits.Get<RenderBuildingInfo>();
|
||||
yield return new Renderable(anim.Image,rb.Origin,rb.Palette,0);
|
||||
yield return new Renderable(anim.Image, rb.Origin + 0.5f*anim.Image.size*(1 - Scale), rb.Palette, 0, Scale);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace OpenRA.Mods.RA.Render
|
||||
var anim = new Animation(RenderSimple.GetImage(building, Tileset), () => 0);
|
||||
anim.PlayRepeating("idle-top");
|
||||
var rb = building.Traits.Get<RenderBuildingInfo>();
|
||||
yield return new Renderable(anim.Image,rb.Origin,rb.Palette,0);
|
||||
yield return new Renderable(anim.Image, rb.Origin + 0.5f*anim.Image.size*(1 - Scale), rb.Palette, 0, Scale);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -214,8 +214,9 @@ namespace OpenRA.Mods.RA
|
||||
{
|
||||
var targetCell = unit.Location + xy - sourceLocation;
|
||||
foreach (var r in unit.Render())
|
||||
r.Sprite.DrawAt(wr, r.Pos - Traits.Util.CenterOfCell(unit.Location) + Traits.Util.CenterOfCell(targetCell),
|
||||
r.Palette ?? unit.Owner.Palette);
|
||||
r.Sprite.DrawAt(r.Pos - Traits.Util.CenterOfCell(unit.Location) + Traits.Util.CenterOfCell(targetCell),
|
||||
wr.GetPaletteIndex(r.Palette ?? unit.Owner.Palette),
|
||||
r.Scale*r.Sprite.size);
|
||||
}
|
||||
|
||||
// Unit tiles
|
||||
|
||||
Reference in New Issue
Block a user