GADGET_ID_BD_AMOEBA_2_CONTENT_ENCLOSED,
GADGET_ID_BD_AMOEBA_2_CONTENT_EXPLODING,
GADGET_ID_BD_AMOEBA_2_CONTENT_LOOKS_LIKE,
+ GADGET_ID_BD_SLIME_EATS_ELEMENT_1,
+ GADGET_ID_BD_SLIME_CONVERTS_TO_ELEMENT_1,
+ GADGET_ID_BD_SLIME_EATS_ELEMENT_2,
+ GADGET_ID_BD_SLIME_CONVERTS_TO_ELEMENT_2,
+ GADGET_ID_BD_SLIME_EATS_ELEMENT_3,
+ GADGET_ID_BD_SLIME_CONVERTS_TO_ELEMENT_3,
GADGET_ID_BD_ACID_EATS_ELEMENT,
GADGET_ID_BD_ACID_TURNS_TO_ELEMENT,
GADGET_ID_BD_BITER_EATS_ELEMENT,
ED_DRAWING_ID_BD_AMOEBA_2_CONTENT_ENCLOSED,
ED_DRAWING_ID_BD_AMOEBA_2_CONTENT_EXPLODING,
ED_DRAWING_ID_BD_AMOEBA_2_CONTENT_LOOKS_LIKE,
+ ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_1,
+ ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_1,
+ ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_2,
+ ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_2,
+ ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_3,
+ ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_3,
ED_DRAWING_ID_BD_ACID_EATS_ELEMENT,
ED_DRAWING_ID_BD_ACID_TURNS_TO_ELEMENT,
ED_DRAWING_ID_BD_BITER_EATS_ELEMENT,
},
{
ED_CHECKBUTTON_ID_BD_SLIME_IS_PREDICTABLE,
- ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(0),
+ ED_ELEMENT_SETTINGS_XPOS(0), ED_ELEMENT_SETTINGS_YPOS(1),
GADGET_ID_BD_SLIME_IS_PREDICTABLE, GADGET_ID_NONE,
&level.bd_slime_is_predictable,
NULL, NULL,
&level.bd_amoeba_2_content_looks_like, 1, 1,
"Use graphic of element:", NULL, NULL, NULL, "BD amoeba 2 looks like this element"
},
+ {
+ ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_1,
+ ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(5),
+ ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF,
+ GADGET_ID_BD_SLIME_EATS_ELEMENT_1, GADGET_ID_NONE,
+ &level.bd_slime_eats_element_1, 1, 1,
+ "Can eat:", NULL, NULL, NULL, "Element that can be eaten"
+ },
+ {
+ ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_1,
+ ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(5),
+ ED_AREA_1X1_SETTINGS_XOFF, ED_AREA_1X1_SETTINGS_YOFF,
+ GADGET_ID_BD_SLIME_CONVERTS_TO_ELEMENT_1, GADGET_ID_BD_SLIME_EATS_ELEMENT_1,
+ &level.bd_slime_converts_to_element_1, 1, 1,
+ " and convert to:", NULL, NULL, NULL, "Eaten element is converted to"
+ },
+ {
+ ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_2,
+ 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_SLIME_EATS_ELEMENT_2, GADGET_ID_NONE,
+ &level.bd_slime_eats_element_2, 1, 1,
+ "Can eat:", NULL, NULL, NULL, "Element that can be eaten"
+ },
+ {
+ ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_2,
+ 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_SLIME_CONVERTS_TO_ELEMENT_2, GADGET_ID_BD_SLIME_EATS_ELEMENT_2,
+ &level.bd_slime_converts_to_element_2, 1, 1,
+ " and convert to:", NULL, NULL, NULL, "Eaten element is converted to"
+ },
+ {
+ ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_3,
+ 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_SLIME_EATS_ELEMENT_3, GADGET_ID_NONE,
+ &level.bd_slime_eats_element_3, 1, 1,
+ "Can eat:", NULL, NULL, NULL, "Element that can be eaten"
+ },
+ {
+ ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_3,
+ 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_SLIME_CONVERTS_TO_ELEMENT_3, GADGET_ID_BD_SLIME_EATS_ELEMENT_3,
+ &level.bd_slime_converts_to_element_3, 1, 1,
+ " and convert to:", NULL, NULL, NULL, "Eaten element is converted to"
+ },
{
ED_DRAWING_ID_BD_ACID_EATS_ELEMENT,
ED_AREA_1X1_SETTINGS_XPOS(0), ED_AREA_1X1_SETTINGS_YPOS(1),
if (properties_element == EL_BD_SLIME)
{
MapCheckbuttonGadget(ED_CHECKBUTTON_ID_BD_SLIME_IS_PREDICTABLE);
+
+ MapDrawingArea(ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_1);
+ MapDrawingArea(ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_1);
+ MapDrawingArea(ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_2);
+ MapDrawingArea(ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_2);
+ MapDrawingArea(ED_DRAWING_ID_BD_SLIME_EATS_ELEMENT_3);
+ MapDrawingArea(ED_DRAWING_ID_BD_SLIME_CONVERTS_TO_ELEMENT_3);
}
if (IS_BD_EXPANDABLE_WALL(properties_element))
TYPE_INTEGER, CONF_VALUE_32_BIT(1),
&li.bd_slime_random_seed_c64, -1
},
+ {
+ EL_BD_SLIME, -1,
+ TYPE_ELEMENT, CONF_VALUE_16_BIT(1),
+ &li.bd_slime_eats_element_1, EL_BD_DIAMOND
+ },
+ {
+ EL_BD_SLIME, -1,
+ TYPE_ELEMENT, CONF_VALUE_16_BIT(2),
+ &li.bd_slime_converts_to_element_1, EL_BD_DIAMOND_FALLING
+ },
+ {
+ EL_BD_SLIME, -1,
+ TYPE_ELEMENT, CONF_VALUE_16_BIT(3),
+ &li.bd_slime_eats_element_2, EL_BD_ROCK
+ },
+ {
+ EL_BD_SLIME, -1,
+ TYPE_ELEMENT, CONF_VALUE_16_BIT(4),
+ &li.bd_slime_converts_to_element_2, EL_BD_ROCK_FALLING
+ },
+ {
+ EL_BD_SLIME, -1,
+ TYPE_ELEMENT, CONF_VALUE_16_BIT(5),
+ &li.bd_slime_eats_element_3, EL_BD_NUT
+ },
+ {
+ EL_BD_SLIME, -1,
+ TYPE_ELEMENT, CONF_VALUE_16_BIT(6),
+ &li.bd_slime_converts_to_element_3, EL_BD_NUT_FALLING
+ },
{
EL_BD_ACID, -1,
cave->level_slime_permeability_c64[0] = level->bd_slime_permeability_bits_c64;
cave->level_slime_seed_c64[0] = level->bd_slime_random_seed_c64;
cave->level_rand[0] = level->bd_cave_random_seed_c64;
+ cave->slime_eats_1 = map_element_RND_to_BD_cave(level->bd_slime_eats_element_1);
+ cave->slime_converts_1 = map_element_RND_to_BD_cave(level->bd_slime_converts_to_element_1);
+ cave->slime_eats_2 = map_element_RND_to_BD_cave(level->bd_slime_eats_element_2);
+ cave->slime_converts_2 = map_element_RND_to_BD_cave(level->bd_slime_converts_to_element_2);
+ cave->slime_eats_3 = map_element_RND_to_BD_cave(level->bd_slime_eats_element_3);
+ cave->slime_converts_3 = map_element_RND_to_BD_cave(level->bd_slime_converts_to_element_3);
cave->acid_eats_this = map_element_RND_to_BD_cave(level->bd_acid_eats_element);
cave->acid_spread_ratio = level->bd_acid_spread_rate * 10000;
level->bd_slime_permeability_bits_c64 = cave->level_slime_permeability_c64[bd_level_nr];
level->bd_slime_random_seed_c64 = cave->level_slime_seed_c64[bd_level_nr];
level->bd_cave_random_seed_c64 = cave->level_rand[bd_level_nr];
+ level->bd_slime_eats_element_1 = map_element_BD_to_RND_cave(cave->slime_eats_1);
+ level->bd_slime_converts_to_element_1 = map_element_BD_to_RND_cave(cave->slime_converts_1);
+ level->bd_slime_eats_element_2 = map_element_BD_to_RND_cave(cave->slime_eats_2);
+ level->bd_slime_converts_to_element_2 = map_element_BD_to_RND_cave(cave->slime_converts_2);
+ level->bd_slime_eats_element_3 = map_element_BD_to_RND_cave(cave->slime_eats_3);
+ level->bd_slime_converts_to_element_3 = map_element_BD_to_RND_cave(cave->slime_converts_3);
level->bd_acid_eats_element = map_element_BD_to_RND_cave(cave->acid_eats_this);
level->bd_acid_spread_rate = cave->acid_spread_ratio / 10000;