diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 147e07fe1d..c8555e47ad 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -1131,8 +1131,8 @@
/obj/machinery/door/airlock/try_to_weld(obj/item/weapon/weldingtool/W, mob/user)
if(!operating && density)
- if(W.remove_fuel(0,user))
- if(user.a_intent != INTENT_HELP)
+ if(user.a_intent != INTENT_HELP)
+ if(W.remove_fuel(0,user))
user.visible_message("[user] is [welded ? "unwelding":"welding"] the airlock.", \
"You begin [welded ? "unwelding":"welding"] the airlock...", \
"You hear welding.")
@@ -1143,18 +1143,22 @@
user.visible_message("[user.name] has [welded? "welded shut":"unwelded"] [src].", \
"You [welded ? "weld the airlock shut":"unweld the airlock"].")
update_icon()
- else if(obj_integrity < max_integrity)
- user.visible_message("[user] is welding the airlock.", \
- "You begin repairing the airlock...", \
- "You hear welding.")
- playsound(loc, W.usesound, 40, 1)
- if(do_after(user,40*W.toolspeed, 1, target = src, extra_checks = CALLBACK(src, .proc/weld_checks, W, user)))
- playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
- obj_integrity = max_integrity
- stat &= ~BROKEN
- user.visible_message("[user.name] has repaired [src].", \
- "You finish repairing the airlock.")
- update_icon()
+ else
+ if(obj_integrity < max_integrity)
+ if(W.remove_fuel(0,user))
+ user.visible_message("[user] is welding the airlock.", \
+ "You begin repairing the airlock...", \
+ "You hear welding.")
+ playsound(loc, W.usesound, 40, 1)
+ if(do_after(user,40*W.toolspeed, 1, target = src, extra_checks = CALLBACK(src, .proc/weld_checks, W, user)))
+ playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
+ obj_integrity = max_integrity
+ stat &= ~BROKEN
+ user.visible_message("[user.name] has repaired [src].", \
+ "You finish repairing the airlock.")
+ update_icon()
+ else
+ to_chat(user, "The airlock doesn't need repairing.")
/obj/machinery/door/airlock/proc/weld_checks(obj/item/weapon/weldingtool/W, mob/user)
return !operating && density && user && W && W.isOn() && user.loc