From dfab16d6d874b1c182dc54f28236d94046143dfe Mon Sep 17 00:00:00 2001 From: div0 Date: Thu, 8 Jan 2009 13:02:10 +0000 Subject: [PATCH] cvar cl_taunt_directional git-svn-id: svn://svn.icculus.org/nexuiz/trunk@5453 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/defaultNexuiz.cfg | 1 + data/qcsrc/menu/nexuiz/dialog_settings_audio.c | 4 +++- data/qcsrc/server/cl_player.qc | 15 ++++++++++++--- data/qcsrc/server/defs.qh | 1 + data/qcsrc/server/miscfunctions.qc | 1 + 5 files changed, 18 insertions(+), 4 deletions(-) diff --git a/data/defaultNexuiz.cfg b/data/defaultNexuiz.cfg index 22235d9da..ebb6a49d8 100644 --- a/data/defaultNexuiz.cfg +++ b/data/defaultNexuiz.cfg @@ -124,6 +124,7 @@ cl_autodemo_nameformat demos/%Y-%m-%d_%H-%M // taunts and voices seta cl_autotaunt 0.65 +seta cl_taunt_directional 1 // server settings hostname "Nexuiz Server" diff --git a/data/qcsrc/menu/nexuiz/dialog_settings_audio.c b/data/qcsrc/menu/nexuiz/dialog_settings_audio.c index f45261614..d6d5f6056 100644 --- a/data/qcsrc/menu/nexuiz/dialog_settings_audio.c +++ b/data/qcsrc/menu/nexuiz/dialog_settings_audio.c @@ -131,9 +131,11 @@ void fillNexuizAudioSettingsTab(entity me) me.TD(me, 1, 1, e = makeNexuizSliderCheckBox(0, 1, sl, "Automatic taunts")); if(sl.value != e.savedValue) e.savedValue = 0.65; // default - me.TR(me); + me.TR(me); me.TD(me, 1, 3, e = makeNexuizTextLabel(0.1, "Frequency:")); me.TD(me, 1, 2, sl); + me.TR(me); + me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "cl_taunt_directional", "Play taunts directionally")); me.TR(me); me.TR(me); me.TD(me, 1, 2.8, e = makeNexuizCheckBox(0, "cl_hitsound", "Hit indicator")); diff --git a/data/qcsrc/server/cl_player.qc b/data/qcsrc/server/cl_player.qc index b34f8b62a..adc0b550f 100644 --- a/data/qcsrc/server/cl_player.qc +++ b/data/qcsrc/server/cl_player.qc @@ -955,13 +955,22 @@ void GlobalSound(string sample, float chan, float teamsay) if (tauntrand < e.cvar_cl_autotaunt) { msg_entity = e; - soundto(MSG_ONE, self, chan, sample, VOL_BASE, ATTN_MIN); + if (e.cvar_cl_taunt_directional) + soundto(MSG_ONE, self, chan, sample, VOL_BASE, ATTN_MIN); + else + soundto(MSG_ONE, self, chan, sample, VOL_BASE, ATTN_NONE); } } else if(teamsay == 5) // manual taunt { - // broadcast the sound, but it's directional - sound(self, chan, sample, VOL_BASE, ATTN_MIN); + FOR_EACH_REALCLIENT(e) + { + msg_entity = e; + if (e.cvar_cl_taunt_directional) + soundto(MSG_ONE, self, chan, sample, VOL_BASE, ATTN_MIN); + else + soundto(MSG_ONE, self, chan, sample, VOL_BASE, ATTN_NONE); + } } } diff --git a/data/qcsrc/server/defs.qh b/data/qcsrc/server/defs.qh index 083e8cd3a..cf60cbed1 100644 --- a/data/qcsrc/server/defs.qh +++ b/data/qcsrc/server/defs.qh @@ -477,6 +477,7 @@ void VoiceMessage(string type); // autotaunt system .float cvar_cl_autotaunt; +.float cvar_cl_taunt_directional; .float version_mismatch; diff --git a/data/qcsrc/server/miscfunctions.qc b/data/qcsrc/server/miscfunctions.qc index b32b8021f..5ff83a96a 100644 --- a/data/qcsrc/server/miscfunctions.qc +++ b/data/qcsrc/server/miscfunctions.qc @@ -550,6 +550,7 @@ void GetCvars(float f) GetCvars_handleString_Fixup(s, f, cvar_cl_weaponpriorities[8], "cl_weaponpriority8", W_FixWeaponOrder_AllowIncomplete); GetCvars_handleString_Fixup(s, f, cvar_cl_weaponpriorities[9], "cl_weaponpriority9", W_FixWeaponOrder_AllowIncomplete); GetCvars_handleFloat(s, f, cvar_cl_autotaunt, "cl_autotaunt"); + GetCvars_handleFloat(s, f, cvar_cl_taunt_directional, "cl_taunt_directional"); GetCvars_handleFloat(s, f, cvar_cl_hitsound, "cl_hitsound"); // fixup of switchweapon (needed for LMS or when spectating is disabled, as PutClientInServer comes too early) -- 2.39.2