#include "mc.h"
#include "sokoban.h"
+#include "uthash.h"
//Global variables
bool DEBUG = false;
strategy strat = HYBRID;
-void usage(char *prg){
+void usage(char *prg)
+{
fprintf(stderr,
"Usage:\n"
"\t%s [opts] [FILE [FILE [...]]]\n"
"\t when no file is specified stdin will be used\n", prg);
}
-void solve(FILE *inputstream){
+void solve(FILE *inputstream)
+{
clock_t time_start_read, time_end_read;
clock_t time_start_encode, time_end_encode;
time_start_read = clock();
- struct sokoban_screen *screen = parse_screen(inputstream);
- while(screen != NULL){
- switch(screen->tile){
- case FREE: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "FREE");break;
- case WALL: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "WALL");break;
- case BOX: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "BOX");break;
- case TARGET: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "TARGET");break;
- case AGENT: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "AGENT");break;
- case TARGAGENT: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "TARGAGENT");break;
- case TARGBOX: printf("x = %d y = %d tile = %s\n", screen->x, screen->y, "TARGBOX");break;
- }
- screen = screen->next;
- }
+ sokoban_screen *screen = parse_screen(inputstream);
+ if (screen == NULL) printf("Something went wrong...\n");
+ sokoban_print(screen);
+ sokoban_free(screen);
//parse_screen(inputstream);
time_end_read = clock();
((double) (time_end_encode-time_start_encode))/CLOCKS_PER_SEC);
}
-int main(int argc, char **argv){
+int main(int argc, char **argv)
+{
int optchar;
while((optchar = getopt(argc, argv, "cdhoy")) != -1){