using Content.Server.Temperature.Systems;
using Content.Shared.Temperature;
+using Robust.Shared.Audio;
namespace Content.Server.Temperature.Components;
/// </summary>
[DataField]
public EntityHeaterSetting Setting = EntityHeaterSetting.Off;
+
+ /// <summary>
+ /// An optional sound that plays when the setting is changed.
+ /// </summary>
+ [DataField]
+ public SoundPathSpecifier? SettingSound;
}
using Content.Shared.Popups;
using Content.Shared.Temperature;
using Content.Shared.Verbs;
+using Robust.Server.Audio;
namespace Content.Server.Temperature.Systems;
[Dependency] private readonly SharedAppearanceSystem _appearance = default!;
[Dependency] private readonly SharedPopupSystem _popup = default!;
[Dependency] private readonly TemperatureSystem _temperature = default!;
+ [Dependency] private readonly AudioSystem _audio = default!;
private readonly int SettingCount = Enum.GetValues(typeof(EntityHeaterSetting)).Length;
comp.Setting = setting;
power.Load = SettingPower(setting, comp.Power);
_appearance.SetData(uid, EntityHeaterVisuals.Setting, setting);
+ _audio.PlayPvs(comp.SettingSound, uid);
}
private float SettingPower(EntityHeaterSetting setting, float max)