using Content.Shared.Storage; using Content.Shared.Storage.Components; using Robust.Client.GameObjects; namespace Content.Client.Storage.Visualizers; public sealed class StorageFillVisualizerSystem : VisualizerSystem { protected override void OnAppearanceChange(EntityUid uid, StorageFillVisualizerComponent component, ref AppearanceChangeEvent args) { if (args.Sprite == null) return; if (!AppearanceSystem.TryGetData(uid, StorageFillVisuals.FillLevel, out var level, args.Component)) return; var state = $"{component.FillBaseName}-{level}"; SpriteSystem.LayerSetRsiState((uid, args.Sprite), StorageFillLayers.Fill, state); } }