Files
balatro-gba-chinese-jocker-…/source/game/common_ui.c
T
d01b1ba12d Refactor/blind select screen (#461)
Refactor Blind Select Screen.

Based on #363
---------

Co-authored-by: emiyl <me@emiyl.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-06 00:56:59 -07:00

40 lines
1017 B
C

#include "game/common_ui.h"
#include "blind_select.h"
#include "game.h"
#include "game/main_menu.h"
#include "game/options_menu.h"
typedef void (*BackgroundRenderCallback)(void);
static enum BackgroundId background = BG_NONE;
// Map to fill in for refactor
static const BackgroundRenderCallback bgCallbacks[] = {
[BG_NONE] = NULL,
[BG_CARD_SELECTING] = NULL,
[BG_CARD_PLAYING] = NULL,
[BG_ROUND_END] = NULL,
[BG_SHOP] = NULL,
[BG_BLIND_SELECT] = game_blind_select_change_background,
[BG_OPTIONS_MENU] = game_options_menu_change_background,
[BG_MAIN_MENU] = game_main_menu_change_background,
};
void change_background(enum BackgroundId id, bool force_redraw)
{
if (force_redraw)
{
background = BG_NONE;
reset_background();
}
if (id != background && bgCallbacks[id] != NULL)
{
bgCallbacks[id]();
}
background = id;
// Can be removed once all states have their own "change_background" func
change_background_legacy(id);
}