changed showing standard element properties for some engines in editor
[rocksndiamonds.git] / src / editor.c
index 7566391988dbcdb635f32465cdab4ad98fe0afd2..f21d086ea693aa6a9225d11f7c9eb4c787d2a0ae 100644 (file)
@@ -10602,30 +10602,10 @@ static void InitDrawingElements(void)
   if (level.game_engine_type == game_engine_type_last)
     return;
 
-  if (level.game_engine_type == GAME_ENGINE_TYPE_BD)
-  {
-    new_element1 = EL_BD_WALL;
-    new_element2 = EL_EMPTY;
-    new_element3 = EL_BD_SAND;
-  }
-  else if (level.game_engine_type == GAME_ENGINE_TYPE_SP)
-  {
-    new_element1 = EL_SP_CHIP_SINGLE;
-    new_element2 = EL_EMPTY;
-    new_element3 = EL_SP_BASE;
-  }
-  else if (level.game_engine_type == GAME_ENGINE_TYPE_MM)
-  {
-    new_element1 = EL_MM_MIRROR_START;
-    new_element2 = EL_EMPTY;
-    new_element3 = EL_MM_WOODEN_WALL;
-  }
-  else
-  {
-    new_element1 = EL_WALL;
-    new_element2 = EL_EMPTY;
-    new_element3 = EL_SAND;
-  }
+  // select drawing elements according to game engine type
+  new_element1 = getDrawingElement(EL_WALL);
+  new_element2 = getDrawingElement(EL_EMPTY);
+  new_element3 = getDrawingElement(EL_SAND);
 
   game_engine_type_last = level.game_engine_type;
 }
@@ -12003,33 +11983,38 @@ static void DrawPropertiesInfo(void)
 
   ypos += 2 * MAX(font1_height, font2_height);
 
-  // ----- print standard properties of this element
+  // ----- print standard properties of this element (only for certain game engines)
 
-  DrawTextS(xpos, ypos, font1_nr, properties_text);
+  if (level.game_engine_type == GAME_ENGINE_TYPE_RND ||
+      level.game_engine_type == GAME_ENGINE_TYPE_EM ||
+      level.game_engine_type == GAME_ENGINE_TYPE_SP)
+  {
+    DrawTextS(xpos, ypos, font1_nr, properties_text);
 
-  ypos += line1_height;
+    ypos += line1_height;
 
-  for (i = 0; properties[i].value != -1; i++)
-  {
-    if (!HAS_PROPERTY(properties_element, properties[i].value))
-      continue;
+    for (i = 0; properties[i].value != -1; i++)
+    {
+      if (!HAS_PROPERTY(properties_element, properties[i].value))
+       continue;
 
-    DrawTextS(xpos, ypos, font2_nr, properties[i].text);
+      DrawTextS(xpos, ypos, font2_nr, properties[i].text);
 
-    ypos += font2_height;
+      ypos += font2_height;
 
-    num_standard_properties++;
-  }
+      num_standard_properties++;
+    }
 
-  if (num_standard_properties == 0)
-  {
-    DrawTextS(xpos + properties_text_len, ypos - line1_height + font2_yoffset,
-             font2_nr, none_text);
+    if (num_standard_properties == 0)
+    {
+      DrawTextS(xpos + properties_text_len, ypos - line1_height + font2_yoffset,
+               font2_nr, none_text);
 
-    ypos -= (line1_height - font1_height);
-  }
+      ypos -= (line1_height - font1_height);
+    }
 
-  ypos += MAX(font1_height, font2_height);
+    ypos += MAX(font1_height, font2_height);
+  }
 
   // ----- print special description of this element