void CLI::apply_load(int option) { string file_name = ""; switch (option) { case LOAD_NEW_GAME: loaded_game = false; break; case LOAD_LAST_GAME: case LOAD_FROM_PGN: if (option == LOAD_LAST_GAME) { file_name = IN_PROGRESS_PGN_FILE; } else { cout << "Enter a filename: "; file_name = get_line(); } if (pgn.read_from_file(file_name)) { message = "A game was loaded properly.\n"; loaded_game = true; board = new Board(pgn.get_board()); int status = board_status(*board); if (status == STATUS_BLACK_MATES || status == STATUS_WHITE_MATES) { if (board->undo_move()) { message += " But the last move was removed\n because of a checkmate!\n"; } else { message = "Something went totally wrong \n with the file you tried to load."; loaded_game = false; } } message += board->to_move == WHITE ? " White" : " Black"; message += " is playing next."; } else { message = "Error opening: " + file_name; loaded_game = false; } break; case LOAD_FROM_FEN: //when reading from fen loaded_game should be false. Just change the fen variable // read_fen(); // message = "Your FEN hopefully will work!\n" + fen; break; } }
/** * wou_status - update TX and RX link status **/ void wou_status (wou_param_t *w_param) { board_status (w_param->board); return; }