Docking config changes (#16945)

* Docking config changes

- Should be more flexible with tight bounds.
- Arrivals should always go for the 4-way dock.
- Don't think it fixes Omega.

* weh

* Basic test
This commit is contained in:
metalgearsloth
2023-06-01 00:09:14 +10:00
committed by GitHub
parent 30a36b2fd5
commit 56371c3acb
5 changed files with 136 additions and 30 deletions

View File

@@ -559,18 +559,22 @@ we are just going to end this here to save a lot of time. This is the exception
public static async Task<TestMapData> CreateTestMap(PairTracker pairTracker)
{
var server = pairTracker.Pair.Server;
await server.WaitIdleAsync();
var settings = pairTracker.Pair.Settings;
var mapManager = server.ResolveDependency<IMapManager>();
var tileDefinitionManager = server.ResolveDependency<ITileDefinitionManager>();
if (settings.NoServer) throw new Exception("Cannot setup test map without server");
var mapData = new TestMapData();
await server.WaitPost(() =>
{
var mapManager = IoCManager.Resolve<IMapManager>();
mapData.MapId = mapManager.CreateMap();
mapData.MapUid = mapManager.GetMapEntityId(mapData.MapId);
mapData.MapGrid = mapManager.CreateGrid(mapData.MapId);
mapData.GridUid = mapData.MapGrid.Owner;
mapData.GridCoords = new EntityCoordinates(mapData.GridUid, 0, 0);
var tileDefinitionManager = IoCManager.Resolve<ITileDefinitionManager>();
var plating = tileDefinitionManager["Plating"];
var platingTile = new Tile(plating.TileId);
mapData.MapGrid.SetTile(mapData.GridCoords, platingTile);