From b13358a655a6cfd1d2c10bef934c37b014ace52b Mon Sep 17 00:00:00 2001 From: Will <7099514+Willburd@users.noreply.github.com> Date: Tue, 5 Aug 2025 12:44:04 -0400 Subject: [PATCH] prevent connecting a hose to the same object (#18174) * prevent opening multiple menus on the same hose * feedback --- code/datums/components/reagent_hose/item.dm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/code/datums/components/reagent_hose/item.dm b/code/datums/components/reagent_hose/item.dm index 3151261b69b..4bccb8b89d8 100644 --- a/code/datums/components/reagent_hose/item.dm +++ b/code/datums/components/reagent_hose/item.dm @@ -33,6 +33,9 @@ /obj/item/stack/hose/afterattack(var/atom/target, var/mob/living/user, proximity, params) if(!proximity) return + if(in_use) + to_chat(user, span_danger("You must choose which connector this hose will connect to before you can attach the hose to something else.")) + return var/datum/component/hose_connector/REMB = remembered?.resolve() var/list/available_sockets = list() @@ -72,9 +75,11 @@ to_chat(user, span_notice("You connect one end of tubing to \the [AC].")) else + in_use = TRUE // Prevent opening a million uis var/choice = tgui_input_list(user, "Select a target hose connector.", "Socket Selection", available_sockets) + in_use = FALSE - if(choice) + if(choice && user.Adjacent(target)) var/datum/component/hose_connector/CC = available_sockets[choice] if(REMB) if(REMB.get_carrier() == CC.get_carrier())