about summary refs log tree commit diff
path: root/src/game/client/components/camera.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/client/components/camera.cpp')
-rw-r--r--src/game/client/components/camera.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/game/client/components/camera.cpp b/src/game/client/components/camera.cpp
index 96baf459..185f02c5 100644
--- a/src/game/client/components/camera.cpp
+++ b/src/game/client/components/camera.cpp
@@ -10,6 +10,7 @@
 
 CCamera::CCamera()
 {
+	m_WasSpectator = false;
 }
 
 void CCamera::OnRender()
@@ -19,10 +20,17 @@ void CCamera::OnRender()
 
 	// update camera center		
 	if(m_pClient->m_Snap.m_Spectate)
+	{
 		m_Center = m_pClient->m_pControls->m_MousePos;
+		m_WasSpectator = true;
+	}
 	else
 	{
-
+		if(m_WasSpectator)
+		{
+			m_pClient->m_pControls->ClampMousePos();
+			m_WasSpectator = false;
+		}
 		float l = length(m_pClient->m_pControls->m_MousePos);
 		float DeadZone = g_Config.m_ClMouseDeadzone;
 		float FollowFactor = g_Config.m_ClMouseFollowfactor/100.0f;