diff --git a/README.md b/README.md index 1d2d3cc4..24be85be 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,7 @@ Archive's bin directory contains 2 subdirectories, 'bugfixed' and 'pure' | mp_forcerespawn | 0 | 0 | - | Players will automatically respawn when killed.
`0` disabled
`>0.00001` time delay to respawn | | mp_hostage_hurtable | 1 | 0 | 1 | The hostages can take damage.
`0` disabled
`1` from any team
`2` only from `CT`
`3` only from `T` | | mp_show_radioicon | 1 | 0 | 1 | Show radio icon.
`0` disabled
`1` enabled | +| mp_old_bomb_defused_sound | 0 | 0 | 1 | Play "Bomb has been defused" sound instead of "Counter-Terrorists win" when bomb was defused
`0` disabled
`1` enabled | | showtriggers | 0 | 0 | 1 | Debug cvar shows triggers. | | sv_alltalk | 0 | 0 | 4 | When players can hear each other ([further explanation](../../wiki/sv_alltalk)).
`0` dead don't hear alive
`1` no restrictions
`2` teammates hear each other
`3` Same as 2, but spectators hear everybody
`4` alive hear alive, dead hear dead and alive. | bot_deathmatch | 0 | 0 | 1 | Set's the mode for the zBot.
`0` disabled
`1` enable mode Deathmatch and not allow to do the scenario | diff --git a/dist/game.cfg b/dist/game.cfg index d43e0223..42c3c966 100644 --- a/dist/game.cfg +++ b/dist/game.cfg @@ -136,6 +136,11 @@ mp_hostage_hurtable 1 // 1 - enabled (default behavior) mp_show_radioicon 1 +// Play "Bomb has been defused" sound instead of "Counter-Terrorists win" when bomb was defused +// 0 - disabled +// 1 - enabled (default hehavior) +mp_old_bomb_defused_sound 1 + // Set's the mode for the zBot // 0 - disabled // 1 - enable mode Deathmatch and not allow to do the scenario diff --git a/regamedll/dlls/game.cpp b/regamedll/dlls/game.cpp index 30563f23..66697a40 100644 --- a/regamedll/dlls/game.cpp +++ b/regamedll/dlls/game.cpp @@ -110,11 +110,12 @@ cvar_t round_restart_delay = { "mp_round_restart_delay", "5", FCVAR_SERVER, 0. cvar_t showtriggers = { "showtriggers", "0", 0, 0.0f, nullptr }; // debug cvar shows triggers // TODO: Maybe it's better to register in the engine? -cvar_t hostagehurtable = { "mp_hostage_hurtable", "1", FCVAR_SERVER, 0.0f, nullptr }; -cvar_t roundover = { "mp_roundover", "0", FCVAR_SERVER, 0.0f, nullptr }; -cvar_t forcerespawn = { "mp_forcerespawn", "0", FCVAR_SERVER, 0.0f, nullptr }; -cvar_t show_radioicon = { "mp_show_radioicon", "1", FCVAR_SERVER, 1.0f, nullptr }; -cvar_t item_staytime = { "mp_item_staytime", "300", FCVAR_SERVER, 300.0f, nullptr }; +cvar_t hostagehurtable = { "mp_hostage_hurtable", "1", FCVAR_SERVER, 0.0f, nullptr }; +cvar_t roundover = { "mp_roundover", "0", FCVAR_SERVER, 0.0f, nullptr }; +cvar_t forcerespawn = { "mp_forcerespawn", "0", FCVAR_SERVER, 0.0f, nullptr }; +cvar_t show_radioicon = { "mp_show_radioicon", "1", FCVAR_SERVER, 1.0f, nullptr }; +cvar_t old_bomb_defused_sound = { "mp_old_bomb_defused_sound", "1", FCVAR_SERVER, 1.0f, nullptr }; +cvar_t item_staytime = { "mp_item_staytime", "300", FCVAR_SERVER, 300.0f, nullptr }; void GameDLL_Version_f() { @@ -266,6 +267,7 @@ void EXT_FUNC GameDLLInit() CVAR_REGISTER(&roundover); CVAR_REGISTER(&forcerespawn); CVAR_REGISTER(&show_radioicon); + CVAR_REGISTER(&old_bomb_defused_sound); CVAR_REGISTER(&item_staytime); // print version diff --git a/regamedll/dlls/game.h b/regamedll/dlls/game.h index e67daf87..69492207 100644 --- a/regamedll/dlls/game.h +++ b/regamedll/dlls/game.h @@ -150,6 +150,7 @@ extern cvar_t hostagehurtable; extern cvar_t roundover; extern cvar_t forcerespawn; extern cvar_t show_radioicon; +extern cvar_t old_bomb_defused_sound; extern cvar_t item_staytime; #endif diff --git a/regamedll/dlls/ggrenade.cpp b/regamedll/dlls/ggrenade.cpp index 8db72c04..5177cf54 100644 --- a/regamedll/dlls/ggrenade.cpp +++ b/regamedll/dlls/ggrenade.cpp @@ -1304,9 +1304,12 @@ void CGrenade::C4Think() // if the defuse process has ended, kill the c4 else if (m_pBombDefuser->pev->deadflag == DEAD_NO) { -#ifndef REGAMEDLL_FIXES - Broadcast("BOMBDEF"); +#ifdef REGAMEDLL_ADD + if (!old_bomb_defused_sound.value) #endif + { + Broadcast("BOMBDEF"); + } if (TheBots) { diff --git a/regamedll/dlls/multiplay_gamerules.cpp b/regamedll/dlls/multiplay_gamerules.cpp index b1e2ec76..c4e23f53 100644 --- a/regamedll/dlls/multiplay_gamerules.cpp +++ b/regamedll/dlls/multiplay_gamerules.cpp @@ -1213,8 +1213,11 @@ bool CHalfLifeMultiplay::Target_Defused(float tmDelay) { Broadcast("ctwin"); -#ifdef REGAMEDLL_FIXES - Broadcast("BOMBDEF"); +#ifdef REGAMEDLL_ADD + if (old_bomb_defused_sound.value) + { + Broadcast("BOMBDEF"); + } #endif m_iAccountCT += m_rgRewardAccountRules[RR_BOMB_DEFUSED];