diff --git a/Content.Server/Construction/Completions/EmptyAllContainers.cs b/Content.Server/Construction/Completions/EmptyAllContainers.cs index 79de939387..3ed5cf373d 100644 --- a/Content.Server/Construction/Completions/EmptyAllContainers.cs +++ b/Content.Server/Construction/Completions/EmptyAllContainers.cs @@ -2,11 +2,8 @@ using Content.Server.Hands.Systems; using Content.Shared.Construction; using Content.Shared.Hands.Components; using JetBrains.Annotations; -using Robust.Server.Containers; using Robust.Server.GameObjects; using Robust.Shared.Containers; -using Robust.Shared.GameObjects; -using Robust.Shared.Map; namespace Content.Server.Construction.Completions { @@ -31,14 +28,14 @@ namespace Content.Server.Construction.Completions if (!entityManager.TryGetComponent(uid, out ContainerManagerComponent? containerManager)) return; - var containerSys = entityManager.EntitySysManager.GetEntitySystem(); + var containerSys = entityManager.EntitySysManager.GetEntitySystem(); var handSys = entityManager.EntitySysManager.GetEntitySystem(); var transformSys = entityManager.EntitySysManager.GetEntitySystem(); HandsComponent? hands = null; var pickup = Pickup && entityManager.TryGetComponent(userUid, out hands); - foreach (var container in containerManager.GetAllContainers()) + foreach (var container in containerSys.GetAllContainers(uid)) { foreach (var ent in containerSys.EmptyContainer(container, true, reparent: !pickup)) { diff --git a/Content.Server/Construction/Completions/EmptyContainer.cs b/Content.Server/Construction/Completions/EmptyContainer.cs index 21e36e7e14..6d26bb5da1 100644 --- a/Content.Server/Construction/Completions/EmptyContainer.cs +++ b/Content.Server/Construction/Completions/EmptyContainer.cs @@ -21,10 +21,11 @@ namespace Content.Server.Construction.Completions public void PerformAction(EntityUid uid, EntityUid? userUid, IEntityManager entityManager) { - if (!entityManager.TryGetComponent(uid, out ContainerManagerComponent? containerManager) || - !containerManager.TryGetContainer(Container, out var container)) return; + var containerSys = entityManager.EntitySysManager.GetEntitySystem(); + + if (!entityManager.TryGetComponent(uid, out ContainerManagerComponent? containerManager) || + !containerSys.TryGetContainer(uid, Container, out var container, containerManager)) return; - var containerSys = entityManager.EntitySysManager.GetEntitySystem(); var handSys = entityManager.EntitySysManager.GetEntitySystem(); HandsComponent? hands = null; diff --git a/Content.Server/Construction/Completions/SetAnchor.cs b/Content.Server/Construction/Completions/SetAnchor.cs index 989ecc99bd..cdecfa7c90 100644 --- a/Content.Server/Construction/Completions/SetAnchor.cs +++ b/Content.Server/Construction/Completions/SetAnchor.cs @@ -1,4 +1,4 @@ -using Content.Shared.Construction; +using Content.Shared.Construction; using JetBrains.Annotations; namespace Content.Server.Construction.Completions @@ -12,7 +12,17 @@ namespace Content.Server.Construction.Completions public void PerformAction(EntityUid uid, EntityUid? userUid, IEntityManager entityManager) { var transform = entityManager.GetComponent(uid); - transform.Anchored = Value; + + if (transform.Anchored == Value) + return; + + var sys = entityManager.System(); + + if (Value) + sys.AnchorEntity(uid, transform); + else + sys.Unanchor(uid, transform); + } } } diff --git a/Content.Server/Construction/Completions/SnapToGrid.cs b/Content.Server/Construction/Completions/SnapToGrid.cs index 47941108f5..f1c2f8d584 100644 --- a/Content.Server/Construction/Completions/SnapToGrid.cs +++ b/Content.Server/Construction/Completions/SnapToGrid.cs @@ -15,7 +15,7 @@ namespace Content.Server.Construction.Completions var transform = entityManager.GetComponent(uid); if (!transform.Anchored) - transform.Coordinates = transform.Coordinates.SnapToGrid(entityManager); + entityManager.System().SetCoordinates(uid, transform.Coordinates.SnapToGrid(entityManager)); if (SouthRotation) { diff --git a/Content.Server/Construction/Conditions/ContainerEmpty.cs b/Content.Server/Construction/Conditions/ContainerEmpty.cs index cc2b25d1ad..7f940f5b3e 100644 --- a/Content.Server/Construction/Conditions/ContainerEmpty.cs +++ b/Content.Server/Construction/Conditions/ContainerEmpty.cs @@ -1,4 +1,4 @@ -using Content.Shared.Construction; +using Content.Shared.Construction; using Content.Shared.Examine; using JetBrains.Annotations; using Robust.Server.Containers; @@ -39,8 +39,9 @@ namespace Content.Server.Construction.Conditions var entity = args.Examined; - if (!IoCManager.Resolve().TryGetComponent(entity, out ContainerManagerComponent? containerManager) || - !containerManager.TryGetContainer(Container, out var container)) return false; + var entityManager = IoCManager.Resolve(); + if (!entityManager.TryGetComponent(entity, out ContainerManagerComponent? containerManager) || + !entityManager.System().TryGetContainer(entity, Container, out var container, containerManager)) return false; if (container.ContainedEntities.Count == 0) return false; diff --git a/Content.Server/Construction/Conditions/ContainerNotEmpty.cs b/Content.Server/Construction/Conditions/ContainerNotEmpty.cs index c6e79434f4..cb7d2c98ee 100644 --- a/Content.Server/Construction/Conditions/ContainerNotEmpty.cs +++ b/Content.Server/Construction/Conditions/ContainerNotEmpty.cs @@ -32,8 +32,9 @@ namespace Content.Server.Construction.Conditions var entity = args.Examined; - if (!IoCManager.Resolve().TryGetComponent(entity, out ContainerManagerComponent? containerManager) || - !containerManager.TryGetContainer(Container, out var container)) return false; + var entityManager = IoCManager.Resolve(); + if (!entityManager.TryGetComponent(entity, out ContainerManagerComponent? containerManager) || + !entityManager.System().TryGetContainer(entity, Container, out var container, containerManager)) return false; if (container.ContainedEntities.Count != 0) return false; diff --git a/Content.Server/Construction/ConstructionSystem.Graph.cs b/Content.Server/Construction/ConstructionSystem.Graph.cs index 4c73cef703..0027b941f8 100644 --- a/Content.Server/Construction/ConstructionSystem.Graph.cs +++ b/Content.Server/Construction/ConstructionSystem.Graph.cs @@ -66,10 +66,10 @@ namespace Content.Server.Construction if (!Resolve(uid, ref construction, false)) return null; - if (construction.Node is not {} nodeIdentifier) + if (construction.Node is not { } nodeIdentifier) return null; - return GetCurrentGraph(uid, construction) is not {} graph ? null : GetNodeFromGraph(graph, nodeIdentifier); + return GetCurrentGraph(uid, construction) is not { } graph ? null : GetNodeFromGraph(graph, nodeIdentifier); } /// @@ -85,10 +85,10 @@ namespace Content.Server.Construction if (!Resolve(uid, ref construction, false)) return null; - if (construction.EdgeIndex is not {} edgeIndex) + if (construction.EdgeIndex is not { } edgeIndex) return null; - return GetCurrentNode(uid, construction) is not {} node ? null : GetEdgeFromNode(node, edgeIndex); + return GetCurrentNode(uid, construction) is not { } node ? null : GetEdgeFromNode(node, edgeIndex); } /// @@ -102,7 +102,7 @@ namespace Content.Server.Construction if (GetCurrentNode(uid, construction) is not { } node) return (null, null); - if (construction.EdgeIndex is not {} edgeIndex) + if (construction.EdgeIndex is not { } edgeIndex) return (node, null); return (node, GetEdgeFromNode(node, edgeIndex)); @@ -121,7 +121,7 @@ namespace Content.Server.Construction if (!Resolve(uid, ref construction, false)) return null; - if (GetCurrentEdge(uid, construction) is not {} edge) + if (GetCurrentEdge(uid, construction) is not { } edge) return null; return GetStepFromEdge(edge, construction.StepIndex); @@ -141,10 +141,10 @@ namespace Content.Server.Construction if (!Resolve(uid, ref construction)) return null; - if (construction.TargetNode is not {} targetNodeId) + if (construction.TargetNode is not { } targetNodeId) return null; - if (GetCurrentGraph(uid, construction) is not {} graph) + if (GetCurrentGraph(uid, construction) is not { } graph) return null; return GetNodeFromGraph(graph, targetNodeId); @@ -165,10 +165,10 @@ namespace Content.Server.Construction if (!Resolve(uid, ref construction)) return null; - if (construction.TargetEdgeIndex is not {} targetEdgeIndex) + if (construction.TargetEdgeIndex is not { } targetEdgeIndex) return null; - if (GetCurrentNode(uid, construction) is not {} node) + if (GetCurrentNode(uid, construction) is not { } node) return null; return GetEdgeFromNode(node, targetEdgeIndex); @@ -245,8 +245,8 @@ namespace Content.Server.Construction if (!Resolve(uid, ref construction)) return false; - if (GetCurrentGraph(uid, construction) is not {} graph - || GetNodeFromGraph(graph, id) is not {} node) + if (GetCurrentGraph(uid, construction) is not { } graph + || GetNodeFromGraph(graph, id) is not { } node) return false; var oldNode = construction.Node; @@ -257,11 +257,11 @@ namespace Content.Server.Construction $"{ToPrettyString(userUid.Value):player} changed {ToPrettyString(uid):entity}'s node from \"{oldNode}\" to \"{id}\""); // ChangeEntity will handle the pathfinding update. - if (node.Entity.GetId(uid, userUid, new(EntityManager)) is {} newEntity + if (node.Entity.GetId(uid, userUid, new(EntityManager)) is { } newEntity && ChangeEntity(uid, userUid, newEntity, construction) != null) return true; - if(performActions) + if (performActions) PerformActions(uid, userUid, node.Actions); // An action might have deleted the entity... Account for this. @@ -347,7 +347,7 @@ namespace Content.Server.Construction // Retain the target node if an entity change happens in response to deconstruction; // in that case, we must continue to move towards the start node. - if (construction.TargetNode is {} targetNode) + if (construction.TargetNode is { } targetNode) SetPathfindingTarget(newUid, targetNode, newConstruction); } @@ -358,7 +358,7 @@ namespace Content.Server.Construction } if (newConstruction.InteractionQueue.Count > 0 && _queuedUpdates.Add(newUid)) - _constructionUpdateQueue.Enqueue(newUid); + _constructionUpdateQueue.Enqueue(newUid); // Transform transferring. var newTransform = Transform(newUid); @@ -430,7 +430,7 @@ namespace Content.Server.Construction if (!PrototypeManager.TryIndex(graphId, out var graph)) return false; - if(GetNodeFromGraph(graph, nodeId) is not {}) + if (GetNodeFromGraph(graph, nodeId) is not { }) return false; construction.Graph = graphId; diff --git a/Content.Server/Construction/ConstructionSystem.Initial.cs b/Content.Server/Construction/ConstructionSystem.Initial.cs index 6cc430b74f..94bcc26bf8 100644 --- a/Content.Server/Construction/ConstructionSystem.Initial.cs +++ b/Content.Server/Construction/ConstructionSystem.Initial.cs @@ -478,7 +478,7 @@ namespace Content.Server.Construction return; } - var mapPos = location.ToMap(EntityManager, _transformSystem); + var mapPos = _transformSystem.ToMapCoordinates(location); var predicate = GetPredicate(constructionPrototype.CanBuildInImpassable, mapPos); if (!_interactionSystem.InRangeUnobstructed(user, mapPos, predicate: predicate)) diff --git a/Content.Shared/Construction/Conditions/WallmountCondition.cs b/Content.Shared/Construction/Conditions/WallmountCondition.cs index f32cc19eea..65fc6f59fa 100644 --- a/Content.Shared/Construction/Conditions/WallmountCondition.cs +++ b/Content.Shared/Construction/Conditions/WallmountCondition.cs @@ -24,7 +24,7 @@ namespace Content.Shared.Construction.Conditions // get blueprint and user position var transformSystem = entManager.System(); var userWorldPosition = transformSystem.GetWorldPosition(user); - var objWorldPosition = location.ToMap(entManager, transformSystem).Position; + var objWorldPosition = transformSystem.ToMapCoordinates(location).Position; // find direction from user to blueprint var userToObject = (objWorldPosition - userWorldPosition); diff --git a/Content.Shared/Construction/EntitySystems/AnchorableSystem.cs b/Content.Shared/Construction/EntitySystems/AnchorableSystem.cs index 9c3d6fc9fb..a291473b30 100644 --- a/Content.Shared/Construction/EntitySystems/AnchorableSystem.cs +++ b/Content.Shared/Construction/EntitySystems/AnchorableSystem.cs @@ -280,7 +280,7 @@ public sealed partial class AnchorableSystem : EntitySystem private bool TileFree(EntityCoordinates coordinates, PhysicsComponent anchorBody) { // Probably ignore CanCollide on the anchoring body? - var gridUid = coordinates.GetGridUid(EntityManager); + var gridUid = _transformSystem.GetGrid(coordinates); if (!TryComp(gridUid, out var grid)) return false; @@ -329,7 +329,7 @@ public sealed partial class AnchorableSystem : EntitySystem public bool AnyUnstackablesAnchoredAt(EntityCoordinates location) { - var gridUid = location.GetGridUid(EntityManager); + var gridUid = _transformSystem.GetGrid(location); if (!TryComp(gridUid, out var grid)) return false;