X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=d5120fb2df7c5e09fa6d4841b95956f8aa482c18;hb=841975f6fc42acad69e5ff74ad425b0148aa8d32;hp=5888e26f88b0bc3bda95f634734767a32b02036f;hpb=380f1f693d72b034d9b56dbc9c974ba8c6c490e7;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index 5888e26f..d5120fb2 100644 --- a/src/init.c +++ b/src/init.c @@ -4664,7 +4664,7 @@ void InitElementPropertiesEngine(int engine_version) i == EL_BLACK_ORB)); // ---------- COULD_MOVE_INTO_ACID ---------------------------------------- - SET_PROPERTY(i, EP_COULD_MOVE_INTO_ACID, (ELEM_IS_PLAYER(i) || + SET_PROPERTY(i, EP_COULD_MOVE_INTO_ACID, (IS_PLAYER_ELEMENT(i) || CAN_MOVE(i) || IS_CUSTOM_ELEMENT(i))); @@ -4905,7 +4905,8 @@ static void InitGlobal(void) global.convert_leveldir = NULL; global.dumplevel_leveldir = NULL; global.dumptape_leveldir = NULL; - global.create_images_dir = NULL; + global.create_sketch_images_dir = NULL; + global.create_collect_images_dir = NULL; global.frames_per_second = 0; global.show_frames_per_second = FALSE; @@ -5067,6 +5068,7 @@ static void Execute_Command(char *command) strPrefix(command, "autoffwd ") || strPrefix(command, "autowarp ") || strPrefix(command, "autotest ") || + strPrefix(command, "autosave ") || strPrefix(command, "autofix ")) { char *str_ptr = getStringCopy(&command[8]); // read command parameters @@ -5076,6 +5078,7 @@ static void Execute_Command(char *command) strPrefix(command, "autoffwd") ? AUTOPLAY_MODE_FFWD : strPrefix(command, "autowarp") ? AUTOPLAY_MODE_WARP : strPrefix(command, "autotest") ? AUTOPLAY_MODE_TEST : + strPrefix(command, "autosave") ? AUTOPLAY_MODE_SAVE : strPrefix(command, "autofix") ? AUTOPLAY_MODE_FIX : AUTOPLAY_MODE_NONE); @@ -5189,13 +5192,21 @@ static void Execute_Command(char *command) program.headless = TRUE; } - else if (strPrefix(command, "create images ")) + else if (strPrefix(command, "create sketch images ")) { - global.create_images_dir = getStringCopy(&command[14]); + global.create_sketch_images_dir = getStringCopy(&command[21]); - if (access(global.create_images_dir, W_OK) != 0) + if (access(global.create_sketch_images_dir, W_OK) != 0) Fail("image target directory '%s' not found or not writable", - global.create_images_dir); + global.create_sketch_images_dir); + } + else if (strPrefix(command, "create collect image ")) + { + global.create_collect_images_dir = getStringCopy(&command[21]); + + if (access(global.create_collect_images_dir, W_OK) != 0) + Fail("image target directory '%s' not found or not writable", + global.create_collect_images_dir); } else if (strPrefix(command, "create CE image ")) { @@ -6294,11 +6305,16 @@ void OpenAll(void) DumpTapes(); return; } - else if (global.create_images_dir) + else if (global.create_sketch_images_dir) { CreateLevelSketchImages(); return; } + else if (global.create_collect_images_dir) + { + CreateCollectElementImages(); + return; + } InitNetworkServer();