Merge MapGrid into MapGridComponent (#3468)

This commit is contained in:
metalgearsloth
2022-11-22 13:04:51 +11:00
committed by GitHub
parent 8dfc779611
commit 5e3a5a0d0c
56 changed files with 648 additions and 1194 deletions

View File

@@ -16,6 +16,7 @@ using Robust.Shared.Debugging;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Map;
using Robust.Shared.Map.Components;
using Robust.Shared.Physics;
using Robust.Shared.Physics.Dynamics;
using Robust.Shared.Physics.Systems;

View File

@@ -8,6 +8,7 @@ using Robust.Server.Physics;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Map;
using Robust.Shared.Map.Components;
using Robust.Shared.Maths;
using Robust.Shared.Physics;
using Robust.Shared.Prototypes;
@@ -44,9 +45,9 @@ namespace Robust.UnitTesting.Server.GameObjects.Components
";
private MapId MapA;
private IMapGrid GridA = default!;
private MapGridComponent GridA = default!;
private MapId MapB;
private IMapGrid GridB = default!;
private MapGridComponent GridB = default!;
private static readonly EntityCoordinates InitialPos = new(new EntityUid(1), (0, 0));

View File

@@ -259,9 +259,9 @@ namespace Robust.UnitTesting.Server
compFactory.RegisterClass<MetaDataComponent>();
compFactory.RegisterClass<TransformComponent>();
compFactory.RegisterClass<MapGridComponent>();
compFactory.RegisterClass<MapComponent>();
compFactory.RegisterClass<MapLightComponent>();
compFactory.RegisterClass<MapGridComponent>();
compFactory.RegisterClass<PhysicsComponent>();
compFactory.RegisterClass<JointComponent>();
compFactory.RegisterClass<BroadphaseComponent>();

View File

@@ -8,6 +8,7 @@ using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Log;
using Robust.Shared.Map;
using Robust.Shared.Map.Components;
using Robust.Shared.Network;
using Robust.Shared.Profiling;
using Robust.Shared.Reflection;

View File

@@ -3,6 +3,7 @@ using NUnit.Framework;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Map;
using Robust.Shared.Map.Components;
using Robust.Shared.Maths;
using Robust.Shared.Physics;
using Robust.Shared.Physics.Components;
@@ -24,8 +25,8 @@ namespace Robust.UnitTesting.Shared.Map
var physSystem = server.ResolveDependency<IEntitySystemManager>().GetEntitySystem<SharedPhysicsSystem>();
MapId mapId;
IMapGrid? gridId1 = null;
IMapGrid? gridId2 = null;
MapGridComponent? gridId1 = null;
MapGridComponent? gridId2 = null;
PhysicsComponent? physics1 = null;
PhysicsComponent? physics2 = null;
EntityUid? gridEnt1;

View File

@@ -23,7 +23,6 @@ namespace Robust.UnitTesting.Shared.Map
await server.WaitIdleAsync();
var entMan = server.ResolveDependency<IEntityManager>();
var mapMan = server.ResolveDependency<IMapManager>();
await server.WaitAssertion(() =>
@@ -69,7 +68,6 @@ namespace Robust.UnitTesting.Shared.Map
var mapId = mapMan.CreateMap();
var grid = mapMan.CreateGrid(mapId);
var gridEnt = grid.GridEntityId;
var gridInternal = (IMapGridInternal) grid;
/* Test for map chunk rotations */
var tile = new Tile(1);
@@ -82,30 +80,30 @@ namespace Robust.UnitTesting.Shared.Map
}
}
var chunks = gridInternal.GetMapChunks().Select(c => c.Value).ToList();
var chunks = grid.GetMapChunks().Select(c => c.Value).ToList();
Assert.That(chunks.Count, Is.EqualTo(1));
var chunk = chunks[0];
var aabb = gridInternal.CalcWorldAABB(chunk);
var aabb = grid.CalcWorldAABB(chunk);
var bounds = new Box2(new Vector2(0, 0), new Vector2(2, 10));
// With all cardinal directions these should align.
Assert.That(aabb, Is.EqualTo(bounds));
IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(gridEnt).LocalRotation = new Angle(Math.PI);
aabb = gridInternal.CalcWorldAABB(chunk);
aabb = grid.CalcWorldAABB(chunk);
bounds = new Box2(new Vector2(-2, -10), new Vector2(0, 0));
Assert.That(aabb.EqualsApprox(bounds), $"Expected bounds of {aabb} and got {bounds}");
IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(gridEnt).LocalRotation = new Angle(-Math.PI / 2);
aabb = gridInternal.CalcWorldAABB(chunk);
aabb = grid.CalcWorldAABB(chunk);
bounds = new Box2(new Vector2(0, -2), new Vector2(10, 0));
Assert.That(aabb.EqualsApprox(bounds), $"Expected bounds of {aabb} and got {bounds}");
IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(gridEnt).LocalRotation = new Angle(-Math.PI / 4);
aabb = gridInternal.CalcWorldAABB(chunk);
aabb = grid.CalcWorldAABB(chunk);
bounds = new Box2(new Vector2(0, -1.4142135f), new Vector2(8.485281f, 7.071068f));
Assert.That(aabb.EqualsApprox(bounds), $"Expected bounds of {aabb} and got {bounds}");

View File

@@ -6,13 +6,14 @@ using Robust.Server.Physics;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Map;
using Robust.Shared.Map.Components;
using Robust.Shared.Maths;
using Robust.Shared.Physics;
using Robust.UnitTesting.Server;
namespace Robust.UnitTesting.Shared.Map
{
[TestFixture, TestOf(typeof(MapGrid))]
[TestFixture, TestOf(typeof(MapGridComponent))]
sealed class MapGrid_Tests
{
private static ISimulation SimulationFactory()
@@ -30,7 +31,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
grid.SetTile(new Vector2i(-9, -1), new Tile(1, (TileRenderFlag)1, 1));
@@ -51,7 +52,7 @@ namespace Robust.UnitTesting.Shared.Map
var entMan = sim.Resolve<IEntityManager>();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
var gridXform = entMan.GetComponent<TransformComponent>(grid.GridEntityId);
gridXform.WorldPosition = new Vector2(3, 5);
@@ -77,7 +78,7 @@ namespace Robust.UnitTesting.Shared.Map
var entMan = sim.Resolve<IEntityManager>();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
var gridXform = entMan.GetComponent<TransformComponent>(grid.GridEntityId);
gridXform.WorldPosition = new Vector2(3, 5);
@@ -102,7 +103,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
var result = grid.GridTileToChunkIndices(new Vector2i(-9, -1));
@@ -118,7 +119,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
var result = grid.GridTileToLocal(new Vector2i(0, 0)).Position;
@@ -132,7 +133,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
var foundTile = grid.TryGetTileRef(new Vector2i(-9, -1), out var tileRef);
@@ -147,7 +148,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
grid.SetTile(new Vector2i(-9, -1), new Tile(1, (TileRenderFlag)1, 1));
@@ -165,7 +166,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
grid.SetTile(new Vector2i(19, 23), new Tile(1));
@@ -180,7 +181,7 @@ namespace Robust.UnitTesting.Shared.Map
var sim = SimulationFactory();
var mapMan = sim.Resolve<IMapManager>();
var mapId = mapMan.CreateMap();
var grid = (IMapGridInternal)mapMan.CreateGrid(mapId, 8);
var grid = mapMan.CreateGrid(mapId, 8);
grid.SetTile(new Vector2i(19, 23), new Tile(1));

View File

@@ -4,6 +4,7 @@ using Robust.Shared.Map;
using Robust.Shared.Maths;
using Robust.UnitTesting.Server;
using System.Management;
using Robust.Shared.Map.Components;
namespace Robust.UnitTesting.Shared.Map
{

View File

@@ -5,6 +5,7 @@ using Robust.Shared.Map;
using Robust.Shared.Maths;
using Robust.Shared.Physics.Components;
using System.Threading.Tasks;
using Robust.Shared.Map.Components;
namespace Robust.UnitTesting.Shared.Physics
{
@@ -41,7 +42,7 @@ namespace Robust.UnitTesting.Shared.Physics
var entManager = server.ResolveDependency<IEntityManager>();
var mapManager = server.ResolveDependency<IMapManager>();
IMapGrid grid = default!;
MapGridComponent grid = default!;
MapId mapId = default!;
PhysicsComponent entityOnePhysics = default!;
TransformComponent xform = default!;

View File

@@ -2,6 +2,7 @@ using System.Threading.Tasks;
using NUnit.Framework;
using Robust.Shared.GameObjects;
using Robust.Shared.Map;
using Robust.Shared.Map.Components;
using Robust.Shared.Maths;
using Robust.Shared.Physics;
using Robust.Shared.Physics.Components;
@@ -29,7 +30,7 @@ public sealed class GridDeletion_Test : RobustIntegrationTest
PhysicsComponent physics = default!;
IMapGrid grid = default!;
MapGridComponent grid = default!;
MapId mapId = default!;
await server.WaitAssertion(() =>