added checking availability of level specific colors in level editor
[rocksndiamonds.git] / src / editor.c
index d17e9684b8c7b95de18bc5aed712c782b595c910..77f8d3289653c47ab389602b9d0d668ea8ea5679 100644 (file)
@@ -7389,6 +7389,11 @@ static struct XY xy_directions[] =
 // functions
 // ----------------------------------------------------------------------------
 
+boolean isLevelEditorFastStart(void)
+{
+  return (level_editor_test_game && setup.editor.fast_game_start);
+}
+
 static int getMaxInfoTextLength(void)
 {
   return (SXSIZE / getFontWidth(INFOTEXT_FONT));
@@ -11446,6 +11451,20 @@ static void DrawEngineConfigColors(void)
 {
   int i;
 
+  if (!hasColorTemplate_BD())
+  {
+    int font_nr = FONT_TEXT_1;
+    int font_height = getFontHeight(font_nr);
+    int yoffset_above = font_height + ED_GADGET_LINE_DISTANCE;
+    int xpos = ED_ENGINE_SETTINGS_X(0);
+    int ypos = ED_ENGINE_SETTINGS_Y(0);
+
+    PrintInfoText("No level specific colors available.", font_nr, xpos, ypos - yoffset_above);
+    PrintInfoText("(Not supported by graphics set.)", font_nr, xpos, ypos);
+
+    return;
+  }
+
   if (bd_color_type_changed)
   {
     if (level.bd_color_type != GD_COLOR_TYPE_RGB && level.bd_color_type != GetCommonColorType_BD())
@@ -12123,7 +12142,7 @@ static struct
   { EL_EMC_DRIPPER,            &level.amoeba_speed,                    TEXT_AMOEBA_SPEED       },
   { EL_BDX_AMOEBA_1,           &level.bd_amoeba_1_threshold_too_big,   TEXT_AMOEBA_THRESHOED   },
   { EL_BDX_AMOEBA_1,           &level.bd_amoeba_1_slow_growth_time,    TEXT_AMOEBA_SLOW_TIME   },
-  { EL_BDX_AMOEBA_2,           &level.bd_amoeba_1_slow_growth_rate,    TEXT_AMOEBA_SLOW_RATE,
+  { EL_BDX_AMOEBA_1,           &level.bd_amoeba_1_slow_growth_rate,    TEXT_AMOEBA_SLOW_RATE,
                                0, 100                                                          },
   { EL_BDX_AMOEBA_1,           &level.bd_amoeba_1_fast_growth_rate,    TEXT_AMOEBA_FAST_RATE,
                                0, 100                                                          },
@@ -12358,8 +12377,8 @@ static void DrawPropertiesConfig(void)
                               (CAN_GROW(properties_element)                    ? 1 : 0) +
                               (COULD_MOVE_INTO_ACID(properties_element)        ? 1 : 0) +
                               (MAYBE_DONT_COLLIDE_WITH(properties_element)     ? 1 : 0) +
-                              (properties_element == EL_BDX_AMOEBA_1           ? 3 : 0) +
-                              (properties_element == EL_BDX_AMOEBA_2           ? 3 : 0) +
+                              (properties_element == EL_BDX_AMOEBA_1           ? 2 : 0) +
+                              (properties_element == EL_BDX_AMOEBA_2           ? 2 : 0) +
                               (properties_element == EL_BDX_MAGIC_WALL         ? 1 : 0) +
                               (properties_element == EL_BDX_VOODOO_DOLL        ? 4 : 0) +
                               (properties_element == EL_BDX_SLIME              ? 1 : 0) +