about summary refs log tree commit diff
path: root/src/game/client/components/sounds.cpp
diff options
context:
space:
mode:
authoroy <Tom_Adams@web.de>2011-06-27 23:26:01 +0200
committeroy <Tom_Adams@web.de>2011-06-27 23:26:01 +0200
commitfdf6db5fd6ba56cc4cb1993b0ca8153a890c769f (patch)
tree1c133fc53f26540fc316511335e0bf56b9fa77d7 /src/game/client/components/sounds.cpp
parent47cdd2524b4d5bff7f171686af8260aa8a083c50 (diff)
downloadzcatch-fdf6db5fd6ba56cc4cb1993b0ca8153a890c769f.tar.gz
zcatch-fdf6db5fd6ba56cc4cb1993b0ca8153a890c769f.zip
fixed that music resets on password prompt. Closes #695
Diffstat (limited to 'src/game/client/components/sounds.cpp')
-rw-r--r--src/game/client/components/sounds.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/game/client/components/sounds.cpp b/src/game/client/components/sounds.cpp
index 4e9ef5b5..c4ade00e 100644
--- a/src/game/client/components/sounds.cpp
+++ b/src/game/client/components/sounds.cpp
@@ -65,8 +65,17 @@ void CSounds::OnInit()
 
 void CSounds::OnReset()
 {
-	Sound()->StopAll();
-	ClearQueue();
+	if(Client()->State() >= IClient::STATE_ONLINE)
+	{
+		Sound()->StopAll();
+		ClearQueue();
+	}
+}
+
+void CSounds::OnStateChange(int NewState, int OldState)
+{
+	if(NewState == IClient::STATE_ONLINE || NewState == IClient::STATE_DEMOPLAYBACK)
+		OnReset();
 }
 
 void CSounds::OnRender()