diff --git a/code/game/area/Space Station 13 areas.dm b/code/game/area/Space Station 13 areas.dm index c0456b67778..82fe75b3cf7 100644 --- a/code/game/area/Space Station 13 areas.dm +++ b/code/game/area/Space Station 13 areas.dm @@ -97,7 +97,7 @@ var/list/ghostteleportlocs = list() no_teleportlocs = TRUE requires_power = FALSE valid_territory = FALSE - dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_FORCED /area/shuttle/arrival name = "\improper Arrival Shuttle" diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index 7e3013658c8..394fe3d0908 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -126,7 +126,7 @@ var/const/access_free_golems = 300 var/acc = M.get_access() //see mob.dm - if(acc == IGNORE_ACCESS) + if(acc == IGNORE_ACCESS || M.can_admin_interact()) return 1 //Mob ignores access else diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index dc7de45f695..44b4c1fa9cf 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -186,6 +186,7 @@ return if(!use_preloader && path == type) // Don't no-op if the map loader requires it to be reconstructed return src + set_light(0) var/old_opacity = opacity var/old_dynamic_lighting = dynamic_lighting @@ -209,13 +210,14 @@ 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) + if(old_opacity != opacity || dynamic_lighting != old_dynamic_lighting) reconsider_lights() - if (dynamic_lighting != old_dynamic_lighting) - if (IS_DYNAMIC_LIGHTING(src)) + if(dynamic_lighting != old_dynamic_lighting) + if(IS_DYNAMIC_LIGHTING(src)) lighting_build_overlay() else lighting_clear_overlay() @@ -485,6 +487,8 @@ continue if(istype(A, /obj/docking_port)) continue + if(istype(A, /atom/movable/lighting_object)) + continue if(!A.simulated) continue qdel(A, force=TRUE) diff --git a/code/modules/lighting/lighting_object.dm b/code/modules/lighting/lighting_object.dm index 2e549a3b68d..930e953d5eb 100644 --- a/code/modules/lighting/lighting_object.dm +++ b/code/modules/lighting/lighting_object.dm @@ -10,6 +10,7 @@ mouse_opacity = MOUSE_OPACITY_TRANSPARENT layer = LIGHTING_LAYER invisibility = INVISIBILITY_LIGHTING + simulated = FALSE var/needs_update = FALSE var/turf/myturf diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index 9a4f948307d..c72b0896893 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -442,11 +442,6 @@ if(canMove()) return -1 - -// //rotate transit docking ports, so we don't need zillions of variants -// if(istype(S1, /obj/docking_port/stationary/transit)) -// S1.dir = turn(NORTH, -travelDir) - var/obj/docking_port/stationary/S0 = get_docked() var/turf_type = /turf/space var/area_type = /area/space @@ -467,8 +462,6 @@ rotation += (rotation % 90) //diagonal rotations not allowed, round up rotation = SimplifyDegrees(rotation) - - //remove area surrounding docking port if(areaInstance.contents.len) var/area/A0 = locate("[area_type]") @@ -506,10 +499,12 @@ if(rotation) T1.shuttleRotate(rotation) - //lighting stuff + //atmos and lighting stuff SSair.remove_from_active(T1) T1.CalculateAdjacentTurfs() SSair.add_to_active(T1,1) + + T1.lighting_build_overlay() T0.ChangeTurf(turf_type)