From ec15aa5ee4349d5f092ab9f2b4b4b9c5a16b951c Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Mon, 8 Jul 2013 21:06:30 +1200 Subject: [PATCH] Restore radar enable/disable sounds. --- OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs | 7 ++++++- OpenRA.Mods.RA/Widgets/Logic/IngameChromeLogic.cs | 5 +++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs b/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs index df979a5ff1..12f6995fa0 100644 --- a/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs +++ b/OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs @@ -102,7 +102,8 @@ namespace OpenRA.Mods.Cnc.Widgets.Logic playerWidgets.Get("OPTIONS_BUTTON").OnClick = OptionsClicked; - bool radarEnabled = false; + var radarEnabled = false; + var cachedRadarEnabled = false; sidebarRoot.Get("RADAR_MINIMAP").IsEnabled = () => radarEnabled; var sidebarTicker = playerWidgets.Get("SIDEBAR_TICKER"); @@ -112,6 +113,10 @@ namespace OpenRA.Mods.Cnc.Widgets.Logic radarEnabled = world.ActorsWithTrait() .Any(a => a.Actor.Owner == world.LocalPlayer && a.Trait.IsActive); + if (radarEnabled != cachedRadarEnabled) + Sound.PlayNotification(null, "Sounds", (radarEnabled ? "RadarUp" : "RadarDown"), null); + cachedRadarEnabled = radarEnabled; + // Switch to observer mode after win/loss if (world.LocalPlayer.WinState != WinState.Undefined) Game.RunAfterTick(() => diff --git a/OpenRA.Mods.RA/Widgets/Logic/IngameChromeLogic.cs b/OpenRA.Mods.RA/Widgets/Logic/IngameChromeLogic.cs index f5992b2efd..e8a1743cea 100644 --- a/OpenRA.Mods.RA/Widgets/Logic/IngameChromeLogic.cs +++ b/OpenRA.Mods.RA/Widgets/Logic/IngameChromeLogic.cs @@ -135,6 +135,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic return Color.LimeGreen; }; + var cachedRadarActive = false; var sidebarTicker = playerWidgets.Get("SIDEBAR_TICKER"); sidebarTicker.OnTick = () => { @@ -142,6 +143,10 @@ namespace OpenRA.Mods.RA.Widgets.Logic radarActive = world.ActorsWithTrait() .Any(a => a.Actor.Owner == world.LocalPlayer && a.Trait.IsActive); + if (radarActive != cachedRadarActive) + Sound.PlayNotification(null, "Sounds", (radarActive ? "RadarUp" : "RadarDown"), null); + cachedRadarActive = radarActive; + // Switch to observer mode after win/loss if (world.LocalPlayer.WinState != WinState.Undefined) Game.RunAfterTick(() =>