From b197ad86c0801f6139e4f147bf22bd375c9dfb63 Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Mon, 22 Apr 2024 19:03:39 +0200 Subject: [PATCH] added setup option to show invisible exit in BD engine --- src/files.c | 5 +++++ src/game_bd/bd_gameplay.c | 6 +----- src/libgame/system.h | 1 + src/screens.c | 1 + 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/files.c b/src/files.c index 53c87771..ce6928b7 100644 --- a/src/files.c +++ b/src/files.c @@ -10771,6 +10771,10 @@ static struct TokenInfo global_setup_tokens[] = TYPE_SWITCH, &setup.bd_scroll_delay, "bd_scroll_delay" }, + { + TYPE_SWITCH, + &setup.bd_show_invisible_outbox, "bd_show_invisible_outbox" + }, { TYPE_SWITCH3, &setup.bd_smooth_movements, "bd_smooth_movements" @@ -11631,6 +11635,7 @@ static void setSetupInfoToDefaults(struct SetupInfo *si) si->bd_skip_uncovering = FALSE; si->bd_skip_hatching = FALSE; si->bd_scroll_delay = TRUE; + si->bd_show_invisible_outbox = FALSE; si->bd_smooth_movements = AUTO; si->bd_pushing_graphics = TRUE; si->bd_up_down_graphics = TRUE; diff --git a/src/game_bd/bd_gameplay.c b/src/game_bd/bd_gameplay.c index a981c81b..7a4d889c 100644 --- a/src/game_bd/bd_gameplay.c +++ b/src/game_bd/bd_gameplay.c @@ -17,10 +17,6 @@ #include "main_bd.h" -// universal settings -static boolean gd_no_invisible_outbox = FALSE; - - void gd_game_free(GdGame *game) { // stop sounds @@ -572,7 +568,7 @@ static GdGameState gd_game_main_int(GdGame *game, boolean allow_iterate, boolean // 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->last_element_buffer, game->gfx_buffer, - game->bonus_life_flash != 0, game->animcycle, gd_no_invisible_outbox); + game->bonus_life_flash != 0, game->animcycle, setup.bd_show_invisible_outbox); game->state_counter = counter_next; diff --git a/src/libgame/system.h b/src/libgame/system.h index 19a9747a..6706f201 100644 --- a/src/libgame/system.h +++ b/src/libgame/system.h @@ -1515,6 +1515,7 @@ struct SetupInfo boolean bd_skip_uncovering; boolean bd_skip_hatching; boolean bd_scroll_delay; + boolean bd_show_invisible_outbox; int bd_smooth_movements; // not boolean -- can also be "AUTO" int bd_pushing_graphics; // not boolean -- can also be "AUTO" int bd_up_down_graphics; // not boolean -- can also be "AUTO" diff --git a/src/screens.c b/src/screens.c index 7360b9c7..ea44e566 100644 --- a/src/screens.c +++ b/src/screens.c @@ -7976,6 +7976,7 @@ static struct TokenInfo setup_info_engines[] = { TYPE_YES_NO_AUTO, &setup.bd_pushing_graphics, "Use Player Pushing Graphics:" }, { TYPE_YES_NO_AUTO, &setup.bd_up_down_graphics, "Use Player Up/Down Graphics:" }, { TYPE_YES_NO_AUTO, &setup.bd_skip_falling_sounds, "Mute Double Falling Sounds:" }, + { TYPE_SWITCH, &setup.bd_show_invisible_outbox,"Show invisible outbox:" }, { TYPE_ENTER_LIST, &execSetupChoosePaletteC64, "Color Palette (C64):" }, { TYPE_STRING, &bd_palette_c64_text, "" }, { TYPE_ENTER_LIST, &execSetupChoosePaletteC64DTV, "Color Palette (C64DTV):" }, -- 2.34.1