From b0cf9356b7afe81fa17d42ef52b3c21eb3cfd077 Mon Sep 17 00:00:00 2001 From: CitadelStationBot Date: Wed, 2 Aug 2017 05:20:12 -0500 Subject: [PATCH] Combine the two changeturf procs into one --- code/game/turfs/turf.dm | 23 ++++++++++++++++++++++ code/modules/lighting/lighting_turf.dm | 27 -------------------------- 2 files changed, 23 insertions(+), 27 deletions(-) diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 3641eae0d3..55dbb86b29 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -219,6 +219,12 @@ if(!GLOB.use_preloader && path == type && !forceop) // Don't no-op if the map loader requires it to be reconstructed return src + var/old_opacity = opacity + var/old_dynamic_lighting = dynamic_lighting + var/old_affecting_lights = affecting_lights + var/old_lighting_object = lighting_object + var/old_corners = corners + var/old_baseturf = baseturf changing_turf = TRUE qdel(src) //Just get the side effects and call Destroy @@ -232,6 +238,23 @@ if(!defer_change) W.AfterChange(ignore_air) + if(SSlighting.initialized) + recalc_atom_opacity() + lighting_object = old_lighting_object + affecting_lights = old_affecting_lights + corners = old_corners + if (old_opacity != opacity || dynamic_lighting != old_dynamic_lighting) + reconsider_lights() + + if (dynamic_lighting != old_dynamic_lighting) + if (IS_DYNAMIC_LIGHTING(src)) + lighting_build_overlay() + else + lighting_clear_overlay() + + for(var/turf/open/space/S in RANGE_TURFS(1, src)) //RANGE_TURFS is in code\__HELPERS\game.dm + S.update_starlight() + return W /turf/proc/AfterChange(ignore_air = FALSE) //called after a turf has been replaced in ChangeTurf() diff --git a/code/modules/lighting/lighting_turf.dm b/code/modules/lighting/lighting_turf.dm index 92a7a25eac..3aca57c4bf 100644 --- a/code/modules/lighting/lighting_turf.dm +++ b/code/modules/lighting/lighting_turf.dm @@ -142,30 +142,3 @@ corners[i] = new/datum/lighting_corner(src, GLOB.LIGHTING_CORNER_DIAGONAL[i]) -/turf/ChangeTurf(path) - if (!path || (!GLOB.use_preloader && path == type) || !SSlighting.initialized) - return ..() - - var/old_opacity = opacity - var/old_dynamic_lighting = dynamic_lighting - var/old_affecting_lights = affecting_lights - var/old_lighting_object = lighting_object - var/old_corners = corners - - . = ..() //At this point the turf has changed - - recalc_atom_opacity() - lighting_object = old_lighting_object - affecting_lights = old_affecting_lights - corners = old_corners - if (old_opacity != opacity || dynamic_lighting != old_dynamic_lighting) - reconsider_lights() - - if (dynamic_lighting != old_dynamic_lighting) - if (IS_DYNAMIC_LIGHTING(src)) - lighting_build_overlay() - else - lighting_clear_overlay() - - for(var/turf/open/space/S in RANGE_TURFS(1, src)) //RANGE_TURFS is in code\__HELPERS\game.dm - S.update_starlight() \ No newline at end of file