#include "menu_counters.h" #include "menus.h" #include "config.h" #include "state.h" #include "draw.h" #include "game.h" #include "events.h" static const uint8_t s_icon_plus[2][ICON_W] = { // Plus (counters) {0x00,0x00,0x00,0xC0,0xC0,0xC0,0xF8,0xF8,0xF8,0xF8,0xC0,0xC0,0xC0,0x00,0x00,0x00}, {0x00,0x00,0x00,0x03,0x03,0x03,0x1F,0x1F,0x1F,0x1F,0x03,0x03,0x03,0x00,0x00,0x00}, }; static void counters_nav_short(int d) { g_active_counter = (g_active_counter + d + NUM_COUNTERS) % NUM_COUNTERS; } static void counters_lr_delta(int d) { g_counters[g_active_counter] += d; if (g_counters[g_active_counter] < 0) g_counters[g_active_counter] = 0; check_elimination(); mark_dirty(); } static void counters_draw(void) { oled_draw_list(counter_names, g_counters, NUM_COUNTERS, g_active_counter); } const menu_vtable_t menu_counters_vtable = { .nav_short = counters_nav_short, .lr_delta = counters_lr_delta, .draw = counters_draw, .on_tick = NULL, .icon = s_icon_plus, };