From 5f98346ab5c9c612ce5030d8dc97eab626654612 Mon Sep 17 00:00:00 2001 From: mwerezak Date: Sat, 15 Aug 2015 10:22:07 -0400 Subject: [PATCH 1/2] Fixes overdose not working for ingested reagents --- code/modules/reagents/Chemistry-Reagents.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/Chemistry-Reagents.dm b/code/modules/reagents/Chemistry-Reagents.dm index e0a00383300..694af132a9b 100644 --- a/code/modules/reagents/Chemistry-Reagents.dm +++ b/code/modules/reagents/Chemistry-Reagents.dm @@ -39,7 +39,7 @@ return if(!affects_dead && M.stat == DEAD) return - if(overdose && (dose > overdose) && (location == CHEM_BLOOD)) + if(overdose && (dose > overdose) && (location != CHEM_TOUCH)) overdose(M, alien) var/removed = metabolism if(ingest_met && (location == CHEM_INGEST)) From 176e4232cac25c9262b6f60f3b800229e960b2df Mon Sep 17 00:00:00 2001 From: mwerezak Date: Sat, 15 Aug 2015 18:28:09 -0400 Subject: [PATCH 2/2] Fixes #9155 Heaters and freezers now check if there are other machines in their turf that have the same connection dirs. --- code/ATMOSPHERICS/components/unary/cold_sink.dm | 7 +++++++ code/ATMOSPHERICS/components/unary/heat_source.dm | 8 ++++++++ 2 files changed, 15 insertions(+) diff --git a/code/ATMOSPHERICS/components/unary/cold_sink.dm b/code/ATMOSPHERICS/components/unary/cold_sink.dm index e5305876ed9..9fcdad86139 100644 --- a/code/ATMOSPHERICS/components/unary/cold_sink.dm +++ b/code/ATMOSPHERICS/components/unary/cold_sink.dm @@ -43,6 +43,13 @@ node = target break + //copied from pipe construction code since heaters/freezers don't use fittings and weren't doing this check - this all really really needs to be refactored someday. + //check that there are no incompatible pipes/machinery in our own location + for(var/obj/machinery/atmospherics/M in src.loc) + if(M != src && (M.initialize_directions & node_connect) && M.check_connect_types(M,src)) // matches at least one direction on either type of pipe & same connection type + node = null + break + update_icon() /obj/machinery/atmospherics/unary/freezer/update_icon() diff --git a/code/ATMOSPHERICS/components/unary/heat_source.dm b/code/ATMOSPHERICS/components/unary/heat_source.dm index db046e79743..e139f6faf3f 100644 --- a/code/ATMOSPHERICS/components/unary/heat_source.dm +++ b/code/ATMOSPHERICS/components/unary/heat_source.dm @@ -39,11 +39,19 @@ var/node_connect = dir + //check that there is something to connect to for(var/obj/machinery/atmospherics/target in get_step(src, node_connect)) if(target.initialize_directions & get_dir(target, src)) node = target break + //copied from pipe construction code since heaters/freezers don't use fittings and weren't doing this check - this all really really needs to be refactored someday. + //check that there are no incompatible pipes/machinery in our own location + for(var/obj/machinery/atmospherics/M in src.loc) + if(M != src && (M.initialize_directions & node_connect) && M.check_connect_types(M,src)) // matches at least one direction on either type of pipe & same connection type + node = null + break + update_icon()