From fe2ce02f54a2c24a78b59018e10603b8bff1477c Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 10 Jun 2015 21:50:48 -0500 Subject: [PATCH 1/2] Fixes #9744. --- code/game/objects/items/weapons/tools.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 0c563215c73..fad3035563f 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -261,6 +261,8 @@ //Removes fuel from the welding tool. If a mob is passed, it will perform an eyecheck on the mob. This should probably be renamed to use() /obj/item/weapon/weldingtool/proc/remove_fuel(var/amount = 1, var/mob/M = null) + if(!welding) + return 0 if(get_fuel() >= amount) reagents.remove_reagent("fuel", amount) if(M) @@ -291,7 +293,7 @@ var/turf/T = get_turf(src) //If we're turning it on if(set_welding && !welding) - if (remove_fuel(1)) + if (get_fuel() > 0) if(M) M << "You switch the [src] on." else if(T) From c062f886c097e191ca348f12e54f1ef60752cc95 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 10 Jun 2015 22:07:52 -0500 Subject: [PATCH 2/2] Attempting to weld closet with inactive welder no longer produces message claiming insufficient fuel. --- .../objects/structures/crates_lockers/closets.dm | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 13b0ae81ec7..4414535d5af 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -227,8 +227,11 @@ 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 + if(!WT.isOn()) + return + else + user << "You need more welding fuel to complete this task." + return new /obj/item/stack/material/steel(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) @@ -246,8 +249,11 @@ else 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 + if(!WT.isOn()) + return + else + user << "You need more welding fuel to complete this task." + return src.welded = !src.welded src.update_icon() for(var/mob/M in viewers(src))