Files
OldThink/Content.Client/Storage/Visualizers/StorageFillVisualizerSystem.cs

24 lines
791 B
C#
Raw Normal View History

using Content.Shared.Storage;
2022-03-23 16:14:23 +03:00
using Content.Shared.Storage.Components;
using Robust.Client.GameObjects;
namespace Content.Client.Storage.Visualizers;
public sealed class StorageFillVisualizerSystem : VisualizerSystem<StorageFillVisualizerComponent>
{
protected override void OnAppearanceChange(EntityUid uid, StorageFillVisualizerComponent component, ref AppearanceChangeEvent args)
{
if (args.Sprite == null)
return;
2022-03-23 16:14:23 +03:00
if (!TryComp(uid, out SpriteComponent? sprite))
return;
if (!AppearanceSystem.TryGetData<int>(uid, StorageFillVisuals.FillLevel, out var level, args.Component))
2022-03-23 16:14:23 +03:00
return;
var state = $"{component.FillBaseName}-{level}";
args.Sprite.LayerSetState(StorageFillLayers.Fill, state);
2022-03-23 16:14:23 +03:00
}
}