#ifndef MYSOK_H #define MYSOK_H #include #include #include #include #define NBL 20 #define NBC 20 #define MAX_CRATES 20 #define MOVE_U 0 #define MOVE_D 1 #define MOVE_L 2 #define MOVE_R 3 #define MOVE_W 4 #define OUT 0 #define FREE 1 #define TARGET 2 #define WALL 3 #define CRATE_ON_FREE 4 #define CRATE_ON_TARGET 5 #define MAN1_ON_FREE 6 #define MAN1_ON_TARGET 7 #define MAN2_ON_FREE 8 #define MAN2_ON_TARGET 9 #define END_OF_LINE 10 const char board_str[] = {' ', '_', '.', '#', '$', '*', '1', 'u', '2', 'd', 'a'}; const std::string move_str[] = {"Up", "Down", "Left", "Right", "Wait"}; struct sok_board_t { int board[NBL][NBC]; int board_nbl; int man1_x; int man1_y; int man2_x; int man2_y; sok_board_t(); void print_board(); void load(char *_file); }; #endif