diff --git a/Content.Server/Salvage/Expeditions/SalvageExpeditionComponent.cs b/Content.Server/Salvage/Expeditions/SalvageExpeditionComponent.cs index 843dc2a502..4f29d7e3f3 100644 --- a/Content.Server/Salvage/Expeditions/SalvageExpeditionComponent.cs +++ b/Content.Server/Salvage/Expeditions/SalvageExpeditionComponent.cs @@ -39,6 +39,15 @@ public sealed class SalvageExpeditionComponent : Component /// Countdown audio stream. /// public IPlayingAudioStream? Stream = null; + + /// + /// Sound that plays when the mission end is imminent. + /// + [ViewVariables(VVAccess.ReadWrite), DataField("sound")] + public SoundSpecifier Sound = new SoundPathSpecifier("/Audio/Misc/tension_session.ogg") + { + Params = AudioParams.Default.WithVolume(-15), + }; } public enum ExpeditionStage : byte diff --git a/Content.Server/Salvage/SalvageSystem.Runner.cs b/Content.Server/Salvage/SalvageSystem.Runner.cs index 9512908b69..f40ed4ed22 100644 --- a/Content.Server/Salvage/SalvageSystem.Runner.cs +++ b/Content.Server/Salvage/SalvageSystem.Runner.cs @@ -126,19 +126,19 @@ public sealed partial class SalvageSystem comp.Stage = ExpeditionStage.FinalCountdown; Announce(uid, Loc.GetString("salvage-expedition-announcement-countdown-seconds", ("duration", TimeSpan.FromSeconds(30).Seconds))); } + else if (comp.Stage < ExpeditionStage.MusicCountdown && remaining < TimeSpan.FromMinutes(2)) + { + // TODO: Some way to play audio attached to a map for players. + comp.Stream = _audio.PlayGlobal(comp.Sound, + Filter.BroadcastMap(Comp(uid).MapId), true); + comp.Stage = ExpeditionStage.MusicCountdown; + Announce(uid, Loc.GetString("salvage-expedition-announcement-countdown-minutes", ("duration", TimeSpan.FromMinutes(2).Minutes))); + } else if (comp.Stage < ExpeditionStage.Countdown && remaining < TimeSpan.FromMinutes(5)) { comp.Stage = ExpeditionStage.Countdown; Announce(uid, Loc.GetString("salvage-expedition-announcement-countdown-minutes", ("duration", TimeSpan.FromMinutes(5).Minutes))); } - else if (comp.Stage < ExpeditionStage.MusicCountdown && remaining < TimeSpan.FromMinutes(2)) - { - // TODO: Some way to play audio attached to a map for players. - comp.Stream = _audio.PlayGlobal(new SoundPathSpecifier("/Audio/Misc/salvage.ogg"), - Filter.BroadcastMap(Comp(uid).MapId), true, AudioParams.Default.WithVolume(-7)); - comp.Stage = ExpeditionStage.MusicCountdown; - Announce(uid, Loc.GetString("salvage-expedition-announcement-countdown-minutes", ("duration", TimeSpan.FromMinutes(2).Minutes))); - } // Auto-FTL out any shuttles else if (remaining < TimeSpan.FromSeconds(ShuttleSystem.DefaultStartupTime) + TimeSpan.FromSeconds(0.5)) { diff --git a/Resources/Audio/Misc/attributions.yml b/Resources/Audio/Misc/attributions.yml index 9753d6c126..8db3d9ea8d 100644 --- a/Resources/Audio/Misc/attributions.yml +++ b/Resources/Audio/Misc/attributions.yml @@ -3,7 +3,7 @@ copyright: "Taken from TG station." source: "https://github.com/tgstation/tgstation/commit/97945e7d08d1457ffc27e46526a48c0453cc95e4" -- files: ["salvage.ogg"] +- files: ["tension_session.ogg"] license: "CC-BY-3.0" - copyright: "Created by qwertyquerty / discord coconatsu#4342" - source: "https://www.example.com/wagoogus" # It was sent via DM what do you want + copyright: "Created by qwertyquerty" + source: "https://www.youtube.com/@qwertyquerty" diff --git a/Resources/Audio/Misc/salvage.ogg b/Resources/Audio/Misc/salvage.ogg deleted file mode 100644 index db5167bfc1..0000000000 Binary files a/Resources/Audio/Misc/salvage.ogg and /dev/null differ diff --git a/Resources/Audio/Misc/tension_session.ogg b/Resources/Audio/Misc/tension_session.ogg new file mode 100644 index 0000000000..1e112e4f26 Binary files /dev/null and b/Resources/Audio/Misc/tension_session.ogg differ