WIP port of sauer master server
git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@4803 e016b1c5-ed68-44aa-a2f7-31cac88cffde
This commit is contained in:
@@ -562,6 +562,24 @@ void pushevent(const SDL_Event &e)
|
||||
events.add(e);
|
||||
}
|
||||
|
||||
bool interceptkey(int sym)
|
||||
{
|
||||
static int lastintercept = SDLK_UNKNOWN;
|
||||
int len = lastintercept == sym ? events.length() : 0;
|
||||
SDL_Event event;
|
||||
while(SDL_PollEvent(&event)) switch(event.type)
|
||||
{
|
||||
case SDL_MOUSEMOTION: break;
|
||||
default: pushevent(event); break;
|
||||
}
|
||||
lastintercept = sym;
|
||||
if(sym != SDLK_UNKNOWN) for(int i = len; i < events.length(); i++)
|
||||
{
|
||||
if(events[i].type == SDL_KEYDOWN && events[i].key.keysym.sym == sym) { events.remove(i); return true; }
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
static void resetmousemotion()
|
||||
{
|
||||
#ifndef WIN32
|
||||
|
||||
Reference in New Issue
Block a user