diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 3a4c6b40b4c..85108e8688f 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -200,6 +200,20 @@ if (!N) return +///// Z-Level Stuff ///// This makes sure that turfs are not changed to space when one side is part of a zone + if(N == /turf/space) + var/turf/controler = locate(1, 1, src.z) + for(var/obj/effect/landmark/zcontroler/c in controler) + if(c.down) + var/turf/below = locate(src.x, src.y, c.down_target) + if((below.zone || zone) && !istype(below, /turf/space)) // dont make open space into space, its pointless and makes people drop out of the station + var/turf/W = src.ChangeTurf(/turf/simulated/floor/open) + var/list/temp = list() + temp += W + c.add(temp,3,1) // report the new open space to the zcontroler + return W +///// Z-Level Stuff + var/old_lumcount = lighting_lumcount - initial(lighting_lumcount) if(ispath(N, /turf/simulated/floor)) @@ -337,4 +351,4 @@ if(!t.density) if(!LinkBlocked(src, t) && !TurfBlockedNonWindow(t)) L.Add(t) - return L \ No newline at end of file + return L