diff --git a/code/modules/ventcrawl/ventcrawl_atmospherics.dm b/code/modules/ventcrawl/ventcrawl_atmospherics.dm index 6884dba1ffa..128a9319f82 100644 --- a/code/modules/ventcrawl/ventcrawl_atmospherics.dm +++ b/code/modules/ventcrawl/ventcrawl_atmospherics.dm @@ -23,81 +23,6 @@ L.ventcrawl_layer = layer . = ..() -/obj/machinery/atmospherics/binary/pump/Entered(atom/movable/AM) - . = ..() - Blend(AM, network2) - -/obj/machinery/atmospherics/unary/vent_scrubber/Entered(atom/movable/AM) - . = ..() - Blend(AM, null) - -/obj/machinery/atmospherics/unary/outlet_injector/Entered(atom/movable/AM) - . = ..() - Blend(AM, null) - -//Blends a mob AM and outputs the contents via vents in pipe_network N -// If the network is not set, creates a local cloud -/obj/machinery/atmospherics/proc/Blend(atom/movable/AM, var/datum/pipe_network/N) - //If its not small or the device isnt enabled, it wont blend - if(!issmall(AM) || !use_power) - return FALSE - - //Get the things we need to create the "output" - var/mob/living/L = AM - - if(L.mob_size > MOB_TINY) - return - - var/blood_color = "#A10808" - if(L.blood_color) - blood_color = L.blood_color - - if(iscarbon(AM)) - var/mob/living/carbon/C = AM - blood_color = C.species.blood_color - - var/reagent_amount = L.mob_size * 2 - - //Blend the Mob - to_chat(AM, SPAN_DANGER("\The [src] blends you to a fine dust.")) - L.death() - qdel(L) - - //Output what´s left through the connected vents - if(N) - var/count = 0 - for(var/V in N.normal_members) - CHECK_TICK - if(count > reagent_amount) - return TRUE - var/obj/machinery/atmospherics/unary/vent_pump/vent = V - if(istype(V, /obj/machinery/atmospherics/unary/vent_pump) && vent.loc && !vent.is_welded()) - var/datum/reagents/R = new/datum/reagents(reagent_amount) - R.my_atom = vent - R.add_reagent(/singleton/reagent/blood, reagent_amount, list("blood_colour" = blood_color)) - - var/datum/effect/effect/system/smoke_spread/chem/smoke = new - smoke.show_log = 0 // This displays a log on creation - smoke.show_touch_log = 1 // This displays a log when a player is chemically affected - smoke.set_up(R, 3, 0, vent, 20) - playsound(vent.loc, 'sound/effects/smoke.ogg', 50, 1, -3) - smoke.start() - qdel(R) - count++ - else - var/datum/reagents/R = new/datum/reagents(reagent_amount) - R.my_atom = src - R.add_reagent(/singleton/reagent/blood, reagent_amount, list("blood_colour" = blood_color)) - - var/datum/effect/effect/system/smoke_spread/chem/smoke = new - smoke.show_log = 0 // This displays a log on creation - smoke.show_touch_log = 1 // This displays a log when a player is chemically affected - smoke.set_up(R, 3, 0, src, 20) - playsound(src.loc, 'sound/effects/smoke.ogg', 50, 1, -3) - smoke.start() - qdel(R) - return TRUE - /obj/machinery/atmospherics/relaymove(mob/living/user, direction) if(user.loc != src || !(direction & initialize_directions)) //can't go in a way we aren't connecting to return diff --git a/html/changelogs/Sniblet-PR-15480.yml b/html/changelogs/Sniblet-PR-15480.yml new file mode 100644 index 00000000000..f661c9dc08c --- /dev/null +++ b/html/changelogs/Sniblet-PR-15480.yml @@ -0,0 +1,6 @@ +author: Sniblet + +delete-after: True + +changes: + - tweak: "Unary pumps, outlet injectors, and scrubbers will no longer turn small ventcrawling mobs (borers) into dust on contact."