diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index cfde61b034e..688b5ab4615 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -125,8 +125,17 @@ rigged = FALSE return TRUE -/obj/structure/closet/crate/welder_act() - return +/obj/structure/closet/crate/welder_act(mob/user, obj/item/I) + . = TRUE + if(!opened && user.loc == src) + to_chat(user, SPAN_WARNING("You can't weld [src] from inside!")) + return + if(!I.tool_use_check(user, 0) || !opened) + return + WELDER_ATTEMPT_SLICING_MESSAGE + if(I.use_tool(src, user, 40, volume = I.tool_volume)) + WELDER_SLICING_SUCCESS_MESSAGE + deconstruct(TRUE) /obj/structure/closet/crate/attack_hand(mob/user) if(manifest)