X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame_bd%2Fbd_gameplay.c;h=a981c81bcf8c4037d9625b00ae89f55d81c2ce88;hb=3b292f6abf8f677bbfdbd9b583c54113b8e64959;hp=55905ec6961f9355387ab2ad81cfa3ac0c1dcb06;hpb=53eb378f7b2264e792eedf961575e07e3e587528;p=rocksndiamonds.git diff --git a/src/game_bd/bd_gameplay.c b/src/game_bd/bd_gameplay.c index 55905ec6..a981c81b 100644 --- a/src/game_bd/bd_gameplay.c +++ b/src/game_bd/bd_gameplay.c @@ -116,6 +116,10 @@ static void load_cave(GdGame *game) game->cave = gd_get_prepared_cave(game->original_cave, game->level_num); + // if requested, recolor cave (cave is a copy only, so no worries) + if (setup.bd_random_colors) + gd_cave_set_random_colors(game->cave, setup.bd_default_color_type); + if (game->cave->intermission && game->cave->intermission_instantlife) add_bonus_life(game, FALSE); @@ -567,7 +571,7 @@ static GdGameState gd_game_main_int(GdGame *game, boolean allow_iterate, boolean // always render the cave to the gfx buffer; // however it may do nothing if animcycle was not changed. if (game->element_buffer && game->gfx_buffer) - gd_drawcave_game(game->cave, game->element_buffer, game->gfx_buffer, + gd_drawcave_game(game->cave, game->element_buffer, game->last_element_buffer, game->gfx_buffer, game->bonus_life_flash != 0, game->animcycle, gd_no_invisible_outbox); game->state_counter = counter_next;