X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=c2a197819d61fb2d7f21b17adfc5dea21ab2eb30;hb=929b071507a0fc9dfd5b667ca563137f65062dd7;hp=f53022f7dad8d0d8dc11b572891b85350777f2b8;hpb=4eff89df72ffc45c4ad59fcd01860eb8f4179b9c;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index f53022f7..c2a19781 100644 --- a/src/init.c +++ b/src/init.c @@ -1271,6 +1271,19 @@ static void InitElementSpecialGraphicInfo(void) action = -1; } + // for BD effect editor graphics, replace element with effect element, if exists + if (action != -1 && special == GFX_SPECIAL_ARG_EDITOR) + { + int element_bd = map_element_RND_to_BD_effect(element, action); + int element_ef = map_element_BD_to_RND_cave(element_bd); + + if (element_ef != EL_UNKNOWN) + { + element = element_ef; + action = -1; + } + } + if (element >= MAX_NUM_ELEMENTS) continue; @@ -4279,6 +4292,15 @@ void InitElementPropertiesStatic(void) EL_AMOEBA_FULL, EL_BD_AMOEBA, EL_BD_AMOEBA_2, + EL_BD_SLIME, + EL_BD_ACID, + EL_BD_BITER, + EL_BD_BITER_RIGHT, + EL_BD_BITER_UP, + EL_BD_BITER_LEFT, + EL_BD_BITER_DOWN, + EL_BD_BLADDER, + EL_BD_NUT, EL_EMC_MAGIC_BALL, EL_EMC_ANDROID, EL_MM_GRAY_BALL, @@ -4575,6 +4597,7 @@ void InitElementPropertiesStatic(void) { EL_INTERNAL_CASCADE_BD_ACTIVE, EL_INTERNAL_CASCADE_BD_NATIVE_ACTIVE, + EL_INTERNAL_CASCADE_BD_EFFECTS_ACTIVE, EL_INTERNAL_CASCADE_EM_ACTIVE, EL_INTERNAL_CASCADE_EMC_ACTIVE, EL_INTERNAL_CASCADE_RND_ACTIVE, @@ -4600,6 +4623,7 @@ void InitElementPropertiesStatic(void) { EL_INTERNAL_CASCADE_BD, EL_INTERNAL_CASCADE_BD_NATIVE, + EL_INTERNAL_CASCADE_BD_EFFECTS, EL_INTERNAL_CASCADE_EM, EL_INTERNAL_CASCADE_EMC, EL_INTERNAL_CASCADE_RND, @@ -6246,9 +6270,9 @@ static void InitOverrideArtwork(void) gfx.override_level_music = FALSE; // now check if this level set has definitions for custom elements - if (setup.override_level_graphics == AUTO || - setup.override_level_sounds == AUTO || - setup.override_level_music == AUTO) + if (setup.override_level_graphics == MODE_AUTO || + setup.override_level_sounds == MODE_AUTO || + setup.override_level_music == MODE_AUTO) redefined_ce_found = (CheckArtworkTypeForRedefinedCustomElements(ARTWORK_TYPE_GRAPHICS) | CheckArtworkTypeForRedefinedCustomElements(ARTWORK_TYPE_SOUNDS) | @@ -6261,14 +6285,14 @@ static void InitOverrideArtwork(void) if (redefined_ce_found) { - // this level set has CE definitions: change "AUTO" to "FALSE" + // this level set has CE definitions: change "MODE_AUTO" to "FALSE" gfx.override_level_graphics = (setup.override_level_graphics == TRUE); gfx.override_level_sounds = (setup.override_level_sounds == TRUE); gfx.override_level_music = (setup.override_level_music == TRUE); } else { - // this level set has no CE definitions: change "AUTO" to "TRUE" + // this level set has no CE definitions: change "MODE_AUTO" to "TRUE" gfx.override_level_graphics = (setup.override_level_graphics != FALSE); gfx.override_level_sounds = (setup.override_level_sounds != FALSE); gfx.override_level_music = (setup.override_level_music != FALSE);