X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=0d7c6dd8079dae94976c2b85059b54430c2b8fb4;hb=a9e2c4e384951f6c0d91370655ac80ee570a383d;hp=aadbe74dcaf486c587c8fe59496d0f4b547695a5;hpb=f36facaa50d9c7cbfe56f34f0269bb4b9bdcc1fa;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index aadbe74d..0d7c6dd8 100644 --- a/src/screens.c +++ b/src/screens.c @@ -1142,8 +1142,13 @@ static void InitializeTitleControls_CheckTitleInfo(boolean initial) int graphic = getTitleScreenGraphic(i, initial); Bitmap *bitmap = graphic_info[graphic].bitmap; int sort_priority = graphic_info[graphic].sort_priority; + boolean has_title_screen = (bitmap != NULL); - if (bitmap != NULL) + // check for optional title screen of native BD style level set + if (!has_title_screen && level.game_engine_type == GAME_ENGINE_TYPE_BD && !initial && i == 0) + has_title_screen = (GetTitleScreen_BD() != NULL); + + if (has_title_screen) InitializeTitleControlsExt_AddTitleInfo(TRUE, initial, i, sort_priority); } @@ -1605,6 +1610,20 @@ static void DrawTitleScreenImage(int nr, boolean initial) int src_y = graphic_info[graphic].src_y; int dst_x, dst_y; + // check for optional title screen of native BD style level set + if (bitmap == NULL && level.game_engine_type == GAME_ENGINE_TYPE_BD && !initial && nr == 0) + { + bitmap = GetTitleScreen_BD(); + + if (bitmap != NULL) + { + width = bitmap->width; + height = bitmap->height; + src_x = 0; + src_y = 0; + } + } + if (bitmap == NULL) return;