diff --git a/Content.Server/AME/AntimatterEngineSystem.cs b/Content.Server/AME/AntimatterEngineSystem.cs index 5b11a10f81..3a2bec9751 100644 --- a/Content.Server/AME/AntimatterEngineSystem.cs +++ b/Content.Server/AME/AntimatterEngineSystem.cs @@ -1,9 +1,11 @@ using System.Linq; +using Content.Server.Administration.Logs; using Content.Server.AME.Components; using Content.Server.Power.Components; using Content.Server.Hands.Components; using Content.Server.Popups; using Content.Server.Tools; +using Content.Shared.Database; using Content.Shared.Interaction; using Content.Shared.Popups; using Robust.Shared.Map; @@ -19,6 +21,7 @@ namespace Content.Server.AME [Dependency] private readonly IMapManager _mapManager = default!; [Dependency] private readonly PopupSystem _popupSystem = default!; [Dependency] private readonly ToolSystem _toolSystem = default!; + [Dependency] private readonly IAdminLogManager _adminLogger = default!; private float _accumulatedFrameTime; private const float UpdateCooldown = 10f; @@ -104,6 +107,8 @@ namespace Content.Server.AME var ent = EntityManager.SpawnEntity("AMEShielding", mapGrid.GridTileToLocal(snapPos)); + _adminLogger.Add(LogType.Construction, LogImpact.Low, $"{ToPrettyString(args.User):player} unpacked {ToPrettyString(ent)} at {Transform(ent).Coordinates} from {ToPrettyString(uid)}"); + SoundSystem.Play(component.UnwrapSound.GetSound(), Filter.Pvs(uid), uid); EntityManager.QueueDeleteEntity(uid); diff --git a/Content.Server/Construction/ConstructionSystem.Initial.cs b/Content.Server/Construction/ConstructionSystem.Initial.cs index 3510620fc5..721dd11fc7 100644 --- a/Content.Server/Construction/ConstructionSystem.Initial.cs +++ b/Content.Server/Construction/ConstructionSystem.Initial.cs @@ -490,7 +490,7 @@ namespace Content.Server.Construction EntityManager.GetComponent(structure).Anchored = wasAnchored; RaiseNetworkEvent(new AckStructureConstructionMessage(ev.Ack)); - _adminLogger.Add(LogType.Construction, LogImpact.Low, $"{ToPrettyString(user):player} has started construction on the ghost of a {ev.PrototypeName}"); + _adminLogger.Add(LogType.Construction, LogImpact.Low, $"{ToPrettyString(user):player} has turned a {ev.PrototypeName} construction ghost into {ToPrettyString(structure)} at {Transform(structure).Coordinates}"); Cleanup(); } } diff --git a/Content.Server/Construction/ConstructionSystem.Interactions.cs b/Content.Server/Construction/ConstructionSystem.Interactions.cs index 9898ad6efa..503303bf4b 100644 --- a/Content.Server/Construction/ConstructionSystem.Interactions.cs +++ b/Content.Server/Construction/ConstructionSystem.Interactions.cs @@ -280,6 +280,8 @@ namespace Content.Server.Construction // TODO: Sanity checks. + user = interactUsing.User; + // If this step's DoAfter was cancelled, we just fail the interaction. if (doAfterState == DoAfterState.Cancelled) return HandleResult.False; diff --git a/Content.Server/Power/EntitySystems/CableSystem.Placer.cs b/Content.Server/Power/EntitySystems/CableSystem.Placer.cs index fb8b9559b7..f4a38e7e65 100644 --- a/Content.Server/Power/EntitySystems/CableSystem.Placer.cs +++ b/Content.Server/Power/EntitySystems/CableSystem.Placer.cs @@ -1,5 +1,7 @@ +using Content.Server.Administration.Logs; using Content.Server.Power.Components; using Content.Server.Stack; +using Content.Shared.Database; using Content.Shared.Interaction; using Content.Shared.Maps; using Content.Shared.Stacks; @@ -9,6 +11,8 @@ namespace Content.Server.Power.EntitySystems; public sealed partial class CableSystem { + [Dependency] private readonly IAdminLogManager _adminLogger = default!; + private void InitializeCablePlacer() { SubscribeLocalEvent(OnCablePlacerAfterInteract); @@ -38,7 +42,9 @@ public sealed partial class CableSystem if (TryComp(component.Owner, out var stack) && !_stack.Use(component.Owner, 1, stack)) return; - EntityManager.SpawnEntity(component.CablePrototypeId, grid.GridTileToLocal(snapPos)); + var newCable = EntityManager.SpawnEntity(component.CablePrototypeId, grid.GridTileToLocal(snapPos)); + _adminLogger.Add(LogType.Construction, LogImpact.Low, + $"{ToPrettyString(args.User):player} placed {ToPrettyString(newCable):cable} at {Transform(newCable).Coordinates}"); args.Handled = true; } }