1df8402900
* initial commit * wip * WIP * WIP * clang format * Choose Seed navigation mostly done * seed input navigation done * seed input done * cleanup and clang format * Implement base 10 to 36 conversions * Enable seeded runs * clang format * show default deck sprite, name and description * Rename Deck enum to DeckType * Implement arbitrary 9-patch expand system * Make 9-patch example smaller in the docs * Improve NinePatchRect docs * fix Deck back side sprite palette * clang format * Add last deck description * clang format * Fix 'Z' in seed input keyboard * Fix rebase issue * fix deck sprite not updating * Documents static funcs in run_setup.c * more documentation * clang format * Move Play button to the left in its row * Tests WIP * removing tests for random.h * use the new StateMachine struct * First wave of fixes * Fix the 9-patch again * Changed the base 36 logic so it's in big endian * properly set end of base 36 string to '\0' * typos * fix cursor position after rolling a seed + fix random seed generation * Make keyboard more intuitive to use * static const var * Address more comment from @ricfehr3 * clang format * clang format * clang format * clang format * clang format * clang format * clang format * fix deck palette * create the `DEF_SEED_KEYBOARD_BUTTON_OBJECT` macro * Replace `expand_3x3` by a call to `expand_9-patch` * clang format * clang format * clang format * fix rebase iussue in state_machine.h --------- Co-authored-by: MathisMartin31 <mathis.martin31@gmail.com>
44 lines
1.2 KiB
C
44 lines
1.2 KiB
C
#include "game/common_ui.h"
|
|
|
|
#include "blind_select.h"
|
|
#include "game.h"
|
|
#include "game/main_menu.h"
|
|
#include "game/options_menu.h"
|
|
#include "game/round_end.h"
|
|
#include "game/run_setup.h"
|
|
#include "game/shop.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] = game_round_end_change_background,
|
|
[BG_SHOP] = game_shop_change_background,
|
|
[BG_BLIND_SELECT] = game_blind_select_change_background,
|
|
[BG_RUN_SETUP] = game_run_setup_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);
|
|
}
|