diff --git a/src/p_spec.c b/src/p_spec.c index c73118515..7ee047afb 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -7547,6 +7547,10 @@ static boolean P_FadeFakeFloor(ffloor_t *rover, INT16 destvalue, INT16 speed, rover->flags &= ~FF_EXISTS; else rover->flags |= FF_EXISTS; + + // Re-render lighting at end of fade + if (dolighting && !(rover->spawnflags & FF_NOSHADE) && !(rover->flags & FF_EXISTS)) + rover->target->moved = true; } if (dotranslucent) @@ -7588,7 +7592,13 @@ static boolean P_FadeFakeFloor(ffloor_t *rover, INT16 destvalue, INT16 speed, else { if (doexists && !(rover->spawnflags & FF_BUSTUP)) + { + // Re-render lighting if we haven't yet set FF_EXISTS (beginning of fade) + if (dolighting && !(rover->spawnflags & FF_NOSHADE) && !(rover->flags & FF_EXISTS)) + rover->target->moved = true; + rover->flags |= FF_EXISTS; + } if (dotranslucent) {