From 02ca168df33555dabad000e2d75bdde2f26b93b7 Mon Sep 17 00:00:00 2001
From: Letter N <24603524+LetterN@users.noreply.github.com>
Date: Wed, 20 Jan 2021 11:37:44 +0800
Subject: [PATCH] why are we building windows facing nothing but rock infront
of it?
---
code/_onclick/hud/plane_master.dm | 6 ++--
code/game/objects/effects/overlays.dm | 42 ++++++++++++++++++++++--
code/game/turfs/open.dm | 16 +++++----
code/game/turfs/openspace/openspace.dm | 29 +++++++++++++---
code/game/turfs/openspace/transparent.dm | 7 +++-
code/game/turfs/space/space.dm | 1 +
6 files changed, 83 insertions(+), 18 deletions(-)
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