]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Cleanup warnings in `ApcVisualizerSystem` (#37396)
authorTayrtahn <tayrtahn@gmail.com>
Mon, 12 May 2025 23:53:11 +0000 (19:53 -0400)
committerGitHub <noreply@github.com>
Mon, 12 May 2025 23:53:11 +0000 (16:53 -0700)
Content.Client/Power/APC/ApcVisualizerSystem.cs

index 67540e7239c63a39af2c59bcf71628e77e431c77..1bb7fa5363331604186b5599e8e6992fa2aa469f 100644 (file)
@@ -1,5 +1,4 @@
 using Content.Shared.APC;
-using JetBrains.Annotations;
 using Robust.Client.GameObjects;
 
 namespace Content.Client.Power.APC;
@@ -7,6 +6,7 @@ namespace Content.Client.Power.APC;
 public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
 {
     [Dependency] private readonly SharedPointLightSystem _lights = default!;
+    [Dependency] private readonly SpriteSystem _sprite = default!;
 
     protected override void OnAppearanceChange(EntityUid uid, ApcVisualsComponent comp, ref AppearanceChangeEvent args)
     {
@@ -14,38 +14,38 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
             return;
 
         // get the mapped layer index of the first lock layer and the first channel layer
-        var lockIndicatorOverlayStart = args.Sprite.LayerMapGet(ApcVisualLayers.InterfaceLock);
-        var channelIndicatorOverlayStart = args.Sprite.LayerMapGet(ApcVisualLayers.Equipment);
+        var lockIndicatorOverlayStart = _sprite.LayerMapGet((uid, args.Sprite), ApcVisualLayers.InterfaceLock);
+        var channelIndicatorOverlayStart = _sprite.LayerMapGet((uid, args.Sprite), ApcVisualLayers.Equipment);
 
         // Handle APC screen overlay:
-        if(!AppearanceSystem.TryGetData<ApcChargeState>(uid, ApcVisuals.ChargeState, out var chargeState, args.Component))
+        if (!AppearanceSystem.TryGetData<ApcChargeState>(uid, ApcVisuals.ChargeState, out var chargeState, args.Component))
             chargeState = ApcChargeState.Lack;
 
         if (chargeState >= 0 && chargeState < ApcChargeState.NumStates)
         {
-            args.Sprite.LayerSetState(ApcVisualLayers.ChargeState, $"{comp.ScreenPrefix}-{comp.ScreenSuffixes[(sbyte)chargeState]}");
+            _sprite.LayerSetRsiState((uid, args.Sprite), ApcVisualLayers.ChargeState, $"{comp.ScreenPrefix}-{comp.ScreenSuffixes[(sbyte)chargeState]}");
 
             // LockState does nothing currently. The backend doesn't exist.
             if (AppearanceSystem.TryGetData<byte>(uid, ApcVisuals.LockState, out var lockStates, args.Component))
             {
-                for(var i = 0; i < comp.LockIndicators; ++i)
+                for (var i = 0; i < comp.LockIndicators; ++i)
                 {
-                    var layer = ((byte)lockIndicatorOverlayStart + i);
-                    sbyte lockState = (sbyte)((lockStates >> (i << (sbyte)ApcLockState.LogWidth)) & (sbyte)ApcLockState.All);
-                    args.Sprite.LayerSetState(layer, $"{comp.LockPrefix}{i}-{comp.LockSuffixes[lockState]}");
-                    args.Sprite.LayerSetVisible(layer, true);
+                    var layer = (byte)lockIndicatorOverlayStart + i;
+                    var lockState = (sbyte)((lockStates >> (i << (sbyte)ApcLockState.LogWidth)) & (sbyte)ApcLockState.All);
+                    _sprite.LayerSetRsiState((uid, args.Sprite), layer, $"{comp.LockPrefix}{i}-{comp.LockSuffixes[lockState]}");
+                    _sprite.LayerSetVisible((uid, args.Sprite), layer, true);
                 }
             }
 
             // ChannelState does nothing currently. The backend doesn't exist.
             if (AppearanceSystem.TryGetData<byte>(uid, ApcVisuals.ChannelState, out var channelStates, args.Component))
             {
-                for(var i = 0; i < comp.ChannelIndicators; ++i)
+                for (var i = 0; i < comp.ChannelIndicators; ++i)
                 {
-                    var layer = ((byte)channelIndicatorOverlayStart + i);
-                    sbyte channelState = (sbyte)((channelStates >> (i << (sbyte)ApcChannelState.LogWidth)) & (sbyte)ApcChannelState.All);
-                    args.Sprite.LayerSetState(layer, $"{comp.ChannelPrefix}{i}-{comp.ChannelSuffixes[channelState]}");
-                    args.Sprite.LayerSetVisible(layer, true);
+                    var layer = (byte)channelIndicatorOverlayStart + i;
+                    var channelState = (sbyte)((channelStates >> (i << (sbyte)ApcChannelState.LogWidth)) & (sbyte)ApcChannelState.All);
+                    _sprite.LayerSetRsiState((uid, args.Sprite), layer, $"{comp.ChannelPrefix}{i}-{comp.ChannelSuffixes[channelState]}");
+                    _sprite.LayerSetVisible((uid, args.Sprite), layer, true);
                 }
             }
 
@@ -57,16 +57,16 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
         else
         {
             /// Overrides all of the lock and channel indicators.
-            args.Sprite.LayerSetState(ApcVisualLayers.ChargeState, comp.EmaggedScreenState);
-            for(var i = 0; i < comp.LockIndicators; ++i)
+            _sprite.LayerSetRsiState((uid, args.Sprite), ApcVisualLayers.ChargeState, comp.EmaggedScreenState);
+            for (var i = 0; i < comp.LockIndicators; ++i)
             {
-                var layer = ((byte)lockIndicatorOverlayStart + i);
-                args.Sprite.LayerSetVisible(layer, false);
+                var layer = (byte)lockIndicatorOverlayStart + i;
+                _sprite.LayerSetVisible((uid, args.Sprite), layer, false);
             }
-            for(var i = 0; i < comp.ChannelIndicators; ++i)
+            for (var i = 0; i < comp.ChannelIndicators; ++i)
             {
-                var layer = ((byte)channelIndicatorOverlayStart + i);
-                args.Sprite.LayerSetVisible(layer, false);
+                var layer = (byte)channelIndicatorOverlayStart + i;
+                _sprite.LayerSetVisible((uid, args.Sprite), layer, false);
             }
 
             if (TryComp<PointLightComponent>(uid, out var light))
@@ -77,7 +77,7 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
     }
 }
 
-enum ApcVisualLayers : byte
+public enum ApcVisualLayers : byte
 {
     /// <summary>
     /// The sprite layer used for the interface lock indicator light overlay.