Use SpriteRenderables for tile overlays.

This commit is contained in:
Paul Chote
2013-09-21 10:26:03 +12:00
parent 8c0da26ae1
commit 3002c4b77d
3 changed files with 7 additions and 7 deletions

View File

@@ -48,11 +48,8 @@ namespace OpenRA.Traits
var c = render[x, y];
if (c.Image != null)
{
var tile = c.Image[c.Density];
var px = wr.ScreenPxPosition(pos.CenterPosition) - 0.5f * tile.size;
tile.DrawAt(px, c.Type.info.PaletteRef);
}
new SpriteRenderable(c.Image[c.Density], pos.CenterPosition,
WVec.Zero, -511, c.Type.info.PaletteRef, 1f, true).Render(wr);
}
}
}

View File

@@ -112,7 +112,8 @@ namespace OpenRA.Mods.RA.Orders
foreach (var c in cells)
{
var tile = c.Value ? buildOk : buildBlocked;
tile.DrawAt(wr.ScreenPxPosition(c.Key.CenterPosition) - 0.5f * tile.size, pal);
new SpriteRenderable(tile, c.Key.CenterPosition,
WVec.Zero, -511, pal, 1f, true).Render(wr);
}
}

View File

@@ -106,7 +106,9 @@ namespace OpenRA.Mods.RA
if (world.ShroudObscures(kv.Key))
continue;
smudgeSprites[kv.Value.Type - 1][kv.Value.Index].DrawAt(kv.Key.ToPPos().ToFloat2(), pal);
var tile = smudgeSprites[kv.Value.Type - 1][kv.Value.Index];
new SpriteRenderable(tile, kv.Key.CenterPosition,
WVec.Zero, -511, pal, 1f, true).Render(wr);
}
}
}