X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=8f2fdf7d61696fa9e6623c6ecaedbe8f3129d78c;hb=c4d9b5e489f38f7e6f42039cce9bca0ecafc0992;hp=6ef48aee97da2ced884db8f8a24a540967fe1740;hpb=401f78b66d66488fe465945bef36b10faa6b55ef;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index 6ef48aee..8f2fdf7d 100644 --- a/src/init.c +++ b/src/init.c @@ -4976,6 +4976,7 @@ static void InitGlobal() global.autoplay_leveldir = NULL; global.convert_leveldir = NULL; + global.create_images_dir = NULL; global.frames_per_second = 0; global.fps_slowdown = FALSE; @@ -5157,6 +5158,18 @@ void Execute_Command(char *command) global.convert_level_nr = atoi(str_ptr); /* get level_nr value */ } } + else if (strncmp(command, "create images ", 14) == 0) + { +#if defined(TARGET_SDL) + global.create_images_dir = getStringCopy(&command[14]); + + if (access(global.create_images_dir, W_OK) != 0) + Error(ERR_EXIT, "image target directory '%s' not found or not writable", + global.create_images_dir); +#else + Error(ERR_EXIT, "command only available for SDL target"); +#endif + } #if DEBUG #if defined(TARGET_SDL) @@ -6178,6 +6191,11 @@ void OpenAll() ConvertLevels(); return; } + else if (global.create_images_dir) + { + CreateLevelSketchImages(); + return; + } game_status = GAME_MODE_MAIN;