From 46bcb97160e6ea197489fae0be6409119c30148c Mon Sep 17 00:00:00 2001 From: CHOMPStation2StaffMirrorBot <94713762+CHOMPStation2StaffMirrorBot@users.noreply.github.com> Date: Sun, 18 Jan 2026 14:42:35 -0700 Subject: [PATCH] [MIRROR] fix disposal fuckery (#12291) Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com> --- code/datums/components/reagent_hose/connector.dm | 2 +- code/datums/components/reagent_hose/inflation.dm | 6 ++++-- code/modules/recycling/disposal_machines.dm | 3 ++- code/modules/recycling/disposal_outlet.dm | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/code/datums/components/reagent_hose/connector.dm b/code/datums/components/reagent_hose/connector.dm index 0dafb15dfc..dda564faf9 100644 --- a/code/datums/components/reagent_hose/connector.dm +++ b/code/datums/components/reagent_hose/connector.dm @@ -13,7 +13,7 @@ /datum/component/hose_connector/Initialize(var/set_unique_name = null) carrier = parent - reagents = new /datum/reagents( 60, src) + reagents = new /datum/reagents(60, src) // Handle uniquely named connectors if(set_unique_name) name = set_unique_name diff --git a/code/datums/components/reagent_hose/inflation.dm b/code/datums/components/reagent_hose/inflation.dm index 70c586cf37..ae9655ae7b 100644 --- a/code/datums/components/reagent_hose/inflation.dm +++ b/code/datums/components/reagent_hose/inflation.dm @@ -50,7 +50,7 @@ // Check for destinations var/list/options = list("Mouth") - if(human_owner?.vore_selected) + if(human_owner.vore_selected) options.Add("Belly ([sanitize(human_owner.vore_selected.name)])") if(!human_owner.isSynthetic()) // Results in a lot of bad behaviors... options.Add("Bloodstream") @@ -92,11 +92,13 @@ return TRUE /datum/component/hose_connector/inflation/connected_reagents() + if(!human_owner) + return null switch(connection_mode) if(CHEM_INGEST) return human_owner.ingested if(CHEM_VORE) - return human_owner?.vore_selected?.reagents + return human_owner.vore_selected?.reagents if(CHEM_BLOOD) // Inflating var/datum/component/hose_connector/other = get_pairing() diff --git a/code/modules/recycling/disposal_machines.dm b/code/modules/recycling/disposal_machines.dm index 8803673b6b..bc3d7a7d4e 100644 --- a/code/modules/recycling/disposal_machines.dm +++ b/code/modules/recycling/disposal_machines.dm @@ -525,7 +525,7 @@ if(!SEND_SIGNAL(src, COMSIG_DISPOSAL_FLUSH, flushed_items, air_contents)) //If the signal isnt recieved, we'll just expel immediately. if(length(contents)) - expel(flushed_items) + expel(flushed_items, air_contents) air_contents = new(PRESSURE_TANK_VOLUME) // new empty gas resv. Disposal packet takes ownership of the original one! flushing = FALSE @@ -546,6 +546,7 @@ // called when the bin expels items, generally from a disposal network, or trying to flush without a proper connection. // should usually only occur if the pipe network if modified or delivering mail /obj/machinery/disposal/proc/expel(list/expelled_items, datum/gas_mixture/gas) + SIGNAL_HANDLER var/turf/T = get_turf(src) var/turf/target playsound(src, 'sound/machines/hiss.ogg', 50, 0, 0) diff --git a/code/modules/recycling/disposal_outlet.dm b/code/modules/recycling/disposal_outlet.dm index e974055387..8d4d5f8e1d 100644 --- a/code/modules/recycling/disposal_outlet.dm +++ b/code/modules/recycling/disposal_outlet.dm @@ -75,7 +75,7 @@ eject_range = new_range to_chat(user, span_notice("You set the range on the [src] to [new_range] tiles.")) -/obj/structure/disposaloutlet/proc/expel(datum/source, list/received_items, datum/gas_mixture/gas) +/obj/structure/disposaloutlet/proc/expel(list/received_items, datum/gas_mixture/gas) SIGNAL_HANDLER flick("outlet-open", src)