diff options
| -rw-r--r-- | src/game/client/gameclient.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/game/client/gameclient.cpp b/src/game/client/gameclient.cpp index d59a7a04..a3f618ab 100644 --- a/src/game/client/gameclient.cpp +++ b/src/game/client/gameclient.cpp @@ -545,9 +545,15 @@ void CGameClient::OnMessage(int MsgId, CUnpacker *pUnpacker) { if(m_SuppressEvents) return; - + + // don't enqueue pseudo-global sounds from demos (created by PlayAndRecord) CNetMsg_Sv_SoundGlobal *pMsg = (CNetMsg_Sv_SoundGlobal *)pRawMsg; - g_GameClient.m_pSounds->Enqueue(pMsg->m_Soundid); + if(pMsg->m_Soundid == SOUND_CTF_DROP || pMsg->m_Soundid == SOUND_CTF_RETURN || + pMsg->m_Soundid == SOUND_CTF_CAPTURE || pMsg->m_Soundid == SOUND_CTF_GRAB_EN || + pMsg->m_Soundid == SOUND_CTF_GRAB_PL) + g_GameClient.m_pSounds->Enqueue(pMsg->m_Soundid); + else + g_GameClient.m_pSounds->Play(CSounds::CHN_GLOBAL, pMsg->m_Soundid, 1.0f, vec2(0,0)); } } |