diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm
index f33d4cc98bb..073e999a9da 100644
--- a/code/game/objects/structures/window.dm
+++ b/code/game/objects/structures/window.dm
@@ -196,14 +196,17 @@
user << (state ? "You have pried the window into the frame." : "You have pried the window out of the frame.")
else if(istype(I, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = I
- if(WT.remove_fuel(0,user))
- user << "You begin repairing the [src]."
- playsound(loc, 'sound/items/Welder.ogg', 40, 1)
- if(do_after(user,40,5,1))
- health = maxhealth
- playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
+ if(user.a_intent == "help") //so you can still break windows with welding tools
+ if(health < maxhealth)
+ if(WT.remove_fuel(0,user))
+ user << "You begin repairing [src]."
+ playsound(loc, 'sound/items/Welder.ogg', 40, 1)
+ if(do_after(user, 40))
+ health = maxhealth
+ playsound(loc, 'sound/items/Welder2.ogg', 50, 1)
+ else
+ user << "[src] is already in good condition."
update_nearby_icons()
- return
else if(istype(I, /obj/item/weapon/wrench) && !anchored)
if(reinf)
var/obj/item/stack/sheet/rglass/RG = new (user.loc)