solitaire-c64/gamestate.c65

25 lines
960 B
Text

#IFNDEF __lib_gamestate
#DEFINE __lib_gamestate 1
GOTO __skip_lib_gamestate
// ============================================================================
// GAME STATE VARIABLES
// ============================================================================
// Global game state that needs to be accessible from multiple modules
// ============================================================================
// Game configuration
BYTE game_draw_mode = 1 // Stock draw mode: 1 or 3 cards per draw
BYTE game_allow_found_to_tab = 0 // Allow foundation to tableau moves: 0=disallow, 1=allow
// Game interaction state
BYTE game_selected_pile // Currently selected pile ID (PILE_ID_NONE if none)
BYTE game_selected_card_count // Number of cards selected from tableau (1+ for tableau stacks)
BYTE game_prev_button_state // Previous mouse button state for click detection
LABEL __skip_lib_gamestate
#IFEND