Move ClampToWorld from WorldUtils to Map
This commit is contained in:
@@ -550,5 +550,11 @@ namespace OpenRA
|
|||||||
var tileSet = Rules.TileSets[Tileset];
|
var tileSet = Rules.TileSets[Tileset];
|
||||||
return tileSet[GetTerrainIndex(cell)];
|
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));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -88,12 +88,6 @@ namespace OpenRA
|
|||||||
public const int MaxRange = 50;
|
public const int MaxRange = 50;
|
||||||
static List<CVec>[] TilesByDistance = InitTilesByDistance(MaxRange);
|
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)
|
public static CPos ChooseRandomEdgeCell(this World w)
|
||||||
{
|
{
|
||||||
var isX = w.SharedRandom.Next(2) == 0;
|
var isX = w.SharedRandom.Next(2) == 0;
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ namespace OpenRA.Mods.RA.Air
|
|||||||
|
|
||||||
if (order.OrderString == "Move")
|
if (order.OrderString == "Move")
|
||||||
{
|
{
|
||||||
var cell = self.World.ClampToWorld(order.TargetLocation);
|
var cell = self.World.Map.Clamp(order.TargetLocation);
|
||||||
var t = Target.FromCell(cell);
|
var t = Target.FromCell(cell);
|
||||||
|
|
||||||
self.SetTargetLine(t, Color.Green);
|
self.SetTargetLine(t, Color.Green);
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ namespace OpenRA.Mods.RA.Air
|
|||||||
{
|
{
|
||||||
UnReserve();
|
UnReserve();
|
||||||
|
|
||||||
var cell = self.World.ClampToWorld(order.TargetLocation);
|
var cell = self.World.Map.Clamp(order.TargetLocation);
|
||||||
var t = Target.FromCell(cell);
|
var t = Target.FromCell(cell);
|
||||||
self.SetTargetLine(t, Color.Green);
|
self.SetTargetLine(t, Color.Green);
|
||||||
self.CancelActivity();
|
self.CancelActivity();
|
||||||
|
|||||||
@@ -69,8 +69,8 @@ namespace OpenRA.Mods.RA.Buildings
|
|||||||
if (buildingTraits.Contains<BibInfo>() && !(buildingTraits.Get<BibInfo>().HasMinibib))
|
if (buildingTraits.Contains<BibInfo>() && !(buildingTraits.Get<BibInfo>().HasMinibib))
|
||||||
buildingMaxBounds += new CVec(0, 1);
|
buildingMaxBounds += new CVec(0, 1);
|
||||||
|
|
||||||
var scanStart = world.ClampToWorld(topLeft - new CVec(Adjacent, Adjacent));
|
var scanStart = world.Map.Clamp(topLeft - new CVec(Adjacent, Adjacent));
|
||||||
var scanEnd = world.ClampToWorld(topLeft + buildingMaxBounds + new CVec(Adjacent, Adjacent));
|
var scanEnd = world.Map.Clamp(topLeft + buildingMaxBounds + new CVec(Adjacent, Adjacent));
|
||||||
|
|
||||||
var nearnessCandidates = new List<CPos>();
|
var nearnessCandidates = new List<CPos>();
|
||||||
|
|
||||||
|
|||||||
@@ -385,7 +385,7 @@ namespace OpenRA.Mods.RA.Move
|
|||||||
public void ResolveOrder(Actor self, Order order)
|
public void ResolveOrder(Actor self, Order order)
|
||||||
{
|
{
|
||||||
if (order.OrderString == "Move")
|
if (order.OrderString == "Move")
|
||||||
PerformMove(self, self.World.ClampToWorld(order.TargetLocation),
|
PerformMove(self, self.World.Map.Clamp(order.TargetLocation),
|
||||||
order.Queued && !self.IsIdle);
|
order.Queued && !self.IsIdle);
|
||||||
|
|
||||||
if (order.OrderString == "Stop")
|
if (order.OrderString == "Stop")
|
||||||
|
|||||||
Reference in New Issue
Block a user