Clean up viewport internals.

This commit is contained in:
Paul Chote
2013-09-28 10:21:23 +12:00
parent 936bf98496
commit 919181e04d
13 changed files with 153 additions and 207 deletions

View File

@@ -110,7 +110,7 @@ namespace OpenRA.Mods.RA.Widgets
var cell = MinimapPixelToCell(mi.Location);
var pos = cell.CenterPosition;
if ((mi.Event == MouseInputEvent.Down || mi.Event == MouseInputEvent.Move) && mi.Button == MouseButton.Left)
worldRenderer.Viewport.Center(cell.ToFloat2());
worldRenderer.Viewport.Center(cell.CenterPosition);
if (mi.Event == MouseInputEvent.Down && mi.Button == MouseButton.Right)
{
@@ -153,10 +153,8 @@ namespace OpenRA.Mods.RA.Widgets
// Draw viewport rect
if (hasRadar)
{
var wr = worldRenderer.Viewport.WorldRect;
var wro = new CPos(wr.X, wr.Y);
var tl = CellToMinimapPixel(wro);
var br = CellToMinimapPixel(wro + new CVec(wr.Width, wr.Height));
var tl = CellToMinimapPixel(worldRenderer.Position(worldRenderer.Viewport.TopLeft).ToCPos());
var br = CellToMinimapPixel(worldRenderer.Position(worldRenderer.Viewport.BottomRight).ToCPos());
Game.Renderer.EnableScissor(mapRect.Left, mapRect.Top, mapRect.Width, mapRect.Height);
Game.Renderer.LineRenderer.DrawRect(tl, br, Color.White);

View File

@@ -53,8 +53,7 @@ namespace OpenRA.Mods.RA
var doDim = refreshTick - world.FrameNumber <= 0;
if (doDim) refreshTick = world.FrameNumber + 20;
var viewBounds = wr.Viewport.WorldBounds(world);
var viewBounds = wr.Viewport.CellBounds;
foreach (var pair in layers)
{
var c = (pair.Key != null) ? pair.Key.Color.RGB : Color.PaleTurquoise;

View File

@@ -95,7 +95,7 @@ namespace OpenRA.Mods.RA
public void Render(WorldRenderer wr)
{
var cliprect = wr.Viewport.WorldBounds(world);
var cliprect = wr.Viewport.CellBounds;
var pal = wr.Palette("terrain");
foreach (var kv in tiles)