laser puzzle platform and elevated platform module
This commit is contained in:
@@ -93,35 +93,14 @@ namespace EscapeRoomEngine.Engine.Runtime.Utilities
|
||||
var sizeMinusOne = size - Vector2Int.one;
|
||||
var spaceSize = space.rrPlacement.size;
|
||||
|
||||
foreach (var o in OrientationExtensions.EveryOrientation())
|
||||
{
|
||||
Range x;
|
||||
Range z;
|
||||
|
||||
switch (o)
|
||||
{
|
||||
case Orientation.North:
|
||||
x = new Range(0, spaceSize.x - sizeMinusOne.x);
|
||||
z = new Range(0, spaceSize.y - sizeMinusOne.y);
|
||||
break;
|
||||
case Orientation.East:
|
||||
x = new Range(0, spaceSize.x - sizeMinusOne.y);
|
||||
z = new Range(sizeMinusOne.x, spaceSize.y);
|
||||
break;
|
||||
case Orientation.South:
|
||||
x = new Range(sizeMinusOne.x, spaceSize.x);
|
||||
z = new Range(sizeMinusOne.y, spaceSize.y);
|
||||
break;
|
||||
case Orientation.West:
|
||||
x = new Range(sizeMinusOne.y, spaceSize.x);
|
||||
z = new Range(0, spaceSize.y - sizeMinusOne.x);
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
|
||||
placements.AddRange(ConstrainedPlacements(o, size, x, z));
|
||||
}
|
||||
placements.AddRange(ConstrainedPlacements(Orientation.North, size,
|
||||
new Range(0, spaceSize.x - sizeMinusOne.x), new Range(0, spaceSize.y - sizeMinusOne.y)));
|
||||
placements.AddRange(ConstrainedPlacements(Orientation.East, size,
|
||||
new Range(0, spaceSize.x - sizeMinusOne.y), new Range(sizeMinusOne.x, spaceSize.y)));
|
||||
placements.AddRange(ConstrainedPlacements(Orientation.South, size,
|
||||
new Range(sizeMinusOne.x, spaceSize.x), new Range(sizeMinusOne.y, spaceSize.y)));
|
||||
placements.AddRange(ConstrainedPlacements(Orientation.West, size,
|
||||
new Range(sizeMinusOne.y, spaceSize.x), new Range(0, spaceSize.y - sizeMinusOne.x)));
|
||||
|
||||
return placements;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user