Construction spring cleaning (#36163)
* Construction warnings cleanup * More construction warnings cleanup * Fix failing ITests - Remove unnecessary casts and dodgy anchroing implementation. * Checking anchor status before setting * Reusing shared system call * inlining anchor setting
This commit is contained in:
@@ -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<ContainerSystem>();
|
||||
var containerSys = entityManager.EntitySysManager.GetEntitySystem<SharedContainerSystem>();
|
||||
var handSys = entityManager.EntitySysManager.GetEntitySystem<HandsSystem>();
|
||||
var transformSys = entityManager.EntitySysManager.GetEntitySystem<TransformSystem>();
|
||||
|
||||
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))
|
||||
{
|
||||
|
||||
@@ -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<SharedContainerSystem>();
|
||||
|
||||
if (!entityManager.TryGetComponent(uid, out ContainerManagerComponent? containerManager) ||
|
||||
!containerSys.TryGetContainer(uid, Container, out var container, containerManager)) return;
|
||||
|
||||
var containerSys = entityManager.EntitySysManager.GetEntitySystem<ContainerSystem>();
|
||||
var handSys = entityManager.EntitySysManager.GetEntitySystem<HandsSystem>();
|
||||
|
||||
HandsComponent? hands = null;
|
||||
|
||||
@@ -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<TransformComponent>(uid);
|
||||
transform.Anchored = Value;
|
||||
|
||||
if (transform.Anchored == Value)
|
||||
return;
|
||||
|
||||
var sys = entityManager.System<SharedTransformSystem>();
|
||||
|
||||
if (Value)
|
||||
sys.AnchorEntity(uid, transform);
|
||||
else
|
||||
sys.Unanchor(uid, transform);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace Content.Server.Construction.Completions
|
||||
var transform = entityManager.GetComponent<TransformComponent>(uid);
|
||||
|
||||
if (!transform.Anchored)
|
||||
transform.Coordinates = transform.Coordinates.SnapToGrid(entityManager);
|
||||
entityManager.System<SharedTransformSystem>().SetCoordinates(uid, transform.Coordinates.SnapToGrid(entityManager));
|
||||
|
||||
if (SouthRotation)
|
||||
{
|
||||
|
||||
@@ -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<IEntityManager>().TryGetComponent(entity, out ContainerManagerComponent? containerManager) ||
|
||||
!containerManager.TryGetContainer(Container, out var container)) return false;
|
||||
var entityManager = IoCManager.Resolve<IEntityManager>();
|
||||
if (!entityManager.TryGetComponent(entity, out ContainerManagerComponent? containerManager) ||
|
||||
!entityManager.System<SharedContainerSystem>().TryGetContainer(entity, Container, out var container, containerManager)) return false;
|
||||
|
||||
if (container.ContainedEntities.Count == 0)
|
||||
return false;
|
||||
|
||||
@@ -32,8 +32,9 @@ namespace Content.Server.Construction.Conditions
|
||||
|
||||
var entity = args.Examined;
|
||||
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(entity, out ContainerManagerComponent? containerManager) ||
|
||||
!containerManager.TryGetContainer(Container, out var container)) return false;
|
||||
var entityManager = IoCManager.Resolve<IEntityManager>();
|
||||
if (!entityManager.TryGetComponent(entity, out ContainerManagerComponent? containerManager) ||
|
||||
!entityManager.System<SharedContainerSystem>().TryGetContainer(entity, Container, out var container, containerManager)) return false;
|
||||
|
||||
if (container.ContainedEntities.Count != 0)
|
||||
return false;
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -24,7 +24,7 @@ namespace Content.Shared.Construction.Conditions
|
||||
// get blueprint and user position
|
||||
var transformSystem = entManager.System<SharedTransformSystem>();
|
||||
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);
|
||||
|
||||
@@ -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<MapGridComponent>(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<MapGridComponent>(gridUid, out var grid))
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user