mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-02-24 06:50:09 +00:00
correct key buffering
This commit is contained in:
parent
45ff7a4e10
commit
b90df0d37b
14
control.cpp
14
control.cpp
@ -697,6 +697,7 @@ EX void mainloopiter() {
|
||||
frames++;
|
||||
if(!outoffocus) {
|
||||
drawscreen();
|
||||
need_refresh = false;
|
||||
}
|
||||
lastframe = ticks;
|
||||
}
|
||||
@ -779,7 +780,9 @@ EX void mainloopiter() {
|
||||
if(joydir.d != -1) checkjoy();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
EX bool need_refresh;
|
||||
|
||||
EX void handle_event(SDL_Event& ev) {
|
||||
bool normal = cmode & sm::NORMAL;
|
||||
DEBB(DF_GRAPH, ("got event type #%d\n", ev.type));
|
||||
@ -1011,6 +1014,15 @@ EX void handle_event(SDL_Event& ev) {
|
||||
nofps = !nofps;
|
||||
sym = 0;
|
||||
}
|
||||
|
||||
if(sym || uni) {
|
||||
if(need_refresh) {
|
||||
just_refreshing = true;
|
||||
screens.back()();
|
||||
just_refreshing = false;
|
||||
}
|
||||
need_refresh = true;
|
||||
}
|
||||
|
||||
handlekey(sym, uni);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user