From 723dc1a9bd275bb314a5e2d2673ed0ea84fee330 Mon Sep 17 00:00:00 2001 From: Vito Caputo Date: Fri, 13 Oct 2023 23:36:35 -0700 Subject: hungrycat: don't leave context during delay Normally on any keypress/finger event the context switch will occur. But when --delay is in effect, you generally want to have tolerance of spurious keypresses and such while getting screencap stuff sorted out. So this commit suppresses leaving the hungrycat context while in the delay state... --- src/hungrycat.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/hungrycat.c b/src/hungrycat.c index 504ca80..d31b8e3 100644 --- a/src/hungrycat.c +++ b/src/hungrycat.c @@ -159,6 +159,10 @@ static void hungrycat_leave(play_t *play, void *context) static void hungrycat_dispatch(play_t *play, void *context, SDL_Event *event) { + hungrycat_t *hungrycat = context; + + assert(hungrycat); + /* global handlers */ sars_dispatch(play, context, event); @@ -168,7 +172,8 @@ static void hungrycat_dispatch(play_t *play, void *context, SDL_Event *event) exit(0); /* fallthrough */ case SDL_FINGERDOWN: - play_context_enter(play, SARS_CONTEXT_GAME); + if (hungrycat->state != HUNGRYCAT_STATE_DELAY) + play_context_enter(play, SARS_CONTEXT_GAME); break; default: -- cgit v1.2.3