From: Pieter-Jan Briers Date: Mon, 15 Jul 2024 14:55:05 +0000 (+0200) Subject: Fix invalid UI hover/click sounds breaking client (#30067) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=c0593fb32808de845d26f851d7c7b02953039039;p=space-station-14.git Fix invalid UI hover/click sounds breaking client (#30067) fixes #29561 --- diff --git a/Content.Client/Audio/AudioUIController.cs b/Content.Client/Audio/AudioUIController.cs index ef903672fd..16e1edd252 100644 --- a/Content.Client/Audio/AudioUIController.cs +++ b/Content.Client/Audio/AudioUIController.cs @@ -54,7 +54,7 @@ public sealed class AudioUIController : UIController { if (!string.IsNullOrEmpty(value)) { - var resource = _cache.GetResource(value); + var resource = GetSoundOrFallback(value, CCVars.UIClickSound.DefaultValue); var source = _audioManager.CreateAudioSource(resource); @@ -77,7 +77,7 @@ public sealed class AudioUIController : UIController { if (!string.IsNullOrEmpty(value)) { - var hoverResource = _cache.GetResource(value); + var hoverResource = GetSoundOrFallback(value, CCVars.UIHoverSound.DefaultValue); var hoverSource = _audioManager.CreateAudioSource(hoverResource); @@ -95,4 +95,12 @@ public sealed class AudioUIController : UIController UIManager.SetHoverSound(null); } } + + private AudioResource GetSoundOrFallback(string path, string fallback) + { + if (!_cache.TryGetResource(path, out AudioResource? resource)) + return _cache.GetResource(fallback); + + return resource; + } }