diff --git a/code/__defines/_planes+layers.dm b/code/__defines/_planes+layers.dm index 6221409788..6a4d5c4d81 100644 --- a/code/__defines/_planes+layers.dm +++ b/code/__defines/_planes+layers.dm @@ -90,6 +90,8 @@ What is the naming convention for planes or layers? #define ON_WINDOW_LAYER 3.3 // Ontop of a window #define ABOVE_WINDOW_LAYER 3.4 //Above full tile windows so wall items are clickable +#define ABOVE_OBJ_PLANE -30 + // Mob planes #define MOB_PLANE -25 #define BELOW_MOB_LAYER 3.9 // Should be converted to plane swaps diff --git a/code/game/objects/effects/effect_system.dm b/code/game/objects/effects/effect_system.dm index 1a9f116789..3665c77e91 100644 --- a/code/game/objects/effects/effect_system.dm +++ b/code/game/objects/effects/effect_system.dm @@ -15,6 +15,7 @@ would spawn and follow the beaker, even if it is carried or thrown. pass_flags = PASSTABLE | PASSGRILLE blocks_emissive = EMISSIVE_BLOCK_GENERIC light_on = TRUE + plane = ABOVE_OBJ_PLANE /datum/effect/effect/system var/number = 3 @@ -267,11 +268,11 @@ steam.start() -- spawns the effect /obj/effect/effect/smoke/bad/burntfood color = "#000000" time_to_live = 600 - + /obj/effect/effect/smoke/bad/burntfood/process() for(var/mob/living/L in get_turf(src)) affect(L) - + /obj/effect/effect/smoke/bad/burntfood/affect(var/mob/living/L) // This stuff is extra-vile. if (!..()) return 0 @@ -392,7 +393,7 @@ steam.start() -- spawns the effect /datum/effect/effect/system/smoke_spread/bad smoke_type = /obj/effect/effect/smoke/bad - + /datum/effect/effect/system/smoke_spread/bad/burntfood smoke_type = /obj/effect/effect/smoke/bad/burntfood diff --git a/code/game/objects/effects/misc.dm b/code/game/objects/effects/misc.dm index 140f4e502d..725d26c1f5 100644 --- a/code/game/objects/effects/misc.dm +++ b/code/game/objects/effects/misc.dm @@ -25,7 +25,7 @@ desc = "Something swinging really wide." icon = 'icons/effects/96x96.dmi' icon_state = "cleave" - plane = MOB_PLANE + plane = ABOVE_MOB_PLANE layer = ABOVE_MOB_LAYER time_to_die = 6 alpha = 140 @@ -44,6 +44,7 @@ icon = 'icons/goonstation/featherzone.dmi' icon_state = "hazard-corners" time_to_die = 5 SECONDS + plane = PLANE_LIGHTING_ABOVE //VOREStation Edit End // The manifestation of Zeus's might. Or just a really unlucky day. @@ -100,6 +101,7 @@ /obj/effect/abstract mouse_opacity = MOUSE_OPACITY_TRANSPARENT + plane = ABOVE_MOB_PLANE /obj/effect/abstract/light_spot icon = 'icons/effects/eris_flashlight.dmi' @@ -119,14 +121,14 @@ /obj/effect/abstract/directional_lighting/proc/face_light(atom/movable/source, angle, distance) if(!loc) // We're in nullspace return - + // Save ourselves some matrix math if(angle != trans_angle) trans_angle = angle // Doing this in one operation (tn = turn(initial(tn), angle)) has strange results... light_spot.transform = initial(light_spot.transform) light_spot.transform = turn(light_spot.transform, angle) - + if(icon_dist != distance) icon_dist = distance switch(distance) @@ -143,8 +145,8 @@ if(!force) stack_trace("Directional light atom deleted, but not by our component") return QDEL_HINT_LETMELIVE - + vis_contents.Cut() qdel_null(light_spot) - + return ..() diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm index 3a62216be6..9fc898f8c8 100644 --- a/code/game/objects/effects/overlays.dm +++ b/code/game/objects/effects/overlays.dm @@ -7,6 +7,7 @@ name="beam" icon='icons/effects/beam.dmi' icon_state="b_beam" + plane = ABOVE_OBJ_PLANE var/tmp/atom/BeamSource /obj/effect/overlay/beam/New() @@ -62,6 +63,7 @@ icon = 'icons/turf/overlays.dmi' icon_state = "snow" anchored = 1 + plane = TURF_PLANE // Todo: Add a version that gradually reaccumulates over time by means of alpha transparency. -Spades /obj/effect/overlay/snow/attackby(obj/item/W as obj, mob/user as mob) diff --git a/code/game/objects/structures/cliff.dm b/code/game/objects/structures/cliff.dm index 7c7ce94e3e..10413e3424 100644 --- a/code/game/objects/structures/cliff.dm +++ b/code/game/objects/structures/cliff.dm @@ -34,6 +34,7 @@ two tiles on initialization, and which way a cliff is facing may change during m climbable = TRUE climb_delay = 10 SECONDS block_turf_edges = TRUE // Don't want turf edges popping up from the cliff edge. + plane = TURF_PLANE var/icon_variant = null // Used to make cliffs less repeative by having a selection of sprites to display. var/corner = FALSE // Used for icon things. diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm index dd4e5b4749..b258c35bb2 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm @@ -250,10 +250,12 @@ if(resting) animate(src,alpha = 40,time = 1 SECOND) mouse_opacity = 0 + plane = ABOVE_OBJ_PLANE else mouse_opacity = 1 icon_state = "wake" animate(src,alpha = 255,time = 1 SECOND) + plane = MOB_PLANE sleep(7) update_icon() //Potential glob noms @@ -342,7 +344,7 @@ var/global/list/disallowed_protean_accessories = list( if(!force && !isturf(loc)) to_chat(src,"You can't change forms while inside something.") return - + var/panel_was_up = FALSE if(client?.statpanel == "Protean") panel_was_up = TRUE @@ -472,8 +474,14 @@ var/global/list/disallowed_protean_accessories = list( /mob/living/carbon/human/proc/nano_outofblob(var/mob/living/simple_mob/protean_blob/blob, force) if(!istype(blob)) return +<<<<<<< HEAD if(blob.loc == /obj/item/weapon/rig/protean) //CHOMP Add return //CHOMP Add +||||||| parent of c7ec78b7a1... Merge pull request #10937 from Verkister/planecrap + +======= + +>>>>>>> c7ec78b7a1... Merge pull request #10937 from Verkister/planecrap if(!force && !isturf(blob.loc)) to_chat(blob,"You can't change forms while inside something.") return