using Content.Server.Power.Components; using Content.Server.Power.EntitySystems; using Content.Shared.Power; using Content.Shared.Sound; using Content.Shared.Sound.Components; namespace Content.Server.Sound; public sealed partial class SpamEmitSoundRequirePowerSystem : SharedSpamEmitSoundRequirePowerSystem { public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnPowerChanged); SubscribeLocalEvent(OnPowerSupply); } private void OnPowerChanged(Entity entity, ref PowerChangedEvent args) { if (TryComp(entity.Owner, out var comp)) { EmitSound.SetEnabled((entity, comp), args.Powered); } } private void OnPowerSupply(Entity entity, ref PowerNetBatterySupplyEvent args) { if (TryComp(entity.Owner, out var comp)) { EmitSound.SetEnabled((entity, comp), args.Supply); } } }