diff --git a/OpenRA.Mods.RA/Widgets/RadarBinWidget.cs b/OpenRA.Mods.RA/Widgets/RadarBinWidget.cs index e31ad67778..95c9a59132 100755 --- a/OpenRA.Mods.RA/Widgets/RadarBinWidget.cs +++ b/OpenRA.Mods.RA/Widgets/RadarBinWidget.cs @@ -173,7 +173,11 @@ namespace OpenRA.Mods.RA.Widgets .Any(a => a.Actor.Owner == world.LocalPlayer && a.Trait.IsActive); if (hasRadarNew != hasRadar) + { radarAnimating = true; + var eva = Rules.Info["world"].Traits.Get(); + Sound.Play(hasRadarNew ? eva.RadarUp : eva.RadarDown); + } hasRadar = hasRadarNew; @@ -207,16 +211,6 @@ namespace OpenRA.Mods.RA.Widgets if (radarAnimationFrame <= radarSlideAnimationLength) radarOrigin = float2.Lerp(radarClosedOrigin, radarOpenOrigin, radarAnimationFrame * 1.0f / radarSlideAnimationLength); - var eva = Rules.Info["world"].Traits.Get(); - - // Play radar-on sound at the start of the activate anim (open) - if (radarAnimationFrame == radarSlideAnimationLength && hasRadar) - Sound.Play(eva.RadarUp); - - // Play radar-on sound at the start of the activate anim (close) - if (radarAnimationFrame == radarSlideAnimationLength + radarActivateAnimationLength - 1 && !hasRadar) - Sound.Play(eva.RadarDown); - // Minimap height if (radarAnimationFrame >= radarSlideAnimationLength) radarMinimapHeight = float2.Lerp(0, 1, (radarAnimationFrame - radarSlideAnimationLength) * 1.0f / radarActivateAnimationLength);