From ffa9a3974cb18558766736822f3a93b11ee644cf Mon Sep 17 00:00:00 2001 From: Fabian Greffrath Date: Sun, 12 Jan 2025 15:05:01 +0100 Subject: [PATCH] fix fast doors reopening with wrong sound (#2139) * fix fast doors reopening with wrong sound Thanks @MrAlaux for pointing me to this fix. * change comp flag description accordingly --- src/g_game.c | 2 +- src/p_doors.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/g_game.c b/src/g_game.c index 4ab793158..6879ebbc0 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -4780,7 +4780,7 @@ void G_BindCompVariables(void) BIND_COMP(comp_vile, 0, "Arch-viles can create ghost monsters"); BIND_COMP(comp_pain, 0, "Pain elementals are limited to 20 lost souls"); BIND_COMP(comp_skull, 0, "Lost souls can spawn past impassable lines"); - BIND_COMP(comp_blazing, 0, "Blazing doors make double closing sounds"); + BIND_COMP(comp_blazing, 0, "Incorrect sound behavior for blazing doors"); BIND_COMP(comp_doorlight, 0, "Door lighting changes are immediate"); BIND_COMP(comp_god, 0, "God mode isn't absolute"); BIND_COMP(comp_skymap, 0, "Don't apply invulnerability palette to skies"); diff --git a/src/p_doors.c b/src/p_doors.c index f2702a7f2..f8308fd0b 100644 --- a/src/p_doors.c +++ b/src/p_doors.c @@ -174,6 +174,16 @@ void T_VerticalDoor (vldoor_t *door) case doorClose: // Close types do not bounce, merely wait break; + case blazeRaise: + case genBlazeRaise: + door->direction = 1; + if (!STRICTMODE_COMP(comp_blazing)) + { + S_StartSound((mobj_t *)&door->sector->soundorg,sfx_bdopn); + break; + } + // fallthrough + default: // other types bounce off the obstruction door->direction = 1; S_StartSound((mobj_t *)&door->sector->soundorg,sfx_doropn);