]> git.earman.xyz Git - sensor-watch.git/commitdiff
Revert "LAP indicator now dispalys on all screens"
authorDavid Volovskiy <devolov@gmail.com>
Mon, 26 Aug 2024 23:52:15 +0000 (19:52 -0400)
committerDavid Volovskiy <devolov@gmail.com>
Tue, 3 Sep 2024 20:11:54 +0000 (16:11 -0400)
This reverts commit 3bfa336b4d609668f6d8c71164f8f579f41240a5.

movement/watch_faces/complication/wordle_face.c

index 6de8cee74a360fba1002b205f55787b4e6a5dc25..ca62f30ea2f50880b39b1b0c8ee9c065492cb0f4 100644 (file)
@@ -166,8 +166,8 @@ static bool check_word(wordle_state_t *state) {
     return false;
 }
 
-static void show_skip_wrong_letter_indicator(bool skipping) {
-    if (skipping)
+static void show_skip_wrong_letter_indicator(bool skipping, WordleScreen curr_screen) {
+    if (skipping && curr_screen <= SCREEN_CONTINUE)
        watch_set_indicator(WATCH_INDICATOR_LAP);
     else
         watch_clear_indicator(WATCH_INDICATOR_LAP);
@@ -192,6 +192,7 @@ static void display_attempt(uint8_t attempt) {
 
 static void display_playing(wordle_state_t *state) {
     state->curr_screen = SCREEN_PLAYING;
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     display_attempt(state->attempt);
     display_all_letters(state);
 }
@@ -234,6 +235,7 @@ static void reset_board(wordle_state_t *state) {
 
 static void display_title(wordle_state_t *state) {
     state->curr_screen = SCREEN_TITLE;
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     watch_display_string("WO  WordLE", 0);
 }
 
@@ -244,6 +246,7 @@ static void display_continue_result(bool continuing) {
 
 static void display_continue(wordle_state_t *state) {
     state->curr_screen = SCREEN_CONTINUE;
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     watch_display_string("Cont ", 4);
     display_continue_result(state->continuing);
 }
@@ -252,6 +255,7 @@ static void display_continue(wordle_state_t *state) {
 static void display_streak(wordle_state_t *state) {
     char buf[12];
     state->curr_screen = SCREEN_STREAK;
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
 #if WORDLE_USE_DAILY_STREAK
     if (state->streak > 99)
         sprintf(buf, "WO  St--dy");
@@ -267,6 +271,7 @@ static void display_streak(wordle_state_t *state) {
 #if WORDLE_USE_DAILY_STREAK
 static void display_wait(wordle_state_t *state) {
     state->curr_screen = SCREEN_WAIT;
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     if (state->streak < 40) {
         char buf[13];
         sprintf(buf,"WO%2d WaIt ", state->streak);
@@ -286,6 +291,7 @@ static uint32_t get_day_unix_time(void) {
 
 static void display_lose(wordle_state_t *state, uint8_t subsecond) {
     char buf[WORDLE_LENGTH + 6];
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     sprintf(buf," L   %s", subsecond % 2 ? _valid_words[state->curr_answer] : "     ");
     watch_display_string(buf, 0);
 }
@@ -293,6 +299,7 @@ static void display_lose(wordle_state_t *state, uint8_t subsecond) {
 static void display_win(wordle_state_t *state, uint8_t subsecond) {
     (void) state;
     char buf[13];
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     sprintf(buf," W   %s  ", subsecond % 2 ? "NICE" : "JOb ");
     watch_display_string(buf, 0);
 }
@@ -327,6 +334,7 @@ static void display_result(wordle_state_t *state, uint8_t subsecond) {
             break;
         }
     }
+    show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
     watch_display_string(buf, 5);
 }
 
@@ -489,7 +497,6 @@ void wordle_face_activate(movement_settings_t *settings, void *context) {
         state->position = get_first_pos(state->word_elements_result); 
     }
     movement_request_tick_frequency(2);
-    show_skip_wrong_letter_indicator(state->skip_wrong_letter);
     display_title(state);
 }
 
@@ -528,7 +535,7 @@ bool wordle_face_loop(movement_event_t event, movement_settings_t *settings, voi
         case EVENT_LIGHT_LONG_PRESS:
             if (state->curr_screen < SCREEN_PLAYING) {
                 state->skip_wrong_letter = !state->skip_wrong_letter;
-                show_skip_wrong_letter_indicator(state->skip_wrong_letter);
+                show_skip_wrong_letter_indicator(state->skip_wrong_letter, state->curr_screen);
             }
             if (state->curr_screen != SCREEN_PLAYING) break;
             get_prev_letter(state->position, state->word_elements, state->known_wrong_letters, state->skip_wrong_letter);