removed redundant code
[rocksndiamonds.git] / src / main.h
index 13d92656d537b2a3410edc1ea9bd003bd6c9a8bf..063ce800dd5f6bf6cb6c6c9e5dece794218336d0 100644 (file)
                                         (e) == EL_BD_CONVEYOR_DIR_SWITCH ||    \
                                         (e) == EL_BD_CONVEYOR_DIR_SWITCH_ACTIVE)
 
+#define IS_BD_RUNTIME_ELEMENT(e)       ((e) >= EL_BD_RUNTIME_START &&          \
+                                        (e) <= EL_BD_RUNTIME_END)
+
 #define IS_SOKOBAN_OBJECT_OR_FIELD(e)  ((e) == EL_SOKOBAN_OBJECT ||            \
                                         (e) == EL_SOKOBAN_FIELD_EMPTY ||       \
                                         (e) == EL_SOKOBAN_FIELD_FULL)
 #define EL_DF_END_2                            EL_DF_SLOPE_END
 
 // BD style elements (normal)
-#define EL_BD_EMPTY_SPACE                      1253
+#define EL_BD_START                            1253
+#define EL_BD_EMPTY_SPACE                      EL_BD_START
 #define EL_BD_EMPTY                            EL_BD_EMPTY_SPACE
 #define EL_BD_SAND                             1254
 #define EL_BD_SAND_2                           1255
 #define EL_BD_NUT_BREAKING_2                   1484
 #define EL_BD_NUT_BREAKING_3                   1485
 #define EL_BD_NUT_BREAKING_4                   1486
+#define EL_BD_END                              EL_BD_NUT_BREAKING_4
+
+#define EL_BD_RUNTIME_START                    EL_BD_SAND_BALL_FALLING
+#define EL_BD_RUNTIME_END                      EL_BD_NUT_BREAKING_4
 
 #define NUM_FILE_ELEMENTS                      1487
 
@@ -2743,6 +2751,7 @@ enum
   GFX_SPECIAL_ARG_SETUP_SHORTCUTS_3,
   GFX_SPECIAL_ARG_SETUP_SHORTCUTS_4,
   GFX_SPECIAL_ARG_SETUP_SHORTCUTS_5,
+  GFX_SPECIAL_ARG_SETUP_SHORTCUTS_6,
   GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK,
   GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER,
 
@@ -3750,6 +3759,13 @@ struct LevelInfo
   int bd_bomb_explosion_turns_to;      // BD bomb explosion changes to specified element
   int bd_nitro_explosion_turns_to;     // BD nitro pack explosion changes to specified element
   int bd_explosion_turns_to;           // BD other explosions change to specified element
+  int bd_color_b;                      // BD engine C64-style cave color (border)
+  int bd_color_0;                      // BD engine C64-style cave color (background)
+  int bd_color_1;                      // BD engine C64-style cave color (sand)
+  int bd_color_2;                      // BD engine C64-style cave color (steel wall)
+  int bd_color_3;                      // BD engine C64-style cave color (wall)
+  int bd_color_4;                      // BD engine C64-style cave color (amoeba)
+  int bd_color_5;                      // BD engine C64-style cave color (slime)
 
   boolean em_slippery_gems;            // EM style "gems slip from wall" behaviour
   boolean em_explodes_by_fire;         // EM style chain explosion behaviour
@@ -3798,6 +3814,8 @@ struct LevelInfo
 
   boolean file_has_custom_elements;    // set when level file contains CEs
 
+  int bd_color_type;                   // set according to BD colors in level
+
   boolean no_valid_file;               // set when level file missing or invalid
   boolean no_level_file;               // set when falling back to level template