The core of the unified game logic library, contains the Game struct.
 
void print_game_state(const Game *game)
 
void handle_placement_input(Game *game, Coords *selected)
 
int run_interactive_mode(void)
 
void interactive_movement(Game *game)
 
void print_board(const Game *game)
 
void interactive_placement(Game *game)
 
void print_player_stats(const Game *game)
 
void handle_movement_input(Game *game, Coords *penguin, Coords *target)
 
A pair of 2D coordinates, used for addressing the Game::board_grid.
 
The central struct of the application, holds the game data and settings.