From f452df9eb0afa2f875cc4d90b0bc30b1309714b8 Mon Sep 17 00:00:00 2001 From: samual Date: Sun, 20 Dec 2009 05:09:05 +0000 Subject: [PATCH] Patch #589: Menu sounds, disabled by default. (patch by Taoki) git-svn-id: svn://svn.icculus.org/nexuiz/trunk@8433 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/defaultNexuiz.cfg | 3 ++- data/qcsrc/menu/item/button.c | 14 +++++++++++++- data/qcsrc/menu/item/slider.c | 4 +++- data/qcsrc/menu/nexuiz/dialog_settings_audio.c | 5 ++++- data/tooltips.db | 1 + 5 files changed, 23 insertions(+), 4 deletions(-) diff --git a/data/defaultNexuiz.cfg b/data/defaultNexuiz.cfg index c1078f429..9ba0f4640 100644 --- a/data/defaultNexuiz.cfg +++ b/data/defaultNexuiz.cfg @@ -1281,6 +1281,7 @@ alias -userbind "_userbind_call userbind${1}_release" seta menu_skin "wickedz" set menu_slowmo 1 +seta menu_sounds 0 "enables menu sound effects. 1 enables click sounds, 2 also enables hover sounds" // loadfont console gfx/vera-mono // loadfont sbar gfx/vera-mono @@ -1756,4 +1757,4 @@ set _campaign_name "" set r_showbboxes 0 // we REALLY need the end pos nudging DP bug workaround for trace-to-end-of-solid to work -collision_endposnudge 1 +collision_endposnudge 1 \ No newline at end of file diff --git a/data/qcsrc/menu/item/button.c b/data/qcsrc/menu/item/button.c index e2871f116..096c75b80 100644 --- a/data/qcsrc/menu/item/button.c +++ b/data/qcsrc/menu/item/button.c @@ -69,6 +69,8 @@ float mouseDragButton(entity me, vector pos) float mousePressButton(entity me, vector pos) { me.mouseDrag(me, pos); // verify coordinates + if(cvar("menu_sounds")) + localsound("sound/misc/menu2.wav"); return 1; } float mouseReleaseButton(entity me, vector pos) @@ -86,6 +88,7 @@ void showNotifyButton(entity me) { me.focusable = !me.disabled; } +.float playedfocus; void drawButton(entity me) { vector bOrigin, bSize; @@ -156,5 +159,14 @@ void drawButton(entity me) me.onClick(me, me.onClickEntity); } me.clickTime -= frametime; + + if(cvar("menu_sounds") > 1) + if(me.focused && !me.playedfocus) + { + localsound("sound/misc/menu1.wav"); + me.playedfocus = 1; + } + else if(!me.focused && me.playedfocus) + me.playedfocus = 0; } -#endif +#endif \ No newline at end of file diff --git a/data/qcsrc/menu/item/slider.c b/data/qcsrc/menu/item/slider.c index 88adfeb13..f71bb32da 100644 --- a/data/qcsrc/menu/item/slider.c +++ b/data/qcsrc/menu/item/slider.c @@ -212,6 +212,8 @@ float mousePressSlider(entity me, vector pos) //me.mouseDrag(me, pos); } } + if(cvar("menu_sounds")) + localsound("sound/misc/menu2.wav"); return 1; } float mouseReleaseSlider(entity me, vector pos) @@ -251,4 +253,4 @@ void drawSlider(entity me) drawLabel(me); me.text = string_null; // TEMPSTRING! } -#endif +#endif \ No newline at end of file diff --git a/data/qcsrc/menu/nexuiz/dialog_settings_audio.c b/data/qcsrc/menu/nexuiz/dialog_settings_audio.c index 2d288bc75..c69268cdc 100644 --- a/data/qcsrc/menu/nexuiz/dialog_settings_audio.c +++ b/data/qcsrc/menu/nexuiz/dialog_settings_audio.c @@ -94,6 +94,7 @@ void fillNexuizAudioSettingsTab(entity me) me.TD(me, 1, 2, s); setDependentStringNotEqual(e, "volume", "0"); setDependentStringNotEqual(s, "volume", "0"); + me.TR(me); me.gotoRC(me, 0, 3.5); me.setFirstColumn(me, me.currentColumn); me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Frequency:")); @@ -166,8 +167,10 @@ void fillNexuizAudioSettingsTab(entity me) e.configureNexuizTextSliderValues(e); me.TR(me); me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "cl_hitsound", "Hit indicator")); + me.TR(me); + me.TD(me, 1, 3, e = makeNexuizCheckBoxEx(2, 0, "menu_sounds", "Menu sounds")); me.gotoRC(me, me.rows - 1, 0); me.TD(me, 1, me.columns, makeNexuizCommandButton("Apply immediately", '0 0 0', "snd_restart; sendcvar cl_hitsound; sendcvar cl_autotaunt; sendcvar cl_voice_directional; sendcvar cl_voice_directional_taunt_attenuation", COMMANDBUTTON_APPLY)); } -#endif +#endif \ No newline at end of file diff --git a/data/tooltips.db b/data/tooltips.db index fff7bc82c..dd9ff2d7a 100644 --- a/data/tooltips.db +++ b/data/tooltips.db @@ -175,6 +175,7 @@ \cl_autotaunt\Automatically taunt enemies after fragging them \cl_sound_maptime_warning\Announcer sound telling you the remaining minutes of the match \cl_hitsound\Play a hit indicator sound when your shot hits an enemy +\menu_sounds\Play sounds when clicking or hovering over menu items \NexuizSettingsDialog/Network\Network settings \cl_movement\Enable clientside movement prediction -- 2.39.2