From 1df7be08910593c0bdd91489578d094e54e36ad2 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Tue, 15 May 2007 16:34:35 -0700 Subject: [PATCH] Fix state transition to enter mastery stage Previously it would only enter the mastery stage when unlearned became 0, but it would miss entering the stage when unlearned was already 0 and to_introduce became 0. (That is, if you got all the newly introduced items right on the first try, you could then go on to demonstrate mastery of many items without being credited for them towards the mastery quota.) --- mnemon.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/mnemon.c b/mnemon.c index 321ab14..a7c4c61 100644 --- a/mnemon.c +++ b/mnemon.c @@ -889,13 +889,6 @@ mnemon_handle_response (mnemon_t *mnemon, item->score = 1; mnemon->unlearned--; printf ("You got it!"); - if (mnemon->to_introduce == 0 && - mnemon->unlearned == 0 && - mnemon->to_master == 0) - { - mnemon->to_master = 10; - mnemon->mastered = 0; - } } else if (item->score < 0) { printf ("Yes---just give me %d more.", - item->score); @@ -925,6 +918,14 @@ mnemon_handle_response (mnemon_t *mnemon, } } + if (mnemon->to_introduce == 0 && + mnemon->unlearned == 0 && + mnemon->to_master == 0) + { + mnemon->to_master = 10; + mnemon->mastered = 0; + } + printf (" "); if (mnemon->to_introduce) printf ("%d to come. ", mnemon->to_introduce); -- 2.43.0