Remove WorldUtils.FindFrozenActorsAtMouse.

This commit is contained in:
Paul Chote
2013-09-27 18:08:47 +12:00
parent 1ca9c90565
commit 3ae75362bb
4 changed files with 7 additions and 12 deletions

View File

@@ -29,7 +29,7 @@ namespace OpenRA.Orders
target = Target.FromActor(underCursor);
else
{
var frozen = world.FindFrozenActorsAtMouse(mi.Location)
var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, mi.Location)
.Where(a => a.Info.Traits.Contains<ITargetableInfo>())
.OrderByDescending(a => a.Info.SelectionPriority())
.FirstOrDefault();
@@ -77,7 +77,7 @@ namespace OpenRA.Orders
target = Target.FromActor(underCursor);
else
{
var frozen = world.FindFrozenActorsAtMouse(mi.Location)
var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, mi.Location)
.Where(a => a.Info.Traits.Contains<ITargetableInfo>())
.OrderByDescending(a => a.Info.SelectionPriority())
.FirstOrDefault();

View File

@@ -109,8 +109,12 @@ namespace OpenRA.Traits
Add(a);
}
public static readonly IEnumerable<FrozenActor> NoFrozenActors = new FrozenActor[0].AsEnumerable();
public IEnumerable<FrozenActor> FrozenActorsAt(Player viewer, int2 pxPos)
{
if (viewer == null)
return NoFrozenActors;
var i = (pxPos.X / info.BinSize).Clamp(0, cols - 1);
var j = (pxPos.Y / info.BinSize).Clamp(0, rows - 1);
return frozen[viewer][j*cols + i]

View File

@@ -117,7 +117,7 @@ namespace OpenRA.Widgets
return;
}
var frozen = world.FindFrozenActorsAtMouse(Viewport.LastMousePos)
var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, Viewport.LastMousePos)
.Where(a => a.TooltipName != null)
.OrderByDescending(a => a.Info.SelectionPriority())
.FirstOrDefault();

View File

@@ -21,15 +21,6 @@ namespace OpenRA
{
public static class WorldUtils
{
public static readonly IEnumerable<FrozenActor> NoFrozenActors = new FrozenActor[0].AsEnumerable();
public static IEnumerable<FrozenActor> FindFrozenActorsAtMouse(this World world, int2 mouseLocation)
{
if (world.RenderPlayer == null)
return NoFrozenActors;
return world.ScreenMap.FrozenActorsAt(world.RenderPlayer, Game.viewport.ViewToWorldPx(mouseLocation));
}
public static IEnumerable<Actor> FindActorsInBox(this World world, CPos tl, CPos br)
{
// TODO: Support diamond boxes for isometric maps?