diff --git a/code/_onclick/hud/plane_master.dm b/code/_onclick/hud/plane_master.dm index f5b8991e20..4ef5d35ce0 100644 --- a/code/_onclick/hud/plane_master.dm +++ b/code/_onclick/hud/plane_master.dm @@ -28,9 +28,9 @@ . = ..() filters += filter(type="alpha", render_source=FIELD_OF_VISION_RENDER_TARGET, flags=MASK_INVERSE) - filters += filter(type = "drop_shadow", color = "#04080FAA", size = -10) - filters += filter(type = "drop_shadow", color = "#04080FAA", size = -15) - filters += filter(type = "drop_shadow", color = "#04080FAA", size = -20) + add_filter("first_stage_openspace", 1, drop_shadow_filter(color = "#04080FAA", size = -10)) + add_filter("second_stage_openspace", 2, drop_shadow_filter(color = "#04080FAA", size = -15)) + add_filter("third_stage_openspace", 2, drop_shadow_filter(color = "#04080FAA", size = -20)) /obj/screen/plane_master/proc/outline(_size, _color) filters += filter(type = "outline", size = _size, color = _color) diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm index b310119827..6be0a50a5e 100644 --- a/code/game/objects/effects/overlays.dm +++ b/code/game/objects/effects/overlays.dm @@ -49,6 +49,42 @@ /obj/effect/overlay/vis mouse_opacity = MOUSE_OPACITY_TRANSPARENT anchored = TRUE - vis_flags = NONE - var/unused = 0 //When detected to be unused it gets set to world.time, after a while it gets removed - var/cache_expiration = 2 MINUTES // overlays which go unused for 2 minutes get cleaned up + vis_flags = VIS_INHERIT_DIR + ///When detected to be unused it gets set to world.time, after a while it gets removed + var/unused = 0 + ///overlays which go unused for this amount of time get cleaned up + var/cache_expiration = 2 MINUTES + +// /obj/effect/overlay/atmos_excited +// name = "excited group" +// icon = null +// icon_state = null +// anchored = TRUE // should only appear in vis_contents, but to be safe +// appearance_flags = RESET_TRANSFORM | TILE_BOUND +// invisibility = INVISIBILITY_ABSTRACT +// mouse_opacity = MOUSE_OPACITY_TRANSPARENT + +// layer = ATMOS_GROUP_LAYER +// plane = ATMOS_GROUP_PLANE + +// /obj/effect/overlay/light_visible +// name = "" +// icon = 'icons/effects/light_overlays/light_32.dmi' +// icon_state = "light" +// layer = O_LIGHTING_VISUAL_LAYER +// plane = O_LIGHTING_VISUAL_PLANE +// appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM +// mouse_opacity = MOUSE_OPACITY_TRANSPARENT +// alpha = 0 +// vis_flags = NONE + +// /obj/effect/overlay/light_cone +// name = "" +// icon = 'icons/effects/light_overlays/light_cone.dmi' +// icon_state = "light" +// layer = O_LIGHTING_VISUAL_LAYER +// plane = O_LIGHTING_VISUAL_PLANE +// appearance_flags = RESET_COLOR | RESET_ALPHA | RESET_TRANSFORM +// mouse_opacity = MOUSE_OPACITY_TRANSPARENT +// vis_flags = NONE +// alpha = 110 diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index 7e00b1cf63..876c170923 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -1,12 +1,5 @@ /turf/open plane = FLOOR_PLANE - /// Does dirt buildup happen on us? - var/dirt_buildup_allowed = FALSE - /// Dirt level. - var/dirtyness = 0 - /// Dirt level to spawn dirt. Null to use config. - var/dirt_spawn_threshold - /// Slowdown applied to mobs on us. var/slowdown = 0 //negative for faster, positive for slower var/postdig_icon_change = FALSE @@ -18,6 +11,15 @@ var/clawfootstep = null var/heavyfootstep = null + /// Dirtyness system, cit specific. + + /// Does dirt buildup happen on us? + var/dirt_buildup_allowed = FALSE + /// Dirt level. + var/dirtyness = 0 + /// Dirt level to spawn dirt. Null to use config. + var/dirt_spawn_threshold + /turf/open/ComponentInitialize() . = ..() if(wet) diff --git a/code/game/turfs/openspace/openspace.dm b/code/game/turfs/openspace/openspace.dm index 0607f19dd3..69bdcf06cf 100644 --- a/code/game/turfs/openspace/openspace.dm +++ b/code/game/turfs/openspace/openspace.dm @@ -10,6 +10,8 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr plane = OPENSPACE_BACKDROP_PLANE mouse_opacity = MOUSE_OPACITY_TRANSPARENT layer = SPLASHSCREEN_LAYER + //I don't know why the others are aligned but I shall do the same. + vis_flags = VIS_INHERIT_ID /turf/open/transparent/openspace name = "open space" @@ -17,6 +19,7 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr icon_state = "transparent" baseturfs = /turf/open/transparent/openspace CanAtmosPassVertical = ATMOS_PASS_YES + intact = FALSE //this means wires go on top //mouse_opacity = MOUSE_OPACITY_TRANSPARENT var/can_cover_up = TRUE var/can_build_on = TRUE @@ -32,10 +35,14 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr /turf/open/transparent/openspace/show_bottom_level() return FALSE -/turf/open/transparent/openspace/Initialize() // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker +/turf/open/openspace/Initialize() // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker . = ..() - vis_contents += GLOB.openspace_backdrop_one_for_all //Special grey square for projecting backdrop darkness filter on it. + return INITIALIZE_HINT_LATELOAD + +/turf/open/openspace/LateInitialize() + . = ..() + // AddElement(/datum/element/turf_z_transparency, FALSE) /turf/open/transparent/openspace/can_have_cabling() if(locate(/obj/structure/lattice/catwalk, src)) @@ -95,6 +102,7 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr return if(L) if(R.use(1)) + qdel(L) to_chat(user, "You construct a catwalk.") playsound(src, 'sound/weapons/genhit.ogg', 50, TRUE) new/obj/structure/lattice/catwalk(src) @@ -148,9 +156,22 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr /turf/open/transparent/openspace/icemoon name = "ice chasm" baseturfs = /turf/open/transparent/openspace/icemoon - can_cover_up = TRUE - can_build_on = TRUE initial_gas_mix = ICEMOON_DEFAULT_ATMOS + planetary_atmos = TRUE + var/replacement_turf = /turf/open/floor/plating/asteroid/snow/icemoon + +/turf/open/transparent/openspace/icemoon/Initialize() + . = ..() + var/turf/T = below() + // if(T.flags_1 & NO_RUINS_1) + // ChangeTurf(replacement_turf, null, CHANGETURF_IGNORE_AIR) + // return + // if(!ismineralturf(T)) + // return + var/turf/closed/mineral/M = T + M.mineralAmt = 0 + M.gets_drilled() + baseturfs = /turf/open/transparent/openspace/icemoon //This is to ensure that IF random turf generation produces a openturf, there won't be other turfs assigned other than openspace. /turf/open/transparent/openspace/icemoon/can_zFall(atom/movable/A, levels = 1, turf/target) return TRUE diff --git a/code/game/turfs/openspace/transparent.dm b/code/game/turfs/openspace/transparent.dm index 8efc60a15b..fa5bc17638 100644 --- a/code/game/turfs/openspace/transparent.dm +++ b/code/game/turfs/openspace/transparent.dm @@ -66,7 +66,12 @@ /turf/open/transparent/glass/Initialize() icon_state = "" //Prevent the normal icon from appearing behind the smooth overlays - return ..() + ..() + return INITIALIZE_HINT_LATELOAD + +/turf/open/floor/glass/LateInitialize() + . = ..() + // AddElement(/datum/element/turf_z_transparency, TRUE) /turf/open/transparent/glass/wrench_act(mob/living/user, obj/item/I) to_chat(user, "You begin removing glass...") diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index 52b3436154..0905fb2e9c 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -20,6 +20,7 @@ dynamic_lighting = DYNAMIC_LIGHTING_DISABLED bullet_bounce_sound = null + vis_flags = VIS_INHERIT_ID //when this be added to vis_contents of something it be associated with something on clicking, important for visualisation of turf in openspace and interraction with openspace that show you turf. /turf/open/space/basic/New() //Do not convert to Initialize //This is used to optimize the map loader