Change IOrderGenerator.RenderAfterWorld to return Renderables.

This commit is contained in:
Paul Chote
2014-07-21 23:49:41 +12:00
parent da6ecbf92e
commit 0884722c4b
14 changed files with 32 additions and 31 deletions

View File

@@ -91,6 +91,9 @@ namespace OpenRA.Graphics
var effectRenderables = world.Effects
.SelectMany(e => e.Render(this));
if (world.OrderGenerator != null)
effectRenderables = effectRenderables.Concat(world.OrderGenerator.RenderAfterWorld(this, world));
// Iterating via foreach() copies the structs, so enumerate by index
var renderables = worldRenderables.Concat(effectRenderables).ToList();
@@ -124,9 +127,6 @@ namespace OpenRA.Graphics
if (a.Actor.IsInWorld && !a.Actor.Destroyed)
a.Trait.RenderAfterWorld(this, a.Actor);
if (world.OrderGenerator != null)
world.OrderGenerator.RenderAfterWorld(this, world);
var renderShroud = world.RenderPlayer != null ? world.RenderPlayer.Shroud : null;
foreach (var a in world.ActorsWithTrait<IRenderShroud>())