X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Flibgame%2Fsystem.c;h=ea8288e033870af9f9e2308300a5850a993b40d7;hb=5e6fe5ea09669e5b3492915a84a30862294baf45;hp=64aaf0f822210821d3ba5925808d310db6d027e0;hpb=c1d626add6662c6ffa9ca5c00be53b11684195cf;p=rocksndiamonds.git diff --git a/src/libgame/system.c b/src/libgame/system.c index 64aaf0f8..ea8288e0 100644 --- a/src/libgame/system.c +++ b/src/libgame/system.c @@ -103,6 +103,8 @@ void InitProgramInfo(char *argv0, char *config_filename, char *userdata_subdir, program.log_file[LOG_OUT_ID] = program.log_file_default[LOG_OUT_ID] = stdout; program.log_file[LOG_ERR_ID] = program.log_file_default[LOG_ERR_ID] = stderr; + program.api_thread_count = 0; + program.headless = FALSE; } @@ -1843,6 +1845,24 @@ void PushUserEvent(int code, int value1, int value2) SDL_PushEvent((SDL_Event *)&event); } +boolean PendingEscapeKeyEvent(void) +{ + if (PendingEvent()) + { + Event event; + + // check if any key press event is pending + if (SDL_PeepEvents(&event, 1, SDL_PEEKEVENT, SDL_KEYDOWN, SDL_KEYDOWN) != 1) + return FALSE; + + // check if pressed key is "Escape" key + if (event.key.keysym.sym == KSYM_Escape) + return TRUE; + } + + return FALSE; +} + // ============================================================================ // joystick functions