diff --git a/code/modules/planet/sun.dm b/code/modules/planet/sun.dm index 91d095172c..3903543be6 100644 --- a/code/modules/planet/sun.dm +++ b/code/modules/planet/sun.dm @@ -77,7 +77,6 @@ color = "#FFFFFF" var/turfs_providing_spreads = list() - var/turfs_receiving_spreads = list() var/spreads = list() /atom/movable/sun_visuals/New() @@ -131,10 +130,11 @@ // Inner corner else OL = spreads["i[direction]"] - T.vis_contents += OL - LAZYADD(localspreads, OL) - LAZYADD(turfs_receiving_spreads[dirturf], OL) + dirturf.vis_contents += OL dirturf.set_luminosity(1) + LAZYINITLIST(localspreads) + LAZYINITLIST(localspreads[dirturf]) + LAZYADD(localspreads[dirturf], OL) // Take all orthagonals for(var/direction in cardinal) @@ -146,10 +146,11 @@ if(TL && TR && TL.outdoors != TR.outdoors) continue var/atom/movable/sun_visuals_overlap/OL = spreads["[direction]"] - T.vis_contents += OL - LAZYADD(localspreads, OL) - LAZYADD(turfs_receiving_spreads[dirturf], OL) + dirturf.vis_contents += OL dirturf.set_luminosity(1) + LAZYINITLIST(localspreads) + LAZYINITLIST(localspreads[dirturf]) + LAZYADD(localspreads[dirturf], OL) if(LAZYLEN(localspreads)) turfs_providing_spreads[T] = localspreads @@ -157,10 +158,12 @@ /atom/movable/sun_visuals/proc/remove_from_turf(var/turf/T) T.vis_contents -= src T.dynamic_lumcount -= 0.5 - T.set_luminosity(!IS_DYNAMIC_LIGHTING(T), TRUE) + T.set_luminosity(0, TRUE) var/list/applied = turfs_providing_spreads[T] if(LAZYLEN(applied)) - T.vis_contents -= applied + for(var/turf/old as anything in applied) + old.vis_contents -= applied[old] + applied -= old turfs_providing_spreads -= T applied.Cut() @@ -176,12 +179,3 @@ ..() icon_state = newstate dir = newdir - if(newdir & NORTH) - pixel_y = 32 - else if(newdir & SOUTH) - pixel_y = -32 - - if(newdir & EAST) - pixel_x = 32 - else if(newdir & WEST) - pixel_x = -32 diff --git a/maps/tether/tether_turfs.dm b/maps/tether/tether_turfs.dm index 5bec9aef79..9bd9d58e3a 100644 --- a/maps/tether/tether_turfs.dm +++ b/maps/tether/tether_turfs.dm @@ -2,8 +2,8 @@ VIRGO3B_TURF_CREATE(/turf/simulated/open) /turf/simulated/open/virgo3b edge_blending_priority = 0.5 //Turfs which also have e_b_p and higher than this will plop decorative edges onto this turf -/turf/simulated/open/virgo3b/New() - ..() +/turf/simulated/open/virgo3b/Initialize(mapload) + . = ..() if(outdoors) SSplanets.addTurf(src)