diff --git a/Content.IntegrationTests/Tests/Announcers/AnnouncerAudioTest.cs b/Content.IntegrationTests/Tests/Announcers/AnnouncerAudioTest.cs new file mode 100644 index 0000000000..87e8caf6ec --- /dev/null +++ b/Content.IntegrationTests/Tests/Announcers/AnnouncerAudioTest.cs @@ -0,0 +1,76 @@ +using System.Collections.Generic; +using System.Linq; +using Content.Server.Announcements.Systems; +using Content.Server.StationEvents; +using Content.Shared.Announcements.Prototypes; +using Robust.Client.ResourceManagement; +using Robust.Shared.GameObjects; +using Robust.Shared.IoC.Exceptions; +using Robust.Shared.Localization; +using Robust.Shared.Prototypes; +using Serilog; + +namespace Content.IntegrationTests.Tests.Announcers; + +/// +/// Checks if every station event using the announcerSystem has a valid audio file associated with it +/// +[TestFixture] +[TestOf(typeof(AnnouncerPrototype))] +public sealed class AnnouncerAudioTest +{ + /// + [Test] + public async Task TestEventSounds() + { + await using var pair = await PoolManager.GetServerClient(new PoolSettings { Connected = true }); + var server = pair.Server; + var client = pair.Client; + + var entSysMan = server.ResolveDependency(); + var proto = server.ResolveDependency(); + var cache = client.ResolveDependency(); + var announcer = entSysMan.GetEntitySystem(); + var events = entSysMan.GetEntitySystem(); + + await server.WaitAssertion(() => + { + var succeeded = true; + var why = new List(); + + foreach (var announcerProto in proto.EnumeratePrototypes().OrderBy(a => a.ID)) + { + foreach (var ev in events.AllEvents()) + { + if (ev.Value.StartAnnouncement) + { + var announcementId = announcer.GetAnnouncementId(ev.Key.ID); + var path = announcer.GetAnnouncementPath(announcementId, announcerProto); + + if (!cache.ContentFileExists(path)) + { + succeeded = false; + why.Add($"\"{announcerProto.ID}\", \"{announcementId}\": \"{path}\""); + } + } + + if (ev.Value.EndAnnouncement) + { + var announcementId = announcer.GetAnnouncementId(ev.Key.ID, true); + var path = announcer.GetAnnouncementPath(announcementId, announcerProto); + + if (!cache.ContentFileExists(path)) + { + succeeded = false; + why.Add($"\"{announcerProto.ID}\", \"{announcementId}\": \"{path}\""); + } + } + } + } + + Assert.That(succeeded, Is.True, $"The following announcements do not have a valid announcement audio:\n {string.Join("\n ", why)}"); + }); + + await pair.CleanReturnAsync(); + } +} diff --git a/Content.IntegrationTests/Tests/Announcers/AnnouncerFallbackTest.cs b/Content.IntegrationTests/Tests/Announcers/AnnouncerFallbackTest.cs index ac0a23b09f..948f40e790 100644 --- a/Content.IntegrationTests/Tests/Announcers/AnnouncerFallbackTest.cs +++ b/Content.IntegrationTests/Tests/Announcers/AnnouncerFallbackTest.cs @@ -5,15 +5,17 @@ using Robust.Shared.Prototypes; namespace Content.IntegrationTests.Tests.Announcers; +/// +/// Checks if every announcer has a fallback announcement +/// [TestFixture] [TestOf(typeof(AnnouncerPrototype))] -public sealed class AnnouncerPrototypeTests +public sealed class AnnouncerPrototypeTest { + /// [Test] public async Task TestAnnouncerFallbacks() { - // Checks if every announcer has a fallback announcement - await using var pair = await PoolManager.GetServerClient(); var server = pair.Server; @@ -24,13 +26,13 @@ public sealed class AnnouncerPrototypeTests var success = true; var why = new List(); - foreach (var announcer in prototype.EnumeratePrototypes()) + foreach (var announcer in prototype.EnumeratePrototypes().OrderBy(a => a.ID)) { - if (announcer.Announcements.All(a => a.ID.ToLower() != "fallback")) - { - success = false; - why.Add(announcer.ID); - } + if (announcer.Announcements.Any(a => a.ID.ToLower() == "fallback")) + continue; + + success = false; + why.Add(announcer.ID); } Assert.That(success, Is.True, $"The following announcers do not have a fallback announcement:\n {string.Join("\n ", why)}"); diff --git a/Content.IntegrationTests/Tests/Announcers/AnnouncerLocalizationTest.cs b/Content.IntegrationTests/Tests/Announcers/AnnouncerLocalizationTest.cs index 74e14475bc..c9ac18bc68 100644 --- a/Content.IntegrationTests/Tests/Announcers/AnnouncerLocalizationTest.cs +++ b/Content.IntegrationTests/Tests/Announcers/AnnouncerLocalizationTest.cs @@ -1,28 +1,33 @@ using System.Collections.Generic; +using System.Linq; using Content.Server.Announcements.Systems; using Content.Server.StationEvents; using Content.Shared.Announcements.Prototypes; using Robust.Shared.GameObjects; using Robust.Shared.Localization; +using Robust.Shared.Prototypes; namespace Content.IntegrationTests.Tests.Announcers; +/// +/// Checks if every station event wanting the announcerSystem to send messages has a localization string +/// If an event doesn't have startAnnouncement or endAnnouncement set to true +/// it will be expected for that system to handle the announcements if it wants them +/// [TestFixture] [TestOf(typeof(AnnouncerPrototype))] public sealed class AnnouncerLocalizationTest { + /// [Test] public async Task TestEventLocalization() { - // Checks if every station event wanting the announcerSystem to send messages has a localization string - // If an event doesn't have startAnnouncement or endAnnouncement set to true - // it will be expected for that system to handle the announcements if it wants them - await using var pair = await PoolManager.GetServerClient(); var server = pair.Server; var locale = server.ResolveDependency(); var entSysMan = server.ResolveDependency(); + var proto = server.ResolveDependency(); var announcer = entSysMan.GetEntitySystem(); var events = entSysMan.GetEntitySystem(); @@ -31,29 +36,34 @@ public sealed class AnnouncerLocalizationTest var succeeded = true; var why = new List(); - foreach (var ev in events.AllEvents()) + foreach (var announcerProto in proto.EnumeratePrototypes().OrderBy(a => a.ID)) { - if (ev.Value.StartAnnouncement) + foreach (var ev in events.AllEvents()) { - var announcementId = announcer.GetAnnouncementId(ev.Key.ID); - var eventLocaleString = announcer.GetEventLocaleString(announcementId); - - if (locale.GetString(eventLocaleString) == eventLocaleString) + if (ev.Value.StartAnnouncement) { - succeeded = false; - why.Add($"\"{announcementId}\": \"{eventLocaleString}\""); + var announcementId = announcer.GetAnnouncementId(ev.Key.ID); + var eventLocaleString = announcer.GetAnnouncementMessage(announcementId, announcerProto.ID) + ?? announcer.GetEventLocaleString(announcementId); + + if (locale.GetString(eventLocaleString) == eventLocaleString) + { + succeeded = false; + why.Add($"\"{announcerProto.ID}\", \"{announcementId}\": \"{eventLocaleString}\""); + } } - } - if (ev.Value.EndAnnouncement) - { - var announcementId = announcer.GetAnnouncementId(ev.Key.ID, true); - var eventLocaleString = announcer.GetEventLocaleString(announcementId); - - if (locale.GetString(eventLocaleString) == eventLocaleString) + if (ev.Value.EndAnnouncement) { - succeeded = false; - why.Add($"\"{announcementId}\": \"{eventLocaleString}\""); + var announcementId = announcer.GetAnnouncementId(ev.Key.ID, true); + var eventLocaleString = announcer.GetAnnouncementMessage(announcementId, announcerProto.ID) + ?? announcer.GetEventLocaleString(announcementId); + + if (locale.GetString(eventLocaleString) == eventLocaleString) + { + succeeded = false; + why.Add($"\"{announcerProto.ID}\", \"{announcementId}\": \"{eventLocaleString}\""); + } } } } diff --git a/Content.Server/Announcements/Systems/AnnouncerSystem.Announce.cs b/Content.Server/Announcements/Systems/AnnouncerSystem.Announce.cs index d705b86384..3342bc9aef 100644 --- a/Content.Server/Announcements/Systems/AnnouncerSystem.Announce.cs +++ b/Content.Server/Announcements/Systems/AnnouncerSystem.Announce.cs @@ -59,8 +59,8 @@ public sealed partial class AnnouncerSystem sender ??= Loc.GetString($"announcer-{announcerOverride?.ID ?? Announcer.ID}-name"); // If the announcement has a message override, use that instead of the message parameter - if (GetAnnouncementMessage(announcementId, announcerOverride?.ID ?? Announcer.ID, localeArgs) is { } announcementMessage) - locale = announcementMessage; + if (GetAnnouncementMessage(announcementId, announcerOverride?.ID ?? Announcer.ID) is { } announcementMessage) + locale = Loc.GetString(announcementMessage, localeArgs); else locale = Loc.GetString(locale, localeArgs); diff --git a/Content.Shared/Announcements/Systems/SharedAnnouncerSystem.cs b/Content.Shared/Announcements/Systems/SharedAnnouncerSystem.cs index c29513285e..5e02b602d0 100644 --- a/Content.Shared/Announcements/Systems/SharedAnnouncerSystem.cs +++ b/Content.Shared/Announcements/Systems/SharedAnnouncerSystem.cs @@ -92,7 +92,7 @@ public abstract class SharedAnnouncerSystem : EntitySystem announcer.Announcements.First(a => a.ID == "fallback"); // Return the announcer.BaseAudioParams if the announcementType doesn't have an override - return announcementType.AudioParams ?? announcer.BaseAudioParams ?? null; // For some reason the formatter doesn't warn me about "?? null" being redundant, so it stays + return announcementType.AudioParams ?? announcer.BaseAudioParams ?? null; // For some reason the formatter doesn't warn me about "?? null" being redundant, so it stays for the funnies } /// @@ -117,9 +117,7 @@ public abstract class SharedAnnouncerSystem : EntitySystem /// /// ID of the announcement from the announcer to get information from /// ID of the announcer to get information from - /// Locale arguments to pass to the overwritten announcement - public string? GetAnnouncementMessage(string announcementId, string announcerId, - params (string, object)[] localeArgs) + public string? GetAnnouncementMessage(string announcementId, string announcerId) { if (!_proto.TryIndex(announcerId, out var announcer)) return null; @@ -130,7 +128,7 @@ public abstract class SharedAnnouncerSystem : EntitySystem announcer.Announcements.First(a => a.ID == "fallback"); // Return the announcementType.MessageOverride if it exists, otherwise return null - return announcementType.MessageOverride != null ? Loc.GetString(announcementType.MessageOverride, localeArgs) : null; + return announcementType.MessageOverride != null ? announcementType.MessageOverride : null; } /// diff --git a/Resources/Audio/Announcements/Intern/aliens.ogg b/Resources/Audio/Announcements/Intern/aliens.ogg deleted file mode 100644 index 9dd3c07697..0000000000 Binary files a/Resources/Audio/Announcements/Intern/aliens.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/animes.ogg b/Resources/Audio/Announcements/Intern/animes.ogg deleted file mode 100644 index 36102c3e60..0000000000 Binary files a/Resources/Audio/Announcements/Intern/animes.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce.ogg b/Resources/Audio/Announcements/Intern/announce.ogg deleted file mode 100644 index 0ee0f36d56..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/1.ogg b/Resources/Audio/Announcements/Intern/announce/1.ogg deleted file mode 100644 index c4d182bc8c..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/1.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/10.ogg b/Resources/Audio/Announcements/Intern/announce/10.ogg deleted file mode 100644 index 7380ccdeef..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/10.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/11.ogg b/Resources/Audio/Announcements/Intern/announce/11.ogg deleted file mode 100644 index ca548dcc20..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/11.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/12.ogg b/Resources/Audio/Announcements/Intern/announce/12.ogg deleted file mode 100644 index 8d71419798..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/12.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/13.ogg b/Resources/Audio/Announcements/Intern/announce/13.ogg deleted file mode 100644 index 128c7aa424..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/13.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/14.ogg b/Resources/Audio/Announcements/Intern/announce/14.ogg deleted file mode 100644 index 81d54101be..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/14.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/2.ogg b/Resources/Audio/Announcements/Intern/announce/2.ogg deleted file mode 100644 index a2ef615d56..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/2.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/3.ogg b/Resources/Audio/Announcements/Intern/announce/3.ogg deleted file mode 100644 index 51613ff036..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/3.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/4.ogg b/Resources/Audio/Announcements/Intern/announce/4.ogg deleted file mode 100644 index 874536ca72..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/4.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/5.ogg b/Resources/Audio/Announcements/Intern/announce/5.ogg deleted file mode 100644 index 0af0d28ce1..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/5.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/6.ogg b/Resources/Audio/Announcements/Intern/announce/6.ogg deleted file mode 100644 index a65006a8c0..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/6.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/7.ogg b/Resources/Audio/Announcements/Intern/announce/7.ogg deleted file mode 100644 index 4a1d3f013a..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/7.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/8.ogg b/Resources/Audio/Announcements/Intern/announce/8.ogg deleted file mode 100644 index 83ca80f493..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/8.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/announce/9.ogg b/Resources/Audio/Announcements/Intern/announce/9.ogg deleted file mode 100644 index 3c0c45b25d..0000000000 Binary files a/Resources/Audio/Announcements/Intern/announce/9.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/anomaly.ogg b/Resources/Audio/Announcements/Intern/anomaly.ogg deleted file mode 100644 index 9bed8eae3a..0000000000 Binary files a/Resources/Audio/Announcements/Intern/anomaly.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/commandreport/1.ogg b/Resources/Audio/Announcements/Intern/commandreport/1.ogg deleted file mode 100644 index e3108b13d1..0000000000 Binary files a/Resources/Audio/Announcements/Intern/commandreport/1.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/commandreport/2.ogg b/Resources/Audio/Announcements/Intern/commandreport/2.ogg deleted file mode 100644 index cd67500426..0000000000 Binary files a/Resources/Audio/Announcements/Intern/commandreport/2.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/commandreport/3.ogg b/Resources/Audio/Announcements/Intern/commandreport/3.ogg deleted file mode 100644 index 94241c5ba5..0000000000 Binary files a/Resources/Audio/Announcements/Intern/commandreport/3.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/intercept.ogg b/Resources/Audio/Announcements/Intern/intercept.ogg deleted file mode 100644 index a87274abd9..0000000000 Binary files a/Resources/Audio/Announcements/Intern/intercept.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/ionstorm.ogg b/Resources/Audio/Announcements/Intern/ionstorm.ogg deleted file mode 100644 index 9e7b5c6b23..0000000000 Binary files a/Resources/Audio/Announcements/Intern/ionstorm.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/meteors.ogg b/Resources/Audio/Announcements/Intern/meteors.ogg deleted file mode 100644 index c68c4bd8cc..0000000000 Binary files a/Resources/Audio/Announcements/Intern/meteors.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/newai.ogg b/Resources/Audio/Announcements/Intern/newai.ogg deleted file mode 100644 index c40b099020..0000000000 Binary files a/Resources/Audio/Announcements/Intern/newai.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/outbreak7.ogg b/Resources/Audio/Announcements/Intern/outbreak7.ogg deleted file mode 100644 index 297a1bbe8d..0000000000 Binary files a/Resources/Audio/Announcements/Intern/outbreak7.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/poweroff.ogg b/Resources/Audio/Announcements/Intern/poweroff.ogg deleted file mode 100644 index 4b71053653..0000000000 Binary files a/Resources/Audio/Announcements/Intern/poweroff.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/poweron.ogg b/Resources/Audio/Announcements/Intern/poweron.ogg deleted file mode 100644 index 509cd398e6..0000000000 Binary files a/Resources/Audio/Announcements/Intern/poweron.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/radiation.ogg b/Resources/Audio/Announcements/Intern/radiation.ogg deleted file mode 100644 index 08db53ebfd..0000000000 Binary files a/Resources/Audio/Announcements/Intern/radiation.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/shuttlecalled.ogg b/Resources/Audio/Announcements/Intern/shuttlecalled.ogg deleted file mode 100644 index c903367cdf..0000000000 Binary files a/Resources/Audio/Announcements/Intern/shuttlecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/shuttledock.ogg b/Resources/Audio/Announcements/Intern/shuttledock.ogg deleted file mode 100644 index 9f6ccd1a93..0000000000 Binary files a/Resources/Audio/Announcements/Intern/shuttledock.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/shuttlerecalled.ogg b/Resources/Audio/Announcements/Intern/shuttlerecalled.ogg deleted file mode 100644 index e259a79f35..0000000000 Binary files a/Resources/Audio/Announcements/Intern/shuttlerecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/welcome/1.ogg b/Resources/Audio/Announcements/Intern/welcome/1.ogg deleted file mode 100644 index 758f1967e0..0000000000 Binary files a/Resources/Audio/Announcements/Intern/welcome/1.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/welcome/2.ogg b/Resources/Audio/Announcements/Intern/welcome/2.ogg deleted file mode 100644 index c2e72be510..0000000000 Binary files a/Resources/Audio/Announcements/Intern/welcome/2.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/welcome/3.ogg b/Resources/Audio/Announcements/Intern/welcome/3.ogg deleted file mode 100644 index 004f57371d..0000000000 Binary files a/Resources/Audio/Announcements/Intern/welcome/3.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/welcome/4.ogg b/Resources/Audio/Announcements/Intern/welcome/4.ogg deleted file mode 100644 index c4e1f7667c..0000000000 Binary files a/Resources/Audio/Announcements/Intern/welcome/4.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/welcome/5.ogg b/Resources/Audio/Announcements/Intern/welcome/5.ogg deleted file mode 100644 index 641b8208a4..0000000000 Binary files a/Resources/Audio/Announcements/Intern/welcome/5.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/Intern/welcome/6.ogg b/Resources/Audio/Announcements/Intern/welcome/6.ogg deleted file mode 100644 index b0fc38237f..0000000000 Binary files a/Resources/Audio/Announcements/Intern/welcome/6.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/aliens.ogg b/Resources/Audio/Announcements/MedBot/aliens.ogg deleted file mode 100644 index 57fa70c3ca..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/aliens.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/animes.ogg b/Resources/Audio/Announcements/MedBot/animes.ogg deleted file mode 100644 index 7615a744a6..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/animes.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/announce.ogg b/Resources/Audio/Announcements/MedBot/announce.ogg deleted file mode 100644 index 0ee0f36d56..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/announce.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/anomaly.ogg b/Resources/Audio/Announcements/MedBot/anomaly.ogg deleted file mode 100644 index d710999e1e..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/anomaly.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/attention.ogg b/Resources/Audio/Announcements/MedBot/attention.ogg deleted file mode 100644 index d4d5a27085..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/attention.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/commandreport.ogg b/Resources/Audio/Announcements/MedBot/commandreport.ogg deleted file mode 100644 index 4e5c2e1d1f..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/commandreport.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/fallback.ogg b/Resources/Audio/Announcements/MedBot/fallback.ogg deleted file mode 100644 index d4d5a27085..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/fallback.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/intercept.ogg b/Resources/Audio/Announcements/MedBot/intercept.ogg deleted file mode 100644 index c59d0455c1..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/intercept.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/ionstorm.ogg b/Resources/Audio/Announcements/MedBot/ionstorm.ogg deleted file mode 100644 index 15aeac9f7f..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/ionstorm.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/meteors.ogg b/Resources/Audio/Announcements/MedBot/meteors.ogg deleted file mode 100644 index 91208cae12..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/meteors.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/newai.ogg b/Resources/Audio/Announcements/MedBot/newai.ogg deleted file mode 100644 index c40b099020..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/newai.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/outbreak7.ogg b/Resources/Audio/Announcements/MedBot/outbreak7.ogg deleted file mode 100644 index 1fc542534d..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/outbreak7.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/poweroff.ogg b/Resources/Audio/Announcements/MedBot/poweroff.ogg deleted file mode 100644 index 875df35002..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/poweroff.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/poweron.ogg b/Resources/Audio/Announcements/MedBot/poweron.ogg deleted file mode 100644 index 4b1605b1c7..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/poweron.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/radiation.ogg b/Resources/Audio/Announcements/MedBot/radiation.ogg deleted file mode 100644 index 5c48830b5f..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/radiation.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/shuttlecalled.ogg b/Resources/Audio/Announcements/MedBot/shuttlecalled.ogg deleted file mode 100644 index a775567abe..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/shuttlecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/shuttledock.ogg b/Resources/Audio/Announcements/MedBot/shuttledock.ogg deleted file mode 100644 index 933928db06..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/shuttledock.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/shuttlerecalled.ogg b/Resources/Audio/Announcements/MedBot/shuttlerecalled.ogg deleted file mode 100644 index 53b622576d..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/shuttlerecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/MedBot/welcome.ogg b/Resources/Audio/Announcements/MedBot/welcome.ogg deleted file mode 100644 index f9a698fd08..0000000000 Binary files a/Resources/Audio/Announcements/MedBot/welcome.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/announce.ogg b/Resources/Audio/Announcements/NEIL/announce.ogg deleted file mode 100644 index 0ee0f36d56..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/announce.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/attention.ogg b/Resources/Audio/Announcements/NEIL/attention.ogg deleted file mode 100644 index 310fad3ef6..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/attention.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_blue.ogg b/Resources/Audio/Announcements/NEIL/code_blue.ogg deleted file mode 100644 index 48d9c6548b..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_blue.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_delta.ogg b/Resources/Audio/Announcements/NEIL/code_delta.ogg deleted file mode 100644 index 7082671915..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_delta.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_epsilon.ogg b/Resources/Audio/Announcements/NEIL/code_epsilon.ogg deleted file mode 100644 index a8db858b1a..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_epsilon.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_gamma.ogg b/Resources/Audio/Announcements/NEIL/code_gamma.ogg deleted file mode 100644 index 3351acc2e0..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_gamma.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_green.ogg b/Resources/Audio/Announcements/NEIL/code_green.ogg deleted file mode 100644 index 3c0031833b..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_green.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_red.ogg b/Resources/Audio/Announcements/NEIL/code_red.ogg deleted file mode 100644 index 209eb36ba1..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_red.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_violet.ogg b/Resources/Audio/Announcements/NEIL/code_violet.ogg deleted file mode 100644 index c1681c1edb..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_violet.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_white.ogg b/Resources/Audio/Announcements/NEIL/code_white.ogg deleted file mode 100644 index 24c942dfcb..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_white.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/code_yellow.ogg b/Resources/Audio/Announcements/NEIL/code_yellow.ogg deleted file mode 100644 index 9139446d2b..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/code_yellow.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/fallback.ogg b/Resources/Audio/Announcements/NEIL/fallback.ogg deleted file mode 100644 index 310fad3ef6..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/fallback.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/kudzu.ogg b/Resources/Audio/Announcements/NEIL/kudzu.ogg deleted file mode 100644 index 4ddd2f636b..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/kudzu.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/meteors.ogg b/Resources/Audio/Announcements/NEIL/meteors.ogg deleted file mode 100644 index cf52544174..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/meteors.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/newai.ogg b/Resources/Audio/Announcements/NEIL/newai.ogg deleted file mode 100644 index 35aba34564..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/newai.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/outbreak7.ogg b/Resources/Audio/Announcements/NEIL/outbreak7.ogg deleted file mode 100644 index 9106796012..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/outbreak7.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/poweroff.ogg b/Resources/Audio/Announcements/NEIL/poweroff.ogg deleted file mode 100644 index 7d7a43825f..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/poweroff.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/poweron.ogg b/Resources/Audio/Announcements/NEIL/poweron.ogg deleted file mode 100644 index 961b50a503..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/poweron.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/radiation.ogg b/Resources/Audio/Announcements/NEIL/radiation.ogg deleted file mode 100644 index 3ea2928c1d..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/radiation.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/shuttlecalled.ogg b/Resources/Audio/Announcements/NEIL/shuttlecalled.ogg deleted file mode 100644 index 482bf13319..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/shuttlecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/shuttledock.ogg b/Resources/Audio/Announcements/NEIL/shuttledock.ogg deleted file mode 100644 index 0615536555..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/shuttledock.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/shuttlerecalled.ogg b/Resources/Audio/Announcements/NEIL/shuttlerecalled.ogg deleted file mode 100644 index 5a198ca5fe..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/shuttlerecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/welcome.ogg b/Resources/Audio/Announcements/NEIL/welcome.ogg deleted file mode 100644 index 00c8991276..0000000000 Binary files a/Resources/Audio/Announcements/NEIL/welcome.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/aliens.ogg b/Resources/Audio/Announcements/VoxFem/aliens.ogg deleted file mode 100644 index f7d1746247..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/aliens.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/announce.ogg b/Resources/Audio/Announcements/VoxFem/announce.ogg deleted file mode 100644 index 0ee0f36d56..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/announce.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/anomaly.ogg b/Resources/Audio/Announcements/VoxFem/anomaly.ogg deleted file mode 100644 index 7680726f15..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/anomaly.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/attention.ogg b/Resources/Audio/Announcements/VoxFem/attention.ogg deleted file mode 100644 index 912be4425e..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/attention.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/commandreport.ogg b/Resources/Audio/Announcements/VoxFem/commandreport.ogg deleted file mode 100644 index 82e4ca425d..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/commandreport.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/fallback.ogg b/Resources/Audio/Announcements/VoxFem/fallback.ogg deleted file mode 100644 index 912be4425e..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/fallback.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/ionstorm.ogg b/Resources/Audio/Announcements/VoxFem/ionstorm.ogg deleted file mode 100644 index 9f39713de6..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/ionstorm.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/meteors.ogg b/Resources/Audio/Announcements/VoxFem/meteors.ogg deleted file mode 100644 index 8f1c3aeacb..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/meteors.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/newai.ogg b/Resources/Audio/Announcements/VoxFem/newai.ogg deleted file mode 100644 index 35aba34564..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/newai.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/outbreak7.ogg b/Resources/Audio/Announcements/VoxFem/outbreak7.ogg deleted file mode 100644 index f21d4fca44..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/outbreak7.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/poweroff.ogg b/Resources/Audio/Announcements/VoxFem/poweroff.ogg deleted file mode 100644 index 1c6377c9d8..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/poweroff.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/poweron.ogg b/Resources/Audio/Announcements/VoxFem/poweron.ogg deleted file mode 100644 index 9d18797d6e..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/poweron.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/radiation.ogg b/Resources/Audio/Announcements/VoxFem/radiation.ogg deleted file mode 100644 index ef395af310..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/radiation.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/shuttlecalled.ogg b/Resources/Audio/Announcements/VoxFem/shuttlecalled.ogg deleted file mode 100644 index 716bf82465..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/shuttlecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/shuttledock.ogg b/Resources/Audio/Announcements/VoxFem/shuttledock.ogg deleted file mode 100644 index 0f70bebc75..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/shuttledock.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/shuttlerecalled.ogg b/Resources/Audio/Announcements/VoxFem/shuttlerecalled.ogg deleted file mode 100644 index 5f6db404b8..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/shuttlerecalled.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/VoxFem/welcome.ogg b/Resources/Audio/Announcements/VoxFem/welcome.ogg deleted file mode 100644 index c7013dcbd5..0000000000 Binary files a/Resources/Audio/Announcements/VoxFem/welcome.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/bureaucraticerror.ogg b/Resources/Audio/Announcers/NEIL/events/bureaucratic_error.ogg similarity index 100% rename from Resources/Audio/Announcements/NEIL/bureaucraticerror.ogg rename to Resources/Audio/Announcers/NEIL/events/bureaucratic_error.ogg diff --git a/Resources/Audio/Announcers/NEIL/events/bureaucraticerror.ogg b/Resources/Audio/Announcers/NEIL/events/bureaucraticerror.ogg deleted file mode 100644 index 0cbafcf627..0000000000 Binary files a/Resources/Audio/Announcers/NEIL/events/bureaucraticerror.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/gasleak.ogg b/Resources/Audio/Announcers/NEIL/events/gas_leak.ogg similarity index 100% rename from Resources/Audio/Announcements/NEIL/gasleak.ogg rename to Resources/Audio/Announcers/NEIL/events/gas_leak.ogg diff --git a/Resources/Audio/Announcers/NEIL/events/gasleak.ogg b/Resources/Audio/Announcers/NEIL/events/gasleak.ogg deleted file mode 100644 index 8efffd02c4..0000000000 Binary files a/Resources/Audio/Announcers/NEIL/events/gasleak.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/noosphericstorm.ogg b/Resources/Audio/Announcers/NEIL/events/noospheric_storm.ogg similarity index 100% rename from Resources/Audio/Announcements/NEIL/noosphericstorm.ogg rename to Resources/Audio/Announcers/NEIL/events/noospheric_storm.ogg diff --git a/Resources/Audio/Announcers/NEIL/events/noosphericstorm.ogg b/Resources/Audio/Announcers/NEIL/events/noosphericstorm.ogg deleted file mode 100644 index 47b52f7cb4..0000000000 Binary files a/Resources/Audio/Announcers/NEIL/events/noosphericstorm.ogg and /dev/null differ diff --git a/Resources/Audio/Announcements/NEIL/ventclog.ogg b/Resources/Audio/Announcers/NEIL/events/vent_clog.ogg similarity index 100% rename from Resources/Audio/Announcements/NEIL/ventclog.ogg rename to Resources/Audio/Announcers/NEIL/events/vent_clog.ogg diff --git a/Resources/Audio/Announcers/NEIL/events/ventclog.ogg b/Resources/Audio/Announcers/NEIL/events/ventclog.ogg deleted file mode 100644 index 90350f0e35..0000000000 Binary files a/Resources/Audio/Announcers/NEIL/events/ventclog.ogg and /dev/null differ