X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=063ce800dd5f6bf6cb6c6c9e5dece794218336d0;hb=90863c926554302e589b60a85a3468b31292c4ff;hp=13d92656d537b2a3410edc1ea9bd003bd6c9a8bf;hpb=0f6b2c62e0c72652c8b2093995845e02b91c51d3;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 13d92656..063ce800 100644 --- a/src/main.h +++ b/src/main.h @@ -965,6 +965,9 @@ (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) @@ -2064,7 +2067,8 @@ #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 @@ -2301,6 +2305,10 @@ #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