X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Feditor.c;h=1f17252a5b18cdec58d63a9460aa24824f94e8ec;hb=0f6b2c62e0c72652c8b2093995845e02b91c51d3;hp=54ef18b83ddfca8704f17fcd30b37850e2f2cef8;hpb=9e22f1d2bc2c6eab5fd85ef0c7782e348adf4e4f;p=rocksndiamonds.git diff --git a/src/editor.c b/src/editor.c index 54ef18b8..1f17252a 100644 --- a/src/editor.c +++ b/src/editor.c @@ -749,8 +749,10 @@ enum GADGET_ID_BD_DIAGONAL_MOVEMENTS, GADGET_ID_BD_TOPMOST_PLAYER_ACTIVE, GADGET_ID_BD_PUSH_MEGA_ROCK_WITH_SWEET, + GADGET_ID_BD_MAGIC_WALL_ZERO_INFINITE, GADGET_ID_BD_MAGIC_WALL_WAIT_HATCHING, GADGET_ID_BD_MAGIC_WALL_STOPS_AMOEBA, + GADGET_ID_BD_MAGIC_WALL_BREAK_SCAN, GADGET_ID_BD_AMOEBA_WAIT_FOR_HATCHING, GADGET_ID_BD_AMOEBA_START_IMMEDIATELY, GADGET_ID_BD_AMOEBA_2_EXPLODE_BY_AMOEBA, @@ -1105,8 +1107,10 @@ enum ED_CHECKBUTTON_ID_BD_DIAGONAL_MOVEMENTS, ED_CHECKBUTTON_ID_BD_TOPMOST_PLAYER_ACTIVE, ED_CHECKBUTTON_ID_BD_PUSH_MEGA_ROCK_WITH_SWEET, + ED_CHECKBUTTON_ID_BD_MAGIC_WALL_ZERO_INFINITE, ED_CHECKBUTTON_ID_BD_MAGIC_WALL_WAIT_HATCHING, ED_CHECKBUTTON_ID_BD_MAGIC_WALL_STOPS_AMOEBA, + ED_CHECKBUTTON_ID_BD_MAGIC_WALL_BREAK_SCAN, ED_CHECKBUTTON_ID_BD_AMOEBA_WAIT_FOR_HATCHING, ED_CHECKBUTTON_ID_BD_AMOEBA_START_IMMEDIATELY, ED_CHECKBUTTON_ID_BD_AMOEBA_2_EXPLODE_BY_AMOEBA, @@ -3824,8 +3828,16 @@ static struct "Mega rocks pushable with sweet", "Push mega rocks after eating sweet" }, { - ED_CHECKBUTTON_ID_BD_MAGIC_WALL_WAIT_HATCHING, + ED_CHECKBUTTON_ID_BD_MAGIC_WALL_ZERO_INFINITE, ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(2), + GADGET_ID_BD_MAGIC_WALL_ZERO_INFINITE, GADGET_ID_NONE, + &level.bd_magic_wall_zero_infinite, + NULL, NULL, + "Run forever if duration is zero", "Run infinitely if timer is zero" + }, + { + ED_CHECKBUTTON_ID_BD_MAGIC_WALL_WAIT_HATCHING, + ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(3), GADGET_ID_BD_MAGIC_WALL_WAIT_HATCHING, GADGET_ID_NONE, &level.bd_magic_wall_wait_hatching, NULL, NULL, @@ -3833,12 +3845,20 @@ static struct }, { ED_CHECKBUTTON_ID_BD_MAGIC_WALL_STOPS_AMOEBA, - ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(3), + ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(4), GADGET_ID_BD_MAGIC_WALL_STOPS_AMOEBA, GADGET_ID_NONE, &level.bd_magic_wall_stops_amoeba, NULL, NULL, "Stop amoeba and turn to diamonds", "Activation changes amoeba to diamonds" }, + { + ED_CHECKBUTTON_ID_BD_MAGIC_WALL_BREAK_SCAN, + ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(5), + GADGET_ID_BD_MAGIC_WALL_BREAK_SCAN, GADGET_ID_NONE, + &level.bd_magic_wall_break_scan, + NULL, NULL, + "Emulate amoeba bug in BD1", "Use buggy BD1 behavior" + }, { ED_CHECKBUTTON_ID_BD_AMOEBA_WAIT_FOR_HATCHING, ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(1), @@ -4477,7 +4497,7 @@ static struct { ED_DRAWING_ID_BD_MAGIC_WALL_DIAMOND_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(4), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(6), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_DIAMOND_TO, GADGET_ID_NONE, &level.bd_magic_wall_diamond_to, 1, 1, @@ -4485,7 +4505,7 @@ static struct }, { ED_DRAWING_ID_BD_MAGIC_WALL_ROCK_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(5), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(7), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_ROCK_TO, GADGET_ID_NONE, &level.bd_magic_wall_rock_to, 1, 1, @@ -4493,7 +4513,7 @@ static struct }, { ED_DRAWING_ID_BD_MAGIC_WALL_MEGA_ROCK_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(6), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(8), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_MEGA_ROCK_TO, GADGET_ID_NONE, &level.bd_magic_wall_mega_rock_to, 1, 1, @@ -4501,7 +4521,7 @@ static struct }, { ED_DRAWING_ID_BD_MAGIC_WALL_NUT_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(7), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(9), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_NUT_TO, GADGET_ID_NONE, &level.bd_magic_wall_nut_to, 1, 1, @@ -4509,7 +4529,7 @@ static struct }, { ED_DRAWING_ID_BD_MAGIC_WALL_NITRO_PACK_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(8), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(10), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_NITRO_PACK_TO, GADGET_ID_NONE, &level.bd_magic_wall_nitro_pack_to, 1, 1, @@ -4517,7 +4537,7 @@ static struct }, { ED_DRAWING_ID_BD_MAGIC_WALL_FLYING_DIAMOND_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(9), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(11), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_FLYING_DIAMOND_TO, GADGET_ID_NONE, &level.bd_magic_wall_flying_diamond_to, 1, 1, @@ -4525,7 +4545,7 @@ static struct }, { ED_DRAWING_ID_BD_MAGIC_WALL_FLYING_ROCK_TO, - ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(10), + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(12), ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, GADGET_ID_BD_MAGIC_WALL_FLYING_ROCK_TO, GADGET_ID_NONE, &level.bd_magic_wall_flying_rock_to, 1, 1, @@ -11925,8 +11945,10 @@ static void DrawPropertiesConfig(void) // draw stickybutton gadget MapCheckbuttonGadget(ED_CHECKBUTTON_ID_STICK_ELEMENT); + MapCheckbuttonGadget(ED_CHECKBUTTON_ID_BD_MAGIC_WALL_ZERO_INFINITE); MapCheckbuttonGadget(ED_CHECKBUTTON_ID_BD_MAGIC_WALL_WAIT_HATCHING); MapCheckbuttonGadget(ED_CHECKBUTTON_ID_BD_MAGIC_WALL_STOPS_AMOEBA); + MapCheckbuttonGadget(ED_CHECKBUTTON_ID_BD_MAGIC_WALL_BREAK_SCAN); MapDrawingArea(ED_DRAWING_ID_BD_MAGIC_WALL_DIAMOND_TO); MapDrawingArea(ED_DRAWING_ID_BD_MAGIC_WALL_ROCK_TO);