X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Feditor.c;h=2ca3dfba9b78b79f44b409c4af2b4a7cbdba8258;hb=f86b45bef20957bce2bca71880becbbb145203b1;hp=2837433467cc8e95e2005bfa87e06a5fd6f496a0;hpb=ddb2715ae847d9fd5b10e49e2ad814c12ce389f8;p=rocksndiamonds.git diff --git a/src/editor.c b/src/editor.c index 28374334..2ca3dfba 100644 --- a/src/editor.c +++ b/src/editor.c @@ -565,6 +565,8 @@ enum GADGET_ID_BD_AMOEBA_2_CONTENT_LOOKS_LIKE, GADGET_ID_BD_ACID_EATS_ELEMENT, GADGET_ID_BD_ACID_TURNS_TO_ELEMENT, + GADGET_ID_BD_BITER_EATS_ELEMENT, + GADGET_ID_BD_BLADDER_CONVERTS_BY_ELEMENT, GADGET_ID_START_ELEMENT, GADGET_ID_ARTWORK_ELEMENT, GADGET_ID_EXPLOSION_ELEMENT, @@ -1176,6 +1178,8 @@ enum ED_DRAWING_ID_BD_AMOEBA_2_CONTENT_LOOKS_LIKE, ED_DRAWING_ID_BD_ACID_EATS_ELEMENT, ED_DRAWING_ID_BD_ACID_TURNS_TO_ELEMENT, + ED_DRAWING_ID_BD_BITER_EATS_ELEMENT, + ED_DRAWING_ID_BD_BLADDER_CONVERTS_BY_ELEMENT, ED_DRAWING_ID_START_ELEMENT, ED_DRAWING_ID_ARTWORK_ELEMENT, ED_DRAWING_ID_EXPLOSION_ELEMENT, @@ -4357,6 +4361,22 @@ static struct &level.bd_acid_turns_to_element, 1, 1, "Can leave behind:", NULL, NULL, NULL, "Turns to this element after spreading" }, + { + ED_DRAWING_ID_BD_BITER_EATS_ELEMENT, + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(2), + ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, + GADGET_ID_BD_BITER_EATS_ELEMENT, GADGET_ID_NONE, + &level.bd_biter_eats_element, 1, 1, + "Can eat:", NULL, NULL, NULL, "Eats this element when moving" + }, + { + ED_DRAWING_ID_BD_BLADDER_CONVERTS_BY_ELEMENT, + ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(1), + ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF, + GADGET_ID_BD_BLADDER_CONVERTS_BY_ELEMENT, GADGET_ID_NONE, + &level.bd_bladder_converts_by_element, 1, 1, + "Turns to clock by touching:", NULL, NULL, NULL, "Turns to clock by touching element" + }, // ---------- level start element ------------------------------------------- @@ -10876,6 +10896,7 @@ static void DrawPropertiesInfo(void) #define TEXT_PERMEABILITY_BITS "slime permeability bits" #define TEXT_RANDOM_SEED "slime random number seed" #define TEXT_ACID_SPREAD_RATE "Spread rate (percent)" +#define TEXT_BITER_MOVE_DELAY "Move delay (BD frames)" static struct { @@ -11000,6 +11021,16 @@ static struct -1, 65535 }, { EL_BD_ACID, &level.bd_acid_spread_rate, TEXT_ACID_SPREAD_RATE, 0, 100 }, + { EL_BD_BITER, &level.bd_biter_move_delay, TEXT_BITER_MOVE_DELAY, + 0, 3 }, + { EL_BD_BITER_RIGHT, &level.bd_biter_move_delay, TEXT_BITER_MOVE_DELAY, + 0, 3 }, + { EL_BD_BITER_UP, &level.bd_biter_move_delay, TEXT_BITER_MOVE_DELAY, + 0, 3 }, + { EL_BD_BITER_LEFT, &level.bd_biter_move_delay, TEXT_BITER_MOVE_DELAY, + 0, 3 }, + { EL_BD_BITER_DOWN, &level.bd_biter_move_delay, TEXT_BITER_MOVE_DELAY, + 0, 3 }, { EL_EXTRA_TIME, &level.extra_time, TEXT_TIME_BONUS }, { EL_TIME_ORB_FULL, &level.time_orb_time, TEXT_TIME_BONUS }, { EL_GAME_OF_LIFE, &level.game_of_life[0], TEXT_GAME_OF_LIFE_1,0,8 }, @@ -11238,6 +11269,14 @@ static void DrawPropertiesConfig(void) MapDrawingArea(ED_DRAWING_ID_BD_ACID_EATS_ELEMENT); MapDrawingArea(ED_DRAWING_ID_BD_ACID_TURNS_TO_ELEMENT); } + else if (IS_BD_BITER(properties_element)) + { + MapDrawingArea(ED_DRAWING_ID_BD_BITER_EATS_ELEMENT); + } + else if (properties_element == EL_BD_BLADDER) + { + MapDrawingArea(ED_DRAWING_ID_BD_BLADDER_CONVERTS_BY_ELEMENT); + } else if (properties_element == EL_YAMYAM || properties_element == EL_YAMYAM_LEFT || properties_element == EL_YAMYAM_RIGHT ||