diff --git a/src/hardware/hw_main.c b/src/hardware/hw_main.c index 90c969987fd410a022bb3a7d119f3fefd9fee369..397ef637100353feb5917044b98f01d9a85d51df 100644 --- a/src/hardware/hw_main.c +++ b/src/hardware/hw_main.c @@ -2468,7 +2468,23 @@ void HWR_Subsector(size_t num) if (gr_frontsector->ffloors) { - if (gr_frontsector->moved) + boolean anyMoved = gr_frontsector->moved; + + if (anyMoved == false) + { + for (rover = gr_frontsector->ffloors; rover; rover = rover->next) + { + sector_t *controlSec = §ors[rover->secnum]; + + if (controlSec->moved == true) + { + anyMoved = true; + break; + } + } + } + + if (anyMoved == true) { gr_frontsector->numlights = sub->sector->numlights = 0; R_Prep3DFloors(gr_frontsector);