Remove obsolete IRenderAsTerrain.
This removes the technical limitation preventing FrozenUnderFog on bridges.
This commit is contained in:
@@ -120,10 +120,6 @@ namespace OpenRA.Graphics
|
|||||||
Game.Renderer.EnableScissor(bounds.Left, bounds.Top, bounds.Width, bounds.Height);
|
Game.Renderer.EnableScissor(bounds.Left, bounds.Top, bounds.Width, bounds.Height);
|
||||||
|
|
||||||
terrainRenderer.Draw(this, Game.viewport);
|
terrainRenderer.Draw(this, Game.viewport);
|
||||||
foreach (var a in world.traitDict.ActorsWithTraitMultiple<IRenderAsTerrain>(world))
|
|
||||||
foreach (var r in a.Trait.RenderAsTerrain(this, a.Actor))
|
|
||||||
r.Render(this);
|
|
||||||
|
|
||||||
Game.Renderer.Flush();
|
Game.Renderer.Flush();
|
||||||
|
|
||||||
for (var i = 0; i < renderables.Count; i++)
|
for (var i = 0; i < renderables.Count; i++)
|
||||||
|
|||||||
@@ -192,7 +192,6 @@ namespace OpenRA.Traits
|
|||||||
public interface IPostRender { void RenderAfterWorld(WorldRenderer wr, Actor self); }
|
public interface IPostRender { void RenderAfterWorld(WorldRenderer wr, Actor self); }
|
||||||
|
|
||||||
public interface IPostRenderSelection { void RenderAfterWorld(WorldRenderer wr); }
|
public interface IPostRenderSelection { void RenderAfterWorld(WorldRenderer wr); }
|
||||||
public interface IRenderAsTerrain { IEnumerable<IRenderable> RenderAsTerrain(WorldRenderer wr, Actor self); }
|
|
||||||
public interface IBodyOrientation
|
public interface IBodyOrientation
|
||||||
{
|
{
|
||||||
WAngle CameraPitch { get; }
|
WAngle CameraPitch { get; }
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ namespace OpenRA.Mods.RA
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Bridge: IRenderAsTerrain, INotifyDamageStateChanged
|
class Bridge: IRender, INotifyDamageStateChanged
|
||||||
{
|
{
|
||||||
ushort template;
|
ushort template;
|
||||||
Dictionary<CPos, byte> footprint;
|
Dictionary<CPos, byte> footprint;
|
||||||
@@ -125,12 +125,12 @@ namespace OpenRA.Mods.RA
|
|||||||
{
|
{
|
||||||
return footprint.Select(c => (IRenderable)(new SpriteRenderable(
|
return footprint.Select(c => (IRenderable)(new SpriteRenderable(
|
||||||
wr.Theater.TileSprite(new TileReference<ushort, byte>(template, c.Value)),
|
wr.Theater.TileSprite(new TileReference<ushort, byte>(template, c.Value)),
|
||||||
c.Key.CenterPosition, WVec.Zero, 0, palette, 1f, true))).ToArray();
|
c.Key.CenterPosition, WVec.Zero, -512, palette, 1f, true))).ToArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool initialized;
|
bool initialized;
|
||||||
Dictionary<ushort, IRenderable[]> renderables;
|
Dictionary<ushort, IRenderable[]> renderables;
|
||||||
public IEnumerable<IRenderable> RenderAsTerrain(WorldRenderer wr, Actor self)
|
public IEnumerable<IRenderable> Render(Actor self, WorldRenderer wr)
|
||||||
{
|
{
|
||||||
if (!initialized)
|
if (!initialized)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user