Split Renderable into an IRenderable interface and SpriteRenderable implementation.

This commit is contained in:
Paul Chote
2013-05-12 23:07:39 +12:00
parent 9b7aaebcbc
commit ca5f2c3785
41 changed files with 140 additions and 120 deletions

View File

@@ -98,7 +98,7 @@ namespace OpenRA.Mods.RA
return Level > 0 ? Info.SpeedModifier[Level - 1] : 1m;
}
public IEnumerable<Renderable> ModifyRender(Actor self, WorldRenderer wr, IEnumerable<Renderable> r)
public IEnumerable<IRenderable> ModifyRender(Actor self, WorldRenderer wr, IEnumerable<IRenderable> r)
{
// TODO: Make this consistent with everything else that adds animations to RenderSimple.
if (self.Owner.IsAlliedWith(self.World.RenderPlayer) && Level > 0)
@@ -107,7 +107,7 @@ namespace OpenRA.Mods.RA
return r;
}
IEnumerable<Renderable> InnerModifyRender(Actor self, WorldRenderer wr, IEnumerable<Renderable> r)
IEnumerable<IRenderable> InnerModifyRender(Actor self, WorldRenderer wr, IEnumerable<IRenderable> r)
{
foreach (var rs in r)
yield return rs;
@@ -119,7 +119,7 @@ namespace OpenRA.Mods.RA
var bounds = self.Bounds.Value;
var pos = new float2(bounds.Right, bounds.Bottom - 2);
yield return new Renderable(RankAnim.Image, pos, wr.Palette("effect"), self.CenterLocation.Y);
yield return new SpriteRenderable(RankAnim.Image, pos, wr.Palette("effect"), self.CenterLocation.Y);
}
}