using Content.Client.DamageState;
using Content.Shared._Sunrise.Boss.Components;
using Content.Shared._Sunrise.Boss.Systems;
using Robust.Client.GameObjects;
namespace Content.Client._Sunrise.Boss.Systems;
///
public sealed class HellSpawnInvincibilitySystem : SharedHellSpawnInvincibilitySystem
{
///
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent(OnToggled);
}
private void OnToggled(Entity ent, ref HellSpawnInvincibilityToggledEvent args)
{
if (!TryComp(ent.Owner, out var appearanceComponent))
return;
if (!TryComp(ent.Owner, out var spriteComponent))
return;
if (!spriteComponent.LayerMapTryGet(DamageStateVisualLayers.Base, out var layerIdx))
return;
if (args.Enabled)
spriteComponent.LayerSetShader(layerIdx, "unshaded");
else
spriteComponent.LayerSetShader(layerIdx, null, null);
}
}