Improve construction logs (#13146)

This commit is contained in:
Chief-Engineer
2023-01-20 10:17:57 -06:00
committed by GitHub
parent c2444fd35d
commit 6f58f5a36c
4 changed files with 15 additions and 2 deletions

View File

@@ -1,9 +1,11 @@
using System.Linq; using System.Linq;
using Content.Server.Administration.Logs;
using Content.Server.AME.Components; using Content.Server.AME.Components;
using Content.Server.Power.Components; using Content.Server.Power.Components;
using Content.Server.Hands.Components; using Content.Server.Hands.Components;
using Content.Server.Popups; using Content.Server.Popups;
using Content.Server.Tools; using Content.Server.Tools;
using Content.Shared.Database;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Popups; using Content.Shared.Popups;
using Robust.Shared.Map; using Robust.Shared.Map;
@@ -19,6 +21,7 @@ namespace Content.Server.AME
[Dependency] private readonly IMapManager _mapManager = default!; [Dependency] private readonly IMapManager _mapManager = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!; [Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly ToolSystem _toolSystem = default!; [Dependency] private readonly ToolSystem _toolSystem = default!;
[Dependency] private readonly IAdminLogManager _adminLogger = default!;
private float _accumulatedFrameTime; private float _accumulatedFrameTime;
private const float UpdateCooldown = 10f; private const float UpdateCooldown = 10f;
@@ -104,6 +107,8 @@ namespace Content.Server.AME
var ent = EntityManager.SpawnEntity("AMEShielding", mapGrid.GridTileToLocal(snapPos)); 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); SoundSystem.Play(component.UnwrapSound.GetSound(), Filter.Pvs(uid), uid);
EntityManager.QueueDeleteEntity(uid); EntityManager.QueueDeleteEntity(uid);

View File

@@ -490,7 +490,7 @@ namespace Content.Server.Construction
EntityManager.GetComponent<TransformComponent>(structure).Anchored = wasAnchored; EntityManager.GetComponent<TransformComponent>(structure).Anchored = wasAnchored;
RaiseNetworkEvent(new AckStructureConstructionMessage(ev.Ack)); 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(); Cleanup();
} }
} }

View File

@@ -280,6 +280,8 @@ namespace Content.Server.Construction
// TODO: Sanity checks. // TODO: Sanity checks.
user = interactUsing.User;
// If this step's DoAfter was cancelled, we just fail the interaction. // If this step's DoAfter was cancelled, we just fail the interaction.
if (doAfterState == DoAfterState.Cancelled) if (doAfterState == DoAfterState.Cancelled)
return HandleResult.False; return HandleResult.False;

View File

@@ -1,5 +1,7 @@
using Content.Server.Administration.Logs;
using Content.Server.Power.Components; using Content.Server.Power.Components;
using Content.Server.Stack; using Content.Server.Stack;
using Content.Shared.Database;
using Content.Shared.Interaction; using Content.Shared.Interaction;
using Content.Shared.Maps; using Content.Shared.Maps;
using Content.Shared.Stacks; using Content.Shared.Stacks;
@@ -9,6 +11,8 @@ namespace Content.Server.Power.EntitySystems;
public sealed partial class CableSystem public sealed partial class CableSystem
{ {
[Dependency] private readonly IAdminLogManager _adminLogger = default!;
private void InitializeCablePlacer() private void InitializeCablePlacer()
{ {
SubscribeLocalEvent<CablePlacerComponent, AfterInteractEvent>(OnCablePlacerAfterInteract); SubscribeLocalEvent<CablePlacerComponent, AfterInteractEvent>(OnCablePlacerAfterInteract);
@@ -38,7 +42,9 @@ public sealed partial class CableSystem
if (TryComp<StackComponent>(component.Owner, out var stack) && !_stack.Use(component.Owner, 1, stack)) if (TryComp<StackComponent>(component.Owner, out var stack) && !_stack.Use(component.Owner, 1, stack))
return; 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; args.Handled = true;
} }
} }