diff --git a/code/game/area/Space Station 13 areas.dm b/code/game/area/Space Station 13 areas.dm index 49d87ed1a6..2c75c0d255 100755 --- a/code/game/area/Space Station 13 areas.dm +++ b/code/game/area/Space Station 13 areas.dm @@ -1645,7 +1645,6 @@ area/space/atmosalert() requires_power = 1 always_unpowered = 1 dynamic_lighting = 0 - base_turf = /turf/space auxport name = "\improper Fore Port Solar Array" diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index df744d1df3..8f5719b8e8 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -122,10 +122,7 @@ build_delay = deconstruct ? 50 : 20 build_cost = deconstruct ? 10 : 3 build_type = deconstruct ? "floor" : "wall" - if(F.check_destroy_override(F)) - build_turf = deconstruct ? destroy_floor_override_path : /turf/simulated/wall - else - build_turf = deconstruct ? /turf/space : /turf/simulated/wall + build_turf = deconstruct ? get_base_turf_by_area(F) : /turf/simulated/wall if(!build_type) working = 0 diff --git a/code/game/turfs/simulated.dm b/code/game/turfs/simulated.dm index a47590d55d..aac979ff5c 100644 --- a/code/game/turfs/simulated.dm +++ b/code/game/turfs/simulated.dm @@ -62,16 +62,6 @@ /turf/simulated/proc/initialize() return -/turf/simulated/proc/check_destroy_override() - if(destroy_floor_override) //Don't bother doing the additional checks if we don't have to. - var/area/my_area = get_area(src) -// my_area = my_area.master - if(is_type_in_list(my_area, destroy_floor_override_ignore_areas)) - return 0 - if(z in destroy_floor_override_z_levels) - return 1 - return 0 - /turf/simulated/proc/AddTracks(var/typepath,var/bloodDNA,var/comingdir,var/goingdir,var/bloodcolor="#A10808") var/obj/effect/decal/cleanable/blood/tracks/tracks = locate(typepath) in src if(!tracks) diff --git a/code/game/turfs/simulated/floor_icon.dm b/code/game/turfs/simulated/floor_icon.dm index 4bc4911f2e..ed116d1bf4 100644 --- a/code/game/turfs/simulated/floor_icon.dm +++ b/code/game/turfs/simulated/floor_icon.dm @@ -84,6 +84,11 @@ var/list/flooring_cache = list() continue F.update_icon() + // Show 'ceilingless' overlay. + var/turf/above = GetAbove(src) + if(above && isopenspace(above) && !istype(src, /turf/simulated/floor/outdoors)) // This won't apply to outdoor turfs since its assumed they don't have a ceiling anyways. + overlays |= image(icon = 'icons/turf/open_space.dmi', icon_state = "no_ceiling", layer = TURF_LAYER + 0.02) + /turf/simulated/floor/proc/get_flooring_overlay(var/cache_key, var/icon_base, var/icon_dir = 0) if(!flooring_cache[cache_key]) var/image/I = image(icon = flooring.icon, icon_state = icon_base, dir = icon_dir) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 376fb8e452..fcd0a31479 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -211,10 +211,7 @@ /turf/simulated/wall/ex_act(severity) switch(severity) if(1.0) - if(check_destroy_override()) - src.ChangeTurf(destroy_floor_override_path) - else - src.ChangeTurf(/turf/space) + src.ChangeTurf(get_base_turf_by_area(src)) if(2.0) if(prob(75)) take_damage(rand(150, 250)) diff --git a/code/game/turfs/turf_changing.dm b/code/game/turfs/turf_changing.dm index 78946ff832..84d832b45c 100644 --- a/code/game/turfs/turf_changing.dm +++ b/code/game/turfs/turf_changing.dm @@ -12,9 +12,14 @@ // Called after turf replaces old one /turf/proc/post_change() levelupdate() - var/turf/simulated/open/T = GetAbove(src) - if(istype(T)) - T.update_icon() + + var/turf/simulated/open/above = GetAbove(src) + if(istype(above)) + above.update_icon() + + var/turf/simulated/below = GetBelow(src) + if(istype(below)) + below.update_icon() // To add or remove the 'ceiling-less' overlay. //Creates a new turf /turf/proc/ChangeTurf(var/turf/N, var/tell_universe=1, var/force_lighting_update = 0) diff --git a/code/global.dm b/code/global.dm index 69d5642f10..3bf111ef4f 100644 --- a/code/global.dm +++ b/code/global.dm @@ -38,17 +38,6 @@ var/changelog_hash = "" var/game_year = (text2num(time2text(world.realtime, "YYYY")) + 544) var/round_progressing = 1 - //On some maps, it does not make sense for space turf to appear when something blows up (e.g. on an asteroid colony, or planetside) - //The turf listed here is what is created after ex_act() and other tile-destroying procs are called on a turf that - //is not already in a blacklisted area. - //Set to 1 to enable it. -var/destroy_floor_override = 1 - //Below is the path of turf used in place of space tiles. -var/destroy_floor_override_path = /turf/simulated/mineral/floor - //A list of z-levels to apply the override to. This is so z-levels like tcomms work as they did before. -var/list/destroy_floor_override_z_levels = list(1,4,5) - //Some areas you may want to not turn into the override path you made above, like space or the solars. -var/list/destroy_floor_override_ignore_areas = list(/area/space,/area/solar,/area/shuttle) var/master_mode = "extended" // "extended" var/secret_force_mode = "secret" // if this is anything but "secret", the secret rotation will forceably choose this mode. diff --git a/code/modules/multiz/turf.dm b/code/modules/multiz/turf.dm index 636918c5e8..9d07df4508 100644 --- a/code/modules/multiz/turf.dm +++ b/code/modules/multiz/turf.dm @@ -52,6 +52,7 @@ below = GetBelow(src) turf_changed_event.register(below, src, /turf/simulated/open/update_icon) levelupdate() + below.update_icon() // So the 'ceiling-less' overlay gets added. for(var/atom/movable/A in src) A.fall() OS_controller.add_turf(src, 1) diff --git a/icons/turf/open_space.dmi b/icons/turf/open_space.dmi index 8c5810fffc..4b3ba1fb67 100644 Binary files a/icons/turf/open_space.dmi and b/icons/turf/open_space.dmi differ diff --git a/maps/northern_star/northern_star.dm b/maps/northern_star/northern_star.dm index fe95bbaeb6..ece2630096 100644 --- a/maps/northern_star/northern_star.dm +++ b/maps/northern_star/northern_star.dm @@ -7,6 +7,7 @@ #include "polaris-5.dmm" #include "northern_star_defines.dm" + #include "northern_star_areas.dm" #include "northern_star_shuttles.dm" #define USING_MAP_DATUM /datum/map/northern_star diff --git a/maps/northern_star/northern_star_areas.dm b/maps/northern_star/northern_star_areas.dm new file mode 100644 index 0000000000..836ebc5aaa --- /dev/null +++ b/maps/northern_star/northern_star_areas.dm @@ -0,0 +1,5 @@ +// Eventually we should move all the Northern Star-centric areas here so future maps can have a less polluted area list but that involves a lot of work and headaches. + +// Solars are 'sticking out' from the rock and so shouldn't have rock underneath them. +/area/solar + base_turf = /turf/space \ No newline at end of file