diff --git a/code/game/machinery/atmoalter/canister.dm b/code/game/machinery/atmoalter/canister.dm index 3fb8adccfd..0354270505 100644 --- a/code/game/machinery/atmoalter/canister.dm +++ b/code/game/machinery/atmoalter/canister.dm @@ -168,8 +168,13 @@ update_flag if (src.health <= 10) var/atom/location = src.loc + var/obj/machinery/atmospherics/portables_connector/port = locate() in location // CHOMPEdit - Finds if there's a port location.assume_air(air_contents) + if(port && anchored) // CHOMPEdit - if it blew up, frees up the port + disconnect() + anchored = 0 + src.destroyed = 1 playsound(src, 'sound/effects/spray.ogg', 10, 1, -3) src.density = FALSE diff --git a/code/game/machinery/atmoalter/portable_atmospherics.dm b/code/game/machinery/atmoalter/portable_atmospherics.dm index c3fe8eaccf..3f61b9d181 100644 --- a/code/game/machinery/atmoalter/portable_atmospherics.dm +++ b/code/game/machinery/atmoalter/portable_atmospherics.dm @@ -117,7 +117,7 @@ update_icon() return - else if (W.has_tool_quality(TOOL_WRENCH)) + else if (W.has_tool_quality(TOOL_WRENCH) && !(src.destroyed)) // CHOMPEdit - Make sure it's not broken if(connected_port) disconnect() to_chat(user, "You disconnect \the [src] from the port.")