From c2670a2bd5ed12c7ab1904286fee4279a79eebb0 Mon Sep 17 00:00:00 2001 From: Neerti Date: Mon, 22 Jan 2018 16:12:05 -0500 Subject: [PATCH] Makes Overlay Hidden w/o Mesons --- code/__defines/_planes+layers.dm | 3 +++ code/__defines/mobs.dm | 4 +++- code/game/turfs/flooring/flooring_decals.dm | 2 +- code/game/turfs/simulated/floor_icon.dm | 11 ++++++++++- code/modules/clothing/glasses/glasses.dm | 2 +- code/modules/mob/mob_planes.dm | 2 ++ 6 files changed, 20 insertions(+), 4 deletions(-) diff --git a/code/__defines/_planes+layers.dm b/code/__defines/_planes+layers.dm index baff5ad577..3000776d86 100644 --- a/code/__defines/_planes+layers.dm +++ b/code/__defines/_planes+layers.dm @@ -58,6 +58,8 @@ What is the naming convention for planes or layers? //////////////////////////////////////////////////////////////////////////////////////// //#define TURF_LAYER 2 //For easy recordkeeping; this is a byond define + #define DECALS_LAYER 2.01 + #define OVERTURF_LAYER 2.1 #define DOOR_OPEN_LAYER 2.7 //Under all objects if opened. 2.7 due to tables being at 2.6 //#define OBJ_LAYER 3 //For easy recordkeeping; this is a byond define #define DOOR_CLOSED_LAYER 3.1 //Above most items if closed @@ -91,6 +93,7 @@ What is the naming convention for planes or layers? #define PLANE_CH_SPECIAL 23 //Special role icon (revhead or w/e) #define PLANE_CH_STATUS_OOC 24 //OOC status hud for spooks +#define PLANE_MESONS 30 //Stuff seen with mesons, like open ceilings. This is 30 for downstreams. //Fullscreen overlays under inventory #define PLANE_FULLSCREEN 90 //Blindness, mesons, druggy, etc diff --git a/code/__defines/mobs.dm b/code/__defines/mobs.dm index cb0ecc37f5..c3f367b766 100644 --- a/code/__defines/mobs.dm +++ b/code/__defines/mobs.dm @@ -252,4 +252,6 @@ #define VIS_ADMIN2 17 #define VIS_ADMIN3 18 -#define VIS_COUNT 18 //Must be highest number from above. \ No newline at end of file +#define VIS_MESONS 19 + +#define VIS_COUNT 19 //Must be highest number from above. \ No newline at end of file diff --git a/code/game/turfs/flooring/flooring_decals.dm b/code/game/turfs/flooring/flooring_decals.dm index 86a7ac1a32..9c1968fd3c 100644 --- a/code/game/turfs/flooring/flooring_decals.dm +++ b/code/game/turfs/flooring/flooring_decals.dm @@ -6,7 +6,7 @@ var/list/floor_decals = list() /obj/effect/floor_decal name = "floor decal" icon = 'icons/turf/flooring/decals.dmi' - layer = TURF_LAYER + 0.01 + layer = DECALS_LAYER var/supplied_dir /obj/effect/floor_decal/New(var/newloc, var/newdir, var/newcolour) diff --git a/code/game/turfs/simulated/floor_icon.dm b/code/game/turfs/simulated/floor_icon.dm index ed116d1bf4..b2992e4a2f 100644 --- a/code/game/turfs/simulated/floor_icon.dm +++ b/code/game/turfs/simulated/floor_icon.dm @@ -1,5 +1,14 @@ var/list/flooring_cache = list() +var/image/no_ceiling_image = null + +/hook/startup/proc/setup_no_ceiling_image() + cache_no_ceiling_image() + +/proc/cache_no_ceiling_image() + no_ceiling_image = image(icon = 'icons/turf/open_space.dmi', icon_state = "no_ceiling", layer = OVERTURF_LAYER) + no_ceiling_image.plane = PLANE_MESONS + /turf/simulated/floor/update_icon(var/update_neighbors) if(lava) @@ -87,7 +96,7 @@ var/list/flooring_cache = list() // 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) + overlays |= no_ceiling_image /turf/simulated/floor/proc/get_flooring_overlay(var/cache_key, var/icon_base, var/icon_dir = 0) if(!flooring_cache[cache_key]) diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index f7806ad245..87aef44851 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -70,7 +70,7 @@ BLIND // can't see anything origin_tech = list(TECH_MAGNET = 2, TECH_ENGINEERING = 2) toggleable = 1 vision_flags = SEE_TURFS - enables_planes = (VIS_FULLBRIGHT) + enables_planes = list(VIS_FULLBRIGHT, VIS_MESONS) /obj/item/clothing/glasses/meson/New() ..() diff --git a/code/modules/mob/mob_planes.dm b/code/modules/mob/mob_planes.dm index 25c494c2e8..5f7beceafe 100644 --- a/code/modules/mob/mob_planes.dm +++ b/code/modules/mob/mob_planes.dm @@ -33,6 +33,8 @@ plane_masters[VIS_D_COLORBLIND] = new /obj/screen/plane_master/colorblindness //Colorblindness (affects world) plane_masters[VIS_D_COLORBLINDI]= new /obj/screen/plane_master/colorblindness/items //Colorblindness (items in HUD, subplane of above, don't toggle) + plane_masters[VIS_MESONS] = new /obj/screen/plane_master{plane = PLANE_MESONS} //Meson-specific things like open ceilings. + ..() /datum/plane_holder/Destroy()