diff --git a/source/games/sw/src/copysect.cpp b/source/games/sw/src/copysect.cpp index 9d021659e..f5ec31ae8 100644 --- a/source/games/sw/src/copysect.cpp +++ b/source/games/sw/src/copysect.cpp @@ -214,7 +214,7 @@ void CopySectorMatch(int match) dsectp->speed = ssectp->speed; dsectp->damage = ssectp->damage; dsectp->number = ssectp->number; - dsectp->u_defined = ssectp->u_defined; + if (ssectp->u_defined) dsectp->u_defined = true; dsectp->flags2 = ssectp->flags2; dsectp->hitag = ssectp->hitag; diff --git a/source/games/sw/src/track.cpp b/source/games/sw/src/track.cpp index 4ab6171c5..e1b16aa02 100644 --- a/source/games/sw/src/track.cpp +++ b/source/games/sw/src/track.cpp @@ -2192,7 +2192,8 @@ void CallbackSOsink(ANIMp ap, void *data) // destsect->floorz = srcsect->floorz; RESET(destsect->floorstat, CSTAT_SECTOR_ALIGN); - ASSERT(destsect->hasU() && srcsect->hasU()); + destsect->u_defined = true; + ASSERT(srcsect->hasU()); tgt_depth = FixedToInt(srcsect->depth_fixed);