#pragma once #include "SDL2/SDL.h" #include "board.hpp" class Game { public: Game(SDL_Window* window, SDL_Surface* surface); Game(SDL_Window* window, SDL_Surface* surface, std::string board_fen); void run(); private: void tick(); void draw(); void process_click(int x, int y); void do_ai_move(); int minimax(Board current_board, int depth, int a, int b, bool maximizing); int board_heuristic(Board current_board); SDL_Window* window; SDL_Surface* surface; Board board; bool running; bool holding_k; };