From 470010c78cfe82d3837e1028bae89e1a671b4c65 Mon Sep 17 00:00:00 2001 From: Nunuhara Cabbage Date: Sat, 20 Jul 2019 16:24:21 -0700 Subject: [PATCH] Fix issue with uncancelled message wait Only wait for two inputs if message wait was cancelled. --- src/imput.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/imput.c b/src/imput.c index 973823d..d9e41a6 100644 --- a/src/imput.c +++ b/src/imput.c @@ -111,14 +111,16 @@ void sys_hit_any_key() { /* message wait flag restore */ if (nact->messagewait_enable_save) { + /* if message wait was cancelled, consume that input */ + if (!nact->messagewait_enable) { + while(0 == (key & hak_ignore_mask)) { + key = sys_keywait(INT_MAX, TRUE); + } + while(key & hak_releasewait_mask) { + key = sys_keywait(100, TRUE); + } + } nact->messagewait_enable = nact->messagewait_enable_save ; - - while(0 == (key & hak_ignore_mask)) { - key = sys_keywait(INT_MAX, TRUE); - } - while(key & hak_releasewait_mask) { - key = sys_keywait(100, TRUE); - } } while(0 == (key & hak_ignore_mask)) {