From 0e558089aced379f09c2b407dac777fdd38596f1 Mon Sep 17 00:00:00 2001 From: CRUNCH <143041327+Fordoxia@users.noreply.github.com> Date: Mon, 10 Feb 2025 04:01:29 +0000 Subject: [PATCH] Refactor Fire Alarm `item_interaction()` (#28136) * Update firealarm.dm * revert * Update code/game/machinery/firealarm.dm Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com> --------- Signed-off-by: CRUNCH <143041327+Fordoxia@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> --- code/game/machinery/firealarm.dm | 35 ++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index e6b8638e5f0..32d9950aa5a 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -127,24 +127,28 @@ FIRE ALARM /obj/machinery/firealarm/item_interaction(mob/living/user, obj/item/used, list/modifiers) add_fingerprint(user) - if(wiresexposed) - if(buildstage == FIRE_ALARM_UNWIRED && istype(used, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/coil = used - if(!coil.use(5)) - to_chat(user, "You need a total of five cables to wire [src]!") - return ITEM_INTERACT_COMPLETE + if(!wiresexposed) + return ..() - buildstage = FIRE_ALARM_READY - playsound(get_turf(src), used.usesound, 50, 1) - to_chat(user, "You wire [src]!") - update_icon() - else if(buildstage == FIRE_ALARM_FRAME && istype(used, /obj/item/firealarm_electronics)) - to_chat(user, "You insert the circuit!") - qdel(used) - buildstage = FIRE_ALARM_UNWIRED - update_icon() + if(buildstage == FIRE_ALARM_UNWIRED && istype(used, /obj/item/stack/cable_coil)) + var/obj/item/stack/cable_coil/coil = used + if(!coil.use(5)) + to_chat(user, "You need a total of five cables to wire [src]!") + return ITEM_INTERACT_COMPLETE + buildstage = FIRE_ALARM_READY + playsound(get_turf(src), used.usesound, 50, TRUE) + to_chat(user, "You wire [src]!") + update_icon() return ITEM_INTERACT_COMPLETE + + if(buildstage == FIRE_ALARM_FRAME && istype(used, /obj/item/firealarm_electronics)) + to_chat(user, "You insert the circuit!") + qdel(used) + buildstage = FIRE_ALARM_UNWIRED + update_icon() + return ITEM_INTERACT_COMPLETE + return ..() /obj/machinery/firealarm/crowbar_act(mob/user, obj/item/I) @@ -198,6 +202,7 @@ FIRE ALARM return if(!I.use_tool(src, user, 0, volume = I.tool_volume)) return + update_icon() WIRECUTTER_SNIP_MESSAGE var/obj/item/stack/cable_coil/new_coil = new /obj/item/stack/cable_coil(drop_location()) new_coil.amount = 5