diff --git a/src/game/client/component.h b/src/game/client/component.h index c9760b6f9..fee5ec254 100644 --- a/src/game/client/component.h +++ b/src/game/client/component.h @@ -33,6 +33,7 @@ protected: class CCollision *Collision() const { return m_pClient->Collision(); } public: virtual ~CComponent() {} + class CGameClient *GameClient() const { return m_pClient; } class IClient *Client() const { return m_pClient->Client(); } virtual void OnStateChange(int NewState, int OldState) {}; diff --git a/src/game/client/components/controls.cpp b/src/game/client/components/controls.cpp index 5fcfada32..b8a00c7b4 100644 --- a/src/game/client/components/controls.cpp +++ b/src/game/client/components/controls.cpp @@ -123,6 +123,10 @@ struct CInputState static void ConKeyInputState(IConsole::IResult *pResult, void *pUserData) { CInputState *pState = (CInputState *)pUserData; + + if (pState->m_pControls->GameClient()->m_Snap.m_SpecInfo.m_Active) + return; + if (g_Config.m_ClDummy) *pState->m_pVariable2 = pResult->GetInteger(0); else @@ -132,6 +136,10 @@ static void ConKeyInputState(IConsole::IResult *pResult, void *pUserData) static void ConKeyInputCounter(IConsole::IResult *pResult, void *pUserData) { CInputState *pState = (CInputState *)pUserData; + + if (pState->m_pControls->GameClient()->m_Snap.m_SpecInfo.m_Active) + return; + int *v; if (g_Config.m_ClDummy) v = pState->m_pVariable2;