From 5aabd86c410a2104bf60dc9c3390a4a04f98c04b Mon Sep 17 00:00:00 2001 From: JohnWildkins Date: Tue, 29 Oct 2019 15:02:59 -0400 Subject: [PATCH] Pumps can now be unsecured by pipe wrenches (#7270) --- .../components/binary_devices/pump.dm | 12 +++--- code/ATMOSPHERICS/pipes.dm | 2 +- html/changelogs/johnwildkins-pump.yml | 41 +++++++++++++++++++ 3 files changed, 49 insertions(+), 6 deletions(-) create mode 100644 html/changelogs/johnwildkins-pump.yml diff --git a/code/ATMOSPHERICS/components/binary_devices/pump.dm b/code/ATMOSPHERICS/components/binary_devices/pump.dm index 94870d0ddcb..0f9c9a0ba74 100644 --- a/code/ATMOSPHERICS/components/binary_devices/pump.dm +++ b/code/ATMOSPHERICS/components/binary_devices/pump.dm @@ -214,23 +214,25 @@ Thus, the two variables affect pump operation are set in New(): update_icon() /obj/machinery/atmospherics/binary/pump/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob) - if (!W.iswrench()) + if (!W.iswrench() && !istype(W, /obj/item/weapon/pipewrench)) return ..() if (!(stat & NOPOWER) && use_power) to_chat(user, "You cannot unwrench this [src], turn it off first.") return 1 var/datum/gas_mixture/int_air = return_air() var/datum/gas_mixture/env_air = loc.return_air() - if ((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE) - to_chat(user, "You cannot unwrench this [src], it too exerted due to internal pressure.") + if ((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE && !istype(W, /obj/item/weapon/pipewrench)) + to_chat(user, "You cannot unwrench this [src], it's too exerted due to internal pressure.") add_fingerprint(user) return 1 + else + to_chat(user, "You struggle to unwrench \the [src] with your pipe wrench.") playsound(src.loc, W.usesound, 50, 1) to_chat(user, "You begin to unfasten \the [src]...") - if (do_after(user, 40/W.toolspeed, act_target = src)) + if (do_after(user, istype(W, /obj/item/weapon/pipewrench) ? 80/W.toolspeed : 40/W.toolspeed, act_target = src)) user.visible_message( \ "\The [user] unfastens \the [src].", \ "You have unfastened \the [src].", \ - "You hear ratchet.") + "You hear a ratchet.") new /obj/item/pipe(loc, make_from=src) qdel(src) diff --git a/code/ATMOSPHERICS/pipes.dm b/code/ATMOSPHERICS/pipes.dm index 1ed1ca3ddcb..76f80fb94c3 100644 --- a/code/ATMOSPHERICS/pipes.dm +++ b/code/ATMOSPHERICS/pipes.dm @@ -94,7 +94,7 @@ add_fingerprint(user) return 1 else - user << "You struggle to unwrench \the [src] with your pipe wrench." + to_chat(user, "You struggle to unwrench \the [src] with your pipe wrench.") playsound(src.loc, W.usesound, 50, 1) to_chat(user, "You begin to unfasten \the [src]...") if (do_after(user, istype(W, /obj/item/weapon/pipewrench) ? 80/W.toolspeed : 40/W.toolspeed, act_target = src)) diff --git a/html/changelogs/johnwildkins-pump.yml b/html/changelogs/johnwildkins-pump.yml new file mode 100644 index 00000000000..4968bef184f --- /dev/null +++ b/html/changelogs/johnwildkins-pump.yml @@ -0,0 +1,41 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +# balance +# admin +# backend +# security +# refactor +################################# + +# Your name. +author: JohnWildkins + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Pumps can now be unsecured by pipe wrenches."