diff --git a/crates/benilla-app/assets/ui/CraftFrame.xml b/crates/benilla-app/assets/ui/CraftFrame.xml
index 8c3f8166..76eaa852 100644
--- a/crates/benilla-app/assets/ui/CraftFrame.xml
+++ b/crates/benilla-app/assets/ui/CraftFrame.xml
@@ -769,16 +769,6 @@
-
-
-
diff --git a/crates/benilla-app/assets/ui/OptionsFrame.xml b/crates/benilla-app/assets/ui/OptionsFrame.xml
index c8286026..8d43abb7 100644
--- a/crates/benilla-app/assets/ui/OptionsFrame.xml
+++ b/crates/benilla-app/assets/ui/OptionsFrame.xml
@@ -660,7 +660,7 @@
},
Audio = {
"RowEnableAll", "RowMaster", "RowSound", "RowMusic", "RowAmbience",
- "RowEnableMusic", "RowEnableAmbience",
+ "RowEnableMusic", "RowEnableAmbience", "RowEnableErrorSpeech",
},
Graphics = {
"RowUiScale", "RowFarclip", "RowWorldDetail",
@@ -1249,15 +1249,21 @@
return
end
if key ~= "Audio" then return end
+ -- 1.12's own rule, both halves: SoundOptionsFrame_UpdateDependencies greys check
+ -- button 2 (Enable Ambience) AND button 4 (Enable Error Speech) while the master
+ -- enable is unticked. Enable Music is deliberately left alive — the quirk the
+ -- reference's own file has.
local on = GetCVar("MasterSoundEffects") ~= "0"
- local box = OptionsFrameContainerBodyAudioRowEnableAmbienceCheck
- local label = OptionsFrameContainerBodyAudioRowEnableAmbienceLabel
- if on then
- box:Enable()
- label:SetFontObject("GameFontNormal")
- else
- box:Disable()
- label:SetFontObject("GameFontDisable")
+ for _, row in {"RowEnableAmbience", "RowEnableErrorSpeech"} do
+ local box = getglobal("OptionsFrameContainerBodyAudio"..row.."Check")
+ local label = getglobal("OptionsFrameContainerBodyAudio"..row.."Label")
+ if on then
+ box:Enable()
+ label:SetFontObject("GameFontNormal")
+ else
+ box:Disable()
+ label:SetFontObject("GameFontDisable")
+ end
end
end
@@ -2321,6 +2327,22 @@
self.soundQuirk = 1
+
+
+
+
+
+
+
+ OptionsRow_OnLoad(self, "EnableErrorSpeech", "Enable Error Speech",
+ "OPTION_TOOLTIP_ENABLE_ERROR_SPEECH")
+ self.soundQuirk = 1
+
+
-
-