Move ClampToWorld from WorldUtils to Map

This commit is contained in:
Pavlos Touboulidis
2014-06-13 13:59:40 +03:00
parent c282fa1077
commit 77fb188585
6 changed files with 11 additions and 11 deletions

View File

@@ -550,5 +550,11 @@ namespace OpenRA
var tileSet = Rules.TileSets[Tileset];
return tileSet[GetTerrainIndex(cell)];
}
public CPos Clamp(CPos xy)
{
var r = Bounds;
return xy.Clamp(new Rectangle(r.X, r.Y, r.Width - 1, r.Height - 1));
}
}
}

View File

@@ -88,12 +88,6 @@ namespace OpenRA
public const int MaxRange = 50;
static List<CVec>[] TilesByDistance = InitTilesByDistance(MaxRange);
public static CPos ClampToWorld(this World world, CPos xy)
{
var r = world.Map.Bounds;
return xy.Clamp(new Rectangle(r.X,r.Y,r.Width-1, r.Height-1));
}
public static CPos ChooseRandomEdgeCell(this World w)
{
var isX = w.SharedRandom.Next(2) == 0;

View File

@@ -50,7 +50,7 @@ namespace OpenRA.Mods.RA.Air
if (order.OrderString == "Move")
{
var cell = self.World.ClampToWorld(order.TargetLocation);
var cell = self.World.Map.Clamp(order.TargetLocation);
var t = Target.FromCell(cell);
self.SetTargetLine(t, Color.Green);

View File

@@ -52,7 +52,7 @@ namespace OpenRA.Mods.RA.Air
{
UnReserve();
var cell = self.World.ClampToWorld(order.TargetLocation);
var cell = self.World.Map.Clamp(order.TargetLocation);
var t = Target.FromCell(cell);
self.SetTargetLine(t, Color.Green);
self.CancelActivity();

View File

@@ -69,8 +69,8 @@ namespace OpenRA.Mods.RA.Buildings
if (buildingTraits.Contains<BibInfo>() && !(buildingTraits.Get<BibInfo>().HasMinibib))
buildingMaxBounds += new CVec(0, 1);
var scanStart = world.ClampToWorld(topLeft - new CVec(Adjacent, Adjacent));
var scanEnd = world.ClampToWorld(topLeft + buildingMaxBounds + new CVec(Adjacent, Adjacent));
var scanStart = world.Map.Clamp(topLeft - new CVec(Adjacent, Adjacent));
var scanEnd = world.Map.Clamp(topLeft + buildingMaxBounds + new CVec(Adjacent, Adjacent));
var nearnessCandidates = new List<CPos>();

View File

@@ -385,7 +385,7 @@ namespace OpenRA.Mods.RA.Move
public void ResolveOrder(Actor self, Order order)
{
if (order.OrderString == "Move")
PerformMove(self, self.World.ClampToWorld(order.TargetLocation),
PerformMove(self, self.World.Map.Clamp(order.TargetLocation),
order.Queued && !self.IsIdle);
if (order.OrderString == "Stop")