From fdadd6ad86107b0cee0b3e3a9556ba5aa32feab0 Mon Sep 17 00:00:00 2001 From: Robson Richards Date: Wed, 16 Jul 2014 00:45:38 +0100 Subject: [PATCH] Fixes Permanent Airlock welding, adds sound to dismantling a locker --- code/game/machinery/doors/airlock.dm | 17 +++++++++-------- .../structures/crates_lockers/closets.dm | 18 +++++++++++------- 2 files changed, 20 insertions(+), 15 deletions(-) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 2f7e7ea1208..3feecfb6bb4 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -881,14 +881,15 @@ About the new airlock wires panel: user << "You begin [welded ? "unwelding":"welding"] the airlock..." playsound(loc, 'sound/items/Welder2.ogg', 40, 1) if(do_after(user,40,5,1)) - if(W.remove_fuel(0,user)) - playsound(loc, 'sound/items/welder.ogg', 50, 1) - welded = !welded - user << "You [welded ? "welded the airlock shut":"unwelded the airlock"]" - update_icon() - user.visible_message("[src] has been [welded? "welded shut":"unwelded"] by [user.name].") - else - user << "You need more welding fuel to complete this task." + if(!density && !operating)//Door must be closed to weld. + if(W.remove_fuel(0,user)) + playsound(loc, 'sound/items/welder.ogg', 50, 1) + welded = !welded + user << "You [welded ? "welded the airlock shut":"unwelded the airlock"]" + update_icon() + user.visible_message("[src] has been [welded? "welded shut":"unwelded"] by [user.name].") + else + user << "You need more welding fuel to complete this task." return else if(istype(C, /obj/item/weapon/screwdriver)) src.p_open = !( src.p_open ) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index de0021c4f96..29725327057 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -179,13 +179,17 @@ if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W - if(!WT.remove_fuel(0,user)) - user << "You need more welding fuel to complete this task." - return - new /obj/item/stack/sheet/metal(src.loc) - for(var/mob/M in viewers(src)) - M.show_message("\The [src] has been cut apart by [user] with \the [WT].", 3, "You hear welding.", 2) - qdel(src) + user << "You begin cutting the [src] apart..." + playsound(loc, 'sound/items/Welder2.ogg', 40, 1) + if(do_after(user,40,5,1)) + if(!WT.remove_fuel(0,user)) + user << "You need more welding fuel to complete this task." + return + playsound(loc, 'sound/items/welder.ogg', 50, 1) + new /obj/item/stack/sheet/metal(src.loc) + for(var/mob/M in viewers(src)) + M.show_message("\The [src] has been cut apart by [user] with \the [WT].", 3, "You hear welding.", 2) + qdel(src) return if(isrobot(user))