Move more viewport lookups to WorldRenderer.
This commit is contained in:
@@ -71,7 +71,7 @@ namespace OpenRA.Mods.RA.Orders
|
||||
public IEnumerable<IRenderable> Render(WorldRenderer wr, World world) { yield break; }
|
||||
public void RenderAfterWorld(WorldRenderer wr, World world)
|
||||
{
|
||||
var position = Game.viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var position = wr.Viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var topLeft = position - FootprintUtils.AdjustForBuildingSize(BuildingInfo);
|
||||
|
||||
var actorInfo = Rules.Info[Building];
|
||||
|
||||
@@ -138,7 +138,7 @@ namespace OpenRA.Mods.RA
|
||||
|
||||
public void RenderAfterWorld(WorldRenderer wr, World world)
|
||||
{
|
||||
var xy = Game.viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var xy = wr.Viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var targetUnits = power.UnitsInRange(xy);
|
||||
foreach (var unit in targetUnits)
|
||||
if (manager.self.Owner.Shroud.IsTargetable(unit) || manager.self.Owner.HasFogVisibility())
|
||||
@@ -147,7 +147,7 @@ namespace OpenRA.Mods.RA
|
||||
|
||||
public IEnumerable<IRenderable> Render(WorldRenderer wr, World world)
|
||||
{
|
||||
var xy = Game.viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var xy = wr.Viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var tiles = world.FindTilesInCircle(xy, range);
|
||||
var pal = wr.Palette("terrain");
|
||||
foreach (var t in tiles)
|
||||
@@ -226,7 +226,7 @@ namespace OpenRA.Mods.RA
|
||||
|
||||
public IEnumerable<IRenderable> Render(WorldRenderer wr, World world)
|
||||
{
|
||||
var xy = Game.viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var xy = wr.Viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var pal = wr.Palette("terrain");
|
||||
|
||||
// Source tiles
|
||||
|
||||
@@ -90,14 +90,14 @@ namespace OpenRA.Mods.RA
|
||||
|
||||
public void RenderAfterWorld(WorldRenderer wr, World world)
|
||||
{
|
||||
var xy = Game.viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var xy = wr.Viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
foreach (var unit in power.UnitsInRange(xy))
|
||||
wr.DrawSelectionBox(unit, Color.Red);
|
||||
}
|
||||
|
||||
public IEnumerable<IRenderable> Render(WorldRenderer wr, World world)
|
||||
{
|
||||
var xy = Game.viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var xy = wr.Viewport.ViewToWorld(Viewport.LastMousePos);
|
||||
var pal = wr.Palette("terrain");
|
||||
foreach (var t in world.FindTilesInCircle(xy, range))
|
||||
yield return new SpriteRenderable(tile, t.CenterPosition, WVec.Zero, -511, pal, 1f, true);
|
||||
|
||||
@@ -83,7 +83,7 @@ namespace OpenRA.Mods.RA.Widgets
|
||||
return null;
|
||||
|
||||
var cell = MinimapPixelToCell(pos);
|
||||
var location = Game.viewport.WorldToViewPx(worldRenderer.ScreenPxPosition(cell.CenterPosition));
|
||||
var location = worldRenderer.Viewport.WorldToViewPx(worldRenderer.ScreenPxPosition(cell.CenterPosition));
|
||||
|
||||
var mi = new MouseInput
|
||||
{
|
||||
@@ -110,12 +110,12 @@ 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)
|
||||
Game.viewport.Center(cell.ToFloat2());
|
||||
worldRenderer.Viewport.Center(cell.ToFloat2());
|
||||
|
||||
if (mi.Event == MouseInputEvent.Down && mi.Button == MouseButton.Right)
|
||||
{
|
||||
// fake a mousedown/mouseup here
|
||||
var location = Game.viewport.WorldToViewPx(worldRenderer.ScreenPxPosition(pos));
|
||||
var location = worldRenderer.Viewport.WorldToViewPx(worldRenderer.ScreenPxPosition(pos));
|
||||
var fakemi = new MouseInput
|
||||
{
|
||||
Event = MouseInputEvent.Down,
|
||||
@@ -153,7 +153,7 @@ namespace OpenRA.Mods.RA.Widgets
|
||||
// Draw viewport rect
|
||||
if (hasRadar)
|
||||
{
|
||||
var wr = Game.viewport.WorldRect;
|
||||
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));
|
||||
|
||||
@@ -53,7 +53,7 @@ namespace OpenRA.Mods.RA
|
||||
var doDim = refreshTick - world.FrameNumber <= 0;
|
||||
if (doDim) refreshTick = world.FrameNumber + 20;
|
||||
|
||||
var viewBounds = Game.viewport.WorldBounds(world);
|
||||
var viewBounds = wr.Viewport.WorldBounds(world);
|
||||
|
||||
foreach (var pair in layers)
|
||||
{
|
||||
|
||||
@@ -95,7 +95,7 @@ namespace OpenRA.Mods.RA
|
||||
|
||||
public void Render(WorldRenderer wr)
|
||||
{
|
||||
var cliprect = Game.viewport.WorldBounds(world);
|
||||
var cliprect = wr.Viewport.WorldBounds(world);
|
||||
var pal = wr.Palette("terrain");
|
||||
|
||||
foreach (var kv in tiles)
|
||||
|
||||
Reference in New Issue
Block a user