]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Add more anomaly logs (#16178)
authorLeon Friedrich <60421075+ElectroJr@users.noreply.github.com>
Sat, 6 May 2023 17:56:18 +0000 (05:56 +1200)
committerGitHub <noreply@github.com>
Sat, 6 May 2023 17:56:18 +0000 (03:56 +1000)
Content.Shared/Anomaly/SharedAnomalySystem.cs

index 3ff305f7fe9221986c461fd05bf62dd7c09911ed..1ca13acc964290725e1fea0b31cd5b7a009346a8 100644 (file)
@@ -24,6 +24,8 @@ public abstract class SharedAnomalySystem : EntitySystem
     [Dependency] protected readonly SharedAppearanceSystem Appearance = default!;
     [Dependency] protected readonly SharedPopupSystem Popup = default!;
 
+    private ISawmill _sawmill = default!;
+
     public override void Initialize()
     {
         base.Initialize();
@@ -38,6 +40,8 @@ public abstract class SharedAnomalySystem : EntitySystem
         SubscribeLocalEvent<AnomalyComponent, EntityUnpausedEvent>(OnAnomalyUnpause);
         SubscribeLocalEvent<AnomalyPulsingComponent, EntityUnpausedEvent>(OnPulsingUnpause);
         SubscribeLocalEvent<AnomalySupercriticalComponent, EntityUnpausedEvent>(OnSupercriticalUnpause);
+
+        _sawmill = Logger.GetSawmill("anomaly");
     }
 
     private void OnAnomalyGetState(EntityUid uid, AnomalyComponent component, ref ComponentGetState args)
@@ -126,6 +130,8 @@ public abstract class SharedAnomalySystem : EntitySystem
         var variation = Random.NextFloat(-component.PulseVariation, component.PulseVariation) + 1;
         component.NextPulseTime = Timing.CurTime + GetPulseLength(component) * variation;
 
+        _sawmill.Info($"Performing anomaly pulse. Entity: {ToPrettyString(uid)}");
+
         // if we are above the growth threshold, then grow before the pulse
         if (component.Stability > component.GrowthThreshold)
         {
@@ -158,6 +164,7 @@ public abstract class SharedAnomalySystem : EntitySystem
             return;
 
         Log.Add(LogType.Anomaly, LogImpact.High, $"Anomaly {ToPrettyString(uid)} began to go supercritical.");
+        _sawmill.Info($"Anomaly is going supercritical. Entity: {ToPrettyString(uid)}");
 
         var super = EnsureComp<AnomalySupercriticalComponent>(uid);
         super.EndTime = Timing.CurTime + super.SupercriticalDuration;
@@ -182,6 +189,7 @@ public abstract class SharedAnomalySystem : EntitySystem
 
         Audio.PlayPvs(component.SupercriticalSound, uid);
 
+        _sawmill.Info($"Raising supercritical event. Entity: {ToPrettyString(uid)}");
         var ev = new AnomalySupercriticalEvent();
         RaiseLocalEvent(uid, ref ev);
 
@@ -196,14 +204,16 @@ public abstract class SharedAnomalySystem : EntitySystem
     /// <param name="supercritical">Whether or not the anomaly ended via supercritical event</param>
     public void EndAnomaly(EntityUid uid, AnomalyComponent? component = null, bool supercritical = false)
     {
+        // Logging before resolve, in case the anomaly has deleted itself.
+        _sawmill.Info($"Ending anomaly. Entity: {ToPrettyString(uid)}");
+        Log.Add(LogType.Anomaly, LogImpact.Extreme, $"Anomaly {ToPrettyString(uid)} went supercritical.");
+
         if (!Resolve(uid, ref component))
             return;
 
         var ev = new AnomalyShutdownEvent(uid, supercritical);
         RaiseLocalEvent(uid, ref ev, true);
 
-        Log.Add(LogType.Anomaly, LogImpact.Extreme, $"Anomaly {ToPrettyString(uid)} went supercritical.");
-
         if (Terminating(uid) || _net.IsClient)
             return;
         Del(uid);