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); } }