Files
crystall-punk-14/Content.Client/Visualizer/RollerbedVisualizer.cs

32 lines
974 B
C#
Raw Normal View History

2022-08-08 13:44:16 +12:00
using Content.Shared.Buckle.Components;
using JetBrains.Annotations;
2021-12-29 15:57:20 +11:00
using Robust.Client.GameObjects;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Visualizer
{
[UsedImplicitly]
public sealed class RollerbedVisualizer : AppearanceVisualizer
{
[DataField("key")]
private string _key = default!;
[Obsolete("Subscribe to AppearanceChangeEvent instead.")]
2021-12-29 15:57:20 +11:00
public override void OnChangeData(AppearanceComponent appearance)
{
base.OnChangeData(appearance);
var entManager = IoCManager.Resolve<IEntityManager>();
if (!entManager.TryGetComponent(appearance.Owner, out SpriteComponent? sprite)) return;
2022-08-08 13:44:16 +12:00
if (appearance.TryGetData(StrapVisuals.State, out bool strapped) && strapped)
2021-12-29 15:57:20 +11:00
{
sprite.LayerSetState(0, $"{_key}_buckled");
}
}
}
}