diff --git a/code/sdl/sdl_input.c b/code/sdl/sdl_input.c index d285ccbf..bce410a7 100644 --- a/code/sdl/sdl_input.c +++ b/code/sdl/sdl_input.c @@ -651,6 +651,7 @@ static void IN_ProcessEvents( void ) SDL_Event e; const char *p = NULL; int key = 0; + int mx = 0, my = 0; if( !SDL_WasInit( SDL_INIT_VIDEO ) ) return; @@ -691,7 +692,10 @@ static void IN_ProcessEvents( void ) case SDL_MOUSEMOTION: if (mouseActive) - Com_QueueEvent( 0, SE_MOUSE, e.motion.xrel, e.motion.yrel, 0, NULL ); + { + mx += e.motion.xrel; + my += e.motion.yrel; + } break; case SDL_MOUSEBUTTONDOWN: @@ -722,6 +726,9 @@ static void IN_ProcessEvents( void ) break; } } + + if(mx || my) + Com_QueueEvent( 0, SE_MOUSE, mx, my, 0, NULL ); } /*