Files
tbd-station-14/Content.Client/Administration/Systems/HeadstandSystem.cs
Tayrtahn 312f81d58a Move HeadstandComponent to Shared (#39377)
Move HeadstandComponent to Shared
2025-08-04 23:00:19 +02:00

36 lines
1.0 KiB
C#

using Content.Shared.Administration.Components;
using Robust.Client.GameObjects;
namespace Content.Client.Administration.Systems;
public sealed class HeadstandSystem : EntitySystem
{
public override void Initialize()
{
SubscribeLocalEvent<HeadstandComponent, ComponentStartup>(OnHeadstandAdded);
SubscribeLocalEvent<HeadstandComponent, ComponentShutdown>(OnHeadstandRemoved);
}
private void OnHeadstandAdded(EntityUid uid, HeadstandComponent component, ComponentStartup args)
{
if (!TryComp<SpriteComponent>(uid, out var sprite))
return;
foreach (var layer in sprite.AllLayers)
{
layer.Rotation += Angle.FromDegrees(180.0f);
}
}
private void OnHeadstandRemoved(EntityUid uid, HeadstandComponent component, ComponentShutdown args)
{
if (!TryComp<SpriteComponent>(uid, out var sprite))
return;
foreach (var layer in sprite.AllLayers)
{
layer.Rotation -= Angle.FromDegrees(180.0f);
}
}
}