diff --git a/code/ATMOSPHERICS/atmospherics.dm b/code/ATMOSPHERICS/atmospherics.dm index 4b6d445a3db..95aa9e2af9a 100644 --- a/code/ATMOSPHERICS/atmospherics.dm +++ b/code/ATMOSPHERICS/atmospherics.dm @@ -140,7 +140,7 @@ Pipelines + Other Objects -> Pipe network user << "As you begin unwrenching \the [src] a gush of air blows in your face... maybe you should reconsider?" unsafe_wrenching = TRUE //Oh dear oh dear - if (do_after(user, 20, target = src) && !gc_destroyed) + if (do_after(user, 20/W.toolspeed, target = src) && !gc_destroyed) user.visible_message( \ "[user] unfastens \the [src].", \ "You unfasten \the [src].", \ diff --git a/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm b/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm index 8af67d3555a..67581c3aa98 100644 --- a/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm +++ b/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm @@ -266,7 +266,7 @@ if (WT.remove_fuel(0,user)) playsound(loc, 'sound/items/Welder.ogg', 40, 1) user << "You begin welding the vent..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) if(!welded) diff --git a/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm index ac52a1d1178..c67090bf6d5 100644 --- a/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm +++ b/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm @@ -297,7 +297,7 @@ if(WT.remove_fuel(0,user)) playsound(loc, 'sound/items/Welder.ogg', 40, 1) user << "Now welding the scrubber." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 23b3667caeb..80cd214ec74 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -75,7 +75,7 @@ var/bomb_set if(istype(I, /obj/item/weapon/screwdriver/nuke)) playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) user << "You start removing [src]'s front panel's screws..." - if(do_after(user, 60,target=src)) + if(do_after(user, 60/I.toolspeed,target=src)) deconstruction_state = NUKESTATE_UNSCREWED user << "You remove the screws from [src]'s front panel." update_icon() @@ -84,7 +84,7 @@ var/bomb_set if(istype(I, /obj/item/weapon/crowbar)) user << "You start removing [src]'s front panel..." playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) - if(do_after(user,30,target=src)) + if(do_after(user,30/I.toolspeed,target=src)) user << "You remove [src]'s front panel." deconstruction_state = NUKESTATE_PANEL_REMOVED update_icon() @@ -95,7 +95,7 @@ var/bomb_set playsound(loc, 'sound/items/Welder.ogg', 100, 1) user << "You start cutting [src]'s inner plate..." if(welder.remove_fuel(1,user)) - if(do_after(user,80,target=src)) + if(do_after(user,80/I.toolspeed,target=src)) user << "You cut [src]'s inner plate." deconstruction_state = NUKESTATE_WELDED update_icon() @@ -104,7 +104,7 @@ var/bomb_set if(istype(I, /obj/item/weapon/crowbar)) user << "You start prying off [src]'s inner plate..." playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) - if(do_after(user,50,target=src)) + if(do_after(user,50/I.toolspeed,target=src)) user << "You pry off [src]'s inner plate. You can see the core's green glow!" deconstruction_state = NUKESTATE_CORE_EXPOSED update_icon() diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm index 0d8dc0c0e56..10d8d09d843 100644 --- a/code/game/machinery/alarm.dm +++ b/code/game/machinery/alarm.dm @@ -734,7 +734,7 @@ user.visible_message("[user.name] removes the electronics from [src.name].",\ "You start prying out the circuit...") playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) - if (do_after(user, 20, target = src)) + if (do_after(user, 20/W.toolspeed, target = src)) if (buildstage == 1) user <<"You remove the air alarm electronics." new /obj/item/weapon/electronics/airalarm( src.loc ) @@ -956,7 +956,7 @@ FIRE ALARM playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) user.visible_message("[user.name] removes the electronics from [src.name].", \ "You start prying out the circuit...") - if(do_after(user, 20, target = src)) + if(do_after(user, 20/W.toolspeed, target = src)) if(buildstage == 1) if(stat & BROKEN) user << "You remove the destroyed circuit." diff --git a/code/game/machinery/atmoalter/meter.dm b/code/game/machinery/atmoalter/meter.dm index 621bd8221b1..fed2393ef09 100644 --- a/code/game/machinery/atmoalter/meter.dm +++ b/code/game/machinery/atmoalter/meter.dm @@ -95,7 +95,7 @@ if (istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You begin to unfasten \the [src]..." - if (do_after(user, 40, target = src)) + if (do_after(user, 40/W.toolspeed, target = src)) user.visible_message( \ "[user] unfastens \the [src].", \ "You unfasten \the [src].", \ diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm index 19e4235007a..838cc8ddc9b 100644 --- a/code/game/machinery/buttons.dm +++ b/code/game/machinery/buttons.dm @@ -94,7 +94,7 @@ if(!device && !board && istype(W, /obj/item/weapon/wrench)) user << "You start unsecuring the button frame..." playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) user << "You unsecure the button frame." transfer_fingerprints_to(new /obj/item/wallframe/button(get_turf(src))) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index dffd5241c8c..db965e30f6a 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -309,7 +309,7 @@ if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You start wrenching the frame into place..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) user << "You wrench the frame into place." anchored = 1 state = 1 @@ -321,7 +321,7 @@ return playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) user << "You start deconstructing the frame..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) if(!src || !WT.isOn()) return user << "You deconstruct the frame." var/obj/item/stack/sheet/metal/M = new (loc, 5) @@ -331,7 +331,7 @@ if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You start to unfasten the frame..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) user << "You unfasten the frame." anchored = 0 state = 0 @@ -372,7 +372,7 @@ if(C.get_amount() >= 5) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) user << "You start adding cables to the frame..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) if(C.get_amount() >= 5 && state == 2) C.use(5) user << "You add cables to the frame." diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 4e83a662499..0ff76ba9274 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -90,11 +90,11 @@ update_icon() return -/obj/machinery/computer/attackby(obj/I, mob/user, params) +/obj/machinery/computer/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver) && circuit) playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) user << " You start to disconnect the monitor..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) A.circuit = circuit A.anchored = 1 diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index e781f80f81c..4cd84a452be 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -67,7 +67,7 @@ if(C.get_amount() >= 5) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) user << "You start to add cables to the frame..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) if(C.get_amount() >= 5 && state == 1) C.use(5) user << "You add cables to the frame." @@ -80,7 +80,7 @@ playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) user.visible_message("[user] disassembles the frame.", \ "You start to disassemble the frame...", "You hear banging and clanking.") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/P.toolspeed, target = src)) if(state == 1) user << "You disassemble the frame." var/obj/item/stack/sheet/metal/M = new (loc, 5) @@ -89,7 +89,7 @@ if(istype(P, /obj/item/weapon/wrench)) user << "You start [anchored ? "un" : ""]securing [name]..." playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/P.toolspeed, target = src)) if(state == 1) user << "You [anchored ? "un" : ""]secure [name]." anchored = !anchored @@ -98,7 +98,7 @@ if(istype(P, /obj/item/weapon/wrench)) user << "You start [anchored ? "un" : ""]securing [name]..." playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/P.toolspeed, target = src)) user << "You [anchored ? "un" : ""]secure [name]." anchored = !anchored diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 3eb9c4243e3..f03cb2eaa8b 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -797,7 +797,7 @@ About the new airlock wires panel: updateUsrDialog() return -/obj/machinery/door/airlock/attackby(obj/C, mob/user, params) +/obj/machinery/door/airlock/attackby(obj/item/C, mob/user, params) if(!istype(usr, /mob/living/silicon)) if(src.isElectrified()) if(src.shock(user, 75)) @@ -816,7 +816,7 @@ About the new airlock wires panel: "You begin [welded ? "unwelding":"welding"] the airlock...", \ "You hear welding.") playsound(loc, 'sound/items/Welder.ogg', 40, 1) - if(do_after(user,40,5,1, target = src)) + if(do_after(user,40/C.toolspeed,5,1, target = src)) if(density && !operating)//Door must be closed to weld. if( !istype(src, /obj/machinery/door/airlock) || !user || !W || !W.isOn() || !user.loc ) return @@ -847,7 +847,7 @@ About the new airlock wires panel: if(p_open && charge) user << "You carefully start removing [charge] from [src]..." playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1) - if(!do_after(user, 150, target = src)) + if(!do_after(user, 150/C.toolspeed, target = src)) user << "You slip and [charge] detonates!" charge.ex_act(1) user.Weaken(3) @@ -861,7 +861,7 @@ About the new airlock wires panel: playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) user.visible_message("[user] removes the electronics from the airlock assembly.", \ "You start to remove electronics from the airlock assembly...") - if(do_after(user,40, target = src)) + if(do_after(user,40/C.toolspeed, target = src)) if(src.loc) if(src.doortype) var/obj/structure/door_assembly/A = new src.doortype(src.loc) diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 2d85875a50b..9e23c4b60c3 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -54,7 +54,7 @@ playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1) user.visible_message("[user] starts undoing [src]'s bolts...", \ "You start unfastening [src]'s floor bolts...") - if(!do_after(user, 50, target = src)) return + if(!do_after(user, 50/C.toolspeed, target = src)) return playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1) user.visible_message("[user] unfastens [src]'s bolts.", \ "You undo [src]'s floor bolts.") @@ -208,7 +208,7 @@ playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1) user.visible_message("[user] starts prying something out from [src]...", \ "You begin prying out the wire cover...") - if(!do_after(user, 50, target = src)) return + if(!do_after(user, 50/C.toolspeed, target = src)) return if(constructionStep != CONSTRUCTION_PANEL_OPEN) return playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1) user.visible_message("[user] pries out a metal plate from [src], exposing the wires.", \ @@ -220,7 +220,7 @@ playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1) user.visible_message("[user] starts bolting down [src]...", \ "You begin bolting [src]...") - if(!do_after(user, 30, target = src)) return + if(!do_after(user, 30/C.toolspeed, target = src)) return user.visible_message("[user] finishes the firelock.", \ "You finish the firelock.") playsound(get_turf(src), 'sound/items/Deconstruct.ogg', 50, 1) @@ -235,7 +235,7 @@ playsound(get_turf(src), 'sound/items/Wirecutter.ogg', 50, 1) user.visible_message("[user] starts cutting the wires from [src]...", \ "You begin removing [src]'s wires...") - if(!do_after(user, 60, target = src)) return + if(!do_after(user, 60/C.toolspeed, target = src)) return if(constructionStep != CONSTRUCTION_WIRES_EXPOSED) return user.visible_message("[user] removes the wires from [src].", \ "You remove the wiring from [src], exposing the circuit board.") @@ -250,7 +250,7 @@ playsound(get_turf(src), 'sound/items/Welder.ogg', 50, 1) user.visible_message("[user] starts welding a metal plate into [src]...", \ "You begin welding the cover plate back onto [src]...") - if(!do_after(user, 80, target = src)) return + if(!do_after(user, 80/C.toolspeed, target = src)) return if(constructionStep != CONSTRUCTION_WIRES_EXPOSED) return playsound(get_turf(src), 'sound/items/Welder2.ogg', 50, 1) user.visible_message("[user] welds the metal plate into [src].", \ @@ -263,7 +263,7 @@ user.visible_message("[user] begins removing the circuit board from [src]...", \ "You begin prying out the circuit board from [src]...") playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1) - if(!do_after(user, 50, target = src)) return + if(!do_after(user, 50/C.toolspeed, target = src)) return if(constructionStep != CONSTRUCTION_GUTTED) return user.visible_message("[user] removes [src]'s circuit board.", \ "You remove the circuit board from [src].") @@ -296,7 +296,7 @@ playsound(get_turf(src), 'sound/items/Welder.ogg', 50, 1) user.visible_message("[user] begins cutting apart [src]'s frame...", \ "You begin slicing [src] apart...") - if(!do_after(user, 80, target = src)) return + if(!do_after(user, 80/C.toolspeed, target = src)) return if(constructionStep != CONSTRUCTION_NOCIRCUIT) return user.visible_message("[user] cuts apart [src]!", \ "You cut [src] into metal.") diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 1ca5d29b760..5d7c87cccd5 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -279,7 +279,7 @@ playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) user.visible_message("[user] removes the electronics from the [src.name].", \ "You start to remove electronics from the [src.name]...") - if(do_after(user,40, target = src)) + if(do_after(user,40/I.toolspeed, target = src)) if(src.p_open && !src.density && !src.operating && src.loc) var/obj/structure/windoor_assembly/WA = new /obj/structure/windoor_assembly(src.loc) switch(base_state) diff --git a/code/game/machinery/droneDispenser.dm b/code/game/machinery/droneDispenser.dm index 86bdf54f452..1917c75065f 100644 --- a/code/game/machinery/droneDispenser.dm +++ b/code/game/machinery/droneDispenser.dm @@ -201,7 +201,7 @@ playsound(src, 'sound/items/Welder.ogg', 50, 1) user.visible_message("[user] begins patching up [src] with [WT].", \ "You begin restoring the damage to [src]...") - if(!do_after(user, 40, target = src)) + if(!do_after(user, 40/O.toolspeed, target = src)) return if(!src || !WT.remove_fuel(1, user)) return user.visible_message("[user] fixes [src]!", \ diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index 407db623ab9..c261956806f 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -43,7 +43,7 @@ if (bulb) user.visible_message("[user] begins to disconnect [src]'s flashbulb.", "You begin to disconnect [src]'s flashbulb...") playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1) - if(do_after(user, 30, target = src) && bulb) + if(do_after(user, 30/W.toolspeed, target = src) && bulb) user.visible_message("[user] has disconnected [src]'s flashbulb!", "You disconnect [src]'s flashbulb.") bulb.loc = src.loc bulb = null diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 1c2c307973c..56d0ebeb3d9 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -326,7 +326,7 @@ Class Procs: if(istype(W)) user << "You begin [anchored ? "un" : ""]securing [name]..." playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, time, target = src)) + if(do_after(user, time/W.toolspeed, target = src)) user << "You [anchored ? "un" : ""]secure [name]." anchored = !anchored playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index a0b3c353862..3eedfeec907 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -723,7 +723,7 @@ var/list/obj/machinery/newscaster/allCasters = list() if(istype(I, /obj/item/weapon/wrench)) user << "You start [anchored ? "un" : ""]securing [name]..." playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, 60, target = src)) + if(do_after(user, 60/I.toolspeed, target = src)) user << "You [anchored ? "un" : ""]secure [name]." new /obj/item/wallframe/newscaster(loc) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index a23489333ea..64be7f512b5 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -81,7 +81,7 @@ if (!anchored && !isinspace()) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You begin to fasten \the [src] to the floor..." - if (do_after(user, 40, target = src)) + if (do_after(user, 40/W.toolspeed, target = src)) add_fingerprint(user) user.visible_message( \ "[user] fastens \the [src].", \ @@ -94,7 +94,7 @@ else if(anchored) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You begin to unfasten \the [src] from the floor..." - if (do_after(user, 20, target = src)) + if (do_after(user, 20/W.toolspeed, target = src)) add_fingerprint(user) user.visible_message( \ "[user] unfastens \the [src].", \ diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 53570ee256d..dfd806fab82 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -734,7 +734,7 @@ playsound(loc, pick('sound/items/Welder.ogg', 'sound/items/Welder2.ogg'), 50, 1) user << "You start to remove the turret's interior metal armor..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) if(!src || !WT.remove_fuel(5, user)) return build_step = 1 user << "You remove the turret's interior metal armor." @@ -810,7 +810,7 @@ playsound(loc, pick('sound/items/Welder.ogg', 'sound/items/Welder2.ogg'), 50, 1) user << "You begin to weld the turret's armor down..." - if(do_after(user, 30, target = src)) + if(do_after(user, 30/I.toolspeed, target = src)) if(!src || !WT.remove_fuel(5, user)) return build_step = 8 diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index 053485e1d40..179eff07051 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -530,7 +530,7 @@ user.visible_message("[user] starts removing [src]'s damaged wires.", \ "You begin removing the damaged wires from [src]...") playsound(src, 'sound/items/Wirecutter.ogg', 50, 1) - if(!do_after(user, 30, target = src)) + if(!do_after(user, 30/I.toolspeed, target = src)) return user.visible_message("[user] removes the damaged wires from [src].", \ "You remove the damaged wiring from [src].") @@ -560,7 +560,7 @@ user.visible_message("[user] starts removing [src]'s broken interior plating.", \ "You begin removing the damaged interior plating from [src]...") playsound(src, 'sound/items/Crowbar.ogg', 50, 1) - if(!do_after(user, 30, target = src)) + if(!do_after(user, 30/I.toolspeed, target = src)) return user.visible_message("[user] removes the damaged interior plating from [src].", \ "You remove the damaged interior plating from [src].") diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 0a460ac7b83..b15607062af 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -97,6 +97,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s var/flags_cover = 0 //for flags such as GLASSESCOVERSEYES var/heat = 0 var/sharpness = IS_BLUNT + var/toolspeed = 1 /obj/item/proc/check_allowed_items(atom/target, not_inside, target_self) if(((src in target) && !target_self) || ((!istype(target.loc, /turf)) && (!istype(target, /turf)) && (not_inside)) || is_type_in_list(target, can_be_placed_into)) diff --git a/code/game/objects/items/devices/geiger_counter.dm b/code/game/objects/items/devices/geiger_counter.dm index 49b124453b7..b3e4214e7af 100644 --- a/code/game/objects/items/devices/geiger_counter.dm +++ b/code/game/objects/items/devices/geiger_counter.dm @@ -122,7 +122,7 @@ return 0 user.visible_message("[user] unscrews [src]'s maintenance panel and begins fiddling with its innards...", "You begin resetting [src]...") playsound(user, 'sound/items/Screwdriver.ogg', 50, 1) - if(!do_after(user, 40, target = user)) + if(!do_after(user, 40/I.toolspeed, target = user)) return 0 user.visible_message("[user] refastens [src]'s maintenance panel!", "You reset [src] to its factory settings!") playsound(user, 'sound/items/Screwdriver2.ogg', 50, 1) diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm index 39a8afa9ff8..d5d116a4392 100644 --- a/code/game/objects/items/devices/multitool.dm +++ b/code/game/objects/items/devices/multitool.dm @@ -17,6 +17,7 @@ origin_tech = "magnets=1;engineering=1" var/obj/machinery/buffer // simple machine buffer for device linkage hitsound = 'sound/weapons/tap.ogg' + toolspeed = 1 // Syndicate device disguised as a multitool; it will turn red when an AI camera is nearby. diff --git a/code/game/objects/items/devices/pizza_bomb.dm b/code/game/objects/items/devices/pizza_bomb.dm index 1e6d2a5244b..3bcfbdc464d 100644 --- a/code/game/objects/items/devices/pizza_bomb.dm +++ b/code/game/objects/items/devices/pizza_bomb.dm @@ -76,7 +76,7 @@ user << "You can't see the box well enough to cut the wires out!" return user.visible_message("[user] starts removing the payload and wires from \the [src].", "You start removing the payload and wires from \the [src]...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) playsound(src, 'sound/items/Wirecutter.ogg', 50, 1, 1) user.unEquip(src) user.visible_message("[user] removes the insides of \the [src]!", "You remove the insides of \the [src].") diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index 2266c0aacc0..2c3baa3985e 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -269,7 +269,7 @@ /obj/item/device/tape/attackby(obj/item/I, mob/user, params) if(ruined && istype(I, /obj/item/weapon/screwdriver)) user << "You start winding the tape back in..." - if(do_after(user, 120, target = src)) + if(do_after(user, 120/I.toolspeed, target = src)) user << "You wound the tape back in." fix() diff --git a/code/game/objects/items/nuke_tools.dm b/code/game/objects/items/nuke_tools.dm index f8a0a093a12..dc36d390d6c 100644 --- a/code/game/objects/items/nuke_tools.dm +++ b/code/game/objects/items/nuke_tools.dm @@ -66,6 +66,7 @@ icon = 'icons/obj/nuke_tools.dmi' icon_state = "screwdriver_nuke" item_state = "screwdriver_nuke" + toolspeed = 2 /obj/item/weapon/screwdriver/nuke/New() //to skip screwdriver icon update diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm index 181dd0a771a..a91ba35482c 100644 --- a/code/game/objects/items/weapons/storage/secure.dm +++ b/code/game/objects/items/weapons/storage/secure.dm @@ -34,14 +34,14 @@ /obj/item/weapon/storage/secure/attackby(obj/item/weapon/W, mob/user, params) if(locked) if (istype(W, /obj/item/weapon/screwdriver)) - if (do_after(user, 20, target = src)) + if (do_after(user, 20/W.toolspeed, target = src)) src.open =! src.open user.show_message(text("You [] the service panel.", (src.open ? "open" : "close"))) return if ((istype(W, /obj/item/device/multitool)) && (src.open == 1)&& (!src.l_hacking)) user.show_message(text("Now attempting to reset internal memory, please hold."), 1) src.l_hacking = 1 - if (do_after(usr, 100, target = src)) + if (do_after(usr, 100/W.toolspeed, target = src)) if (prob(40)) src.l_setshort = 1 src.l_set = 0 diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 8d9cdb1d80e..f878422481f 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -27,6 +27,7 @@ materials = list(MAT_METAL=150) origin_tech = "materials=1;engineering=1" attack_verb = list("bashed", "battered", "bludgeoned", "whacked") + toolspeed = 1 /obj/item/weapon/wrench/suicide_act(mob/user) user.visible_message("[user] is beating \himself to death with the [src.name]! It looks like \he's trying to commit suicide.") @@ -51,6 +52,7 @@ materials = list(MAT_METAL=75) attack_verb = list("stabbed") hitsound = 'sound/weapons/bladeslice.ogg' + toolspeed = 1 /obj/item/weapon/screwdriver/suicide_act(mob/user) user.visible_message(pick("[user] is stabbing the [src.name] into \his temple! It looks like \he's trying to commit suicide.", \ @@ -114,6 +116,7 @@ origin_tech = "materials=1;engineering=1" attack_verb = list("pinched", "nipped") hitsound = 'sound/items/Wirecutter.ogg' + toolspeed = 1 /obj/item/weapon/wirecutters/New(loc, var/param_color = null) ..() @@ -165,6 +168,7 @@ var/can_off_process = 0 var/light_intensity = 2 //how powerful the emitted light is when used. heat = 3800 + toolspeed = 1 /obj/item/weapon/weldingtool/New() ..() @@ -429,6 +433,7 @@ change_icons = 0 can_off_process = 1 light_intensity = 1 + toolspeed = 2 //Proc to make the experimental welder generate fuel, optimized as fuck -Sieve @@ -465,6 +470,7 @@ materials = list(MAT_METAL=50) origin_tech = "engineering=1" attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked") + toolspeed = 1 /obj/item/weapon/crowbar/suicide_act(mob/user) user.visible_message("[user] is beating \himself to death with the [src.name]! It looks like \he's trying to commit suicide.") @@ -485,3 +491,4 @@ throw_range = 3 materials = list(MAT_METAL=70) icon_state = "crowbar_large" + toolspeed = 2 diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index b56722da39d..7b97f9cc674 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -16,7 +16,7 @@ if(istype(P, /obj/item/weapon/wrench)) playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You start wrenching the frame into place..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) user << "You wrench the frame into place." anchored = 1 state = 1 @@ -27,7 +27,7 @@ return playsound(loc, 'sound/items/Welder.ogg', 50, 1) user << "You start to deconstruct the frame..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) if(!src || !WT.remove_fuel(0, user)) return user << "You deconstruct the frame." new /obj/item/stack/sheet/plasteel( loc, 4) @@ -36,7 +36,7 @@ if(istype(P, /obj/item/weapon/wrench)) playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You start to unfasten the frame..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/P.toolspeed, target = src)) user << "You unfasten the frame." anchored = 0 state = 0 diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index fc34408821c..cdf69fe37b9 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -213,7 +213,7 @@ return user << "You begin cutting \the [src] apart..." playsound(loc, cutting_sound, 40, 1) - if(do_after(user,40,5,1, target = src)) + if(do_after(user,40/W.toolspeed,5,1, target = src)) if( !opened || !istype(src, /obj/structure/closet) || !user || !WT || !WT.isOn() || !user.loc ) return playsound(loc, cutting_sound, 50, 1) diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 4f7d765d7c0..bdeda3da687 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -126,7 +126,7 @@ qdel(src) return user << "You start to [open ? "close":"open"] the [src]" - if(do_after(user, 20, target = src)) + if(do_after(user, 20/W.toolspeed, target = src)) user << "You [open ? "close":"open"] the [src]" open = !open update_icon() @@ -187,7 +187,7 @@ if(istype(I, /obj/item/weapon/wrench)) user << "You start disassembling [src]..." playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, 30, target = src)) + if(do_after(user, 30/I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) new /obj/item/stack/sheet/mineral/wood(get_turf(src)) qdel(src) diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index d1c53fa6d5f..e7df765745b 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -460,7 +460,7 @@ "You start to disassemble the airlock assembly...") playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( !WT.isOn() ) return user << "You disassemble the airlock assembly." @@ -492,7 +492,7 @@ "You start to secure the airlock assembly to the floor...", \ "You hear wrenching.") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( src.anchored ) return user << "You secure the airlock assembly." @@ -506,7 +506,7 @@ user.visible_message("[user] unsecures the airlock assembly from the floor.", \ "You start to unsecure the airlock assembly from the floor...", \ "You hear wrenching.") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( !src.anchored ) return user << "You unsecure the airlock assembly." @@ -532,7 +532,7 @@ user.visible_message("[user] cuts the wires from the airlock assembly.", \ "You start to cut the wires from the airlock assembly...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( src.state != 1 ) return user << "You cut the wires from the airlock assembly." @@ -562,7 +562,7 @@ user.visible_message("[user] removes the electronics from the airlock assembly.", \ "You start to remove electronics from the airlock assembly...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( src.state != 2 ) return user << "You remove the airlock electronics." @@ -625,7 +625,7 @@ user.visible_message("[user] finishes the airlock.", \ "You start finishing the airlock...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(src.loc && state == 2) user << "You finish the airlock." var/obj/machinery/door/airlock/door diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 5b1b6e07594..295499ee016 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -20,7 +20,7 @@ playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) user.visible_message("[user] disassembles the girder.", \ "You start to disassemble the girder...", "You hear clanking and banging noises.") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(state != GIRDER_DISPLACED) return state = GIRDER_DISASSEMBLED @@ -31,7 +31,7 @@ else if(state == GIRDER_REINF) playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) user << "You start unsecuring support struts..." - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(state != GIRDER_REINF) return user << "You unsecure the support struts." @@ -44,7 +44,7 @@ return playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) user << "You start securing the girder..." - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) user << "You secure the girder." var/obj/structure/girder/G = new (loc) transfer_fingerprints_to(G) @@ -52,7 +52,7 @@ else if(state == GIRDER_NORMAL) playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) user << "You start unsecuring the girder..." - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) user << "You unsecure the girder." var/obj/structure/girder/displaced/D = new (loc) transfer_fingerprints_to(D) @@ -77,7 +77,7 @@ else if(istype(W, /obj/item/weapon/wirecutters) && state == GIRDER_REINF_STRUTS) playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1) user << "You start removing support struts..." - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) user << "You remove the support struts." new /obj/item/stack/sheet/plasteel(get_turf(src)) var/obj/structure/girder/G = new (loc) @@ -125,7 +125,7 @@ transfer_fingerprints_to(T) qdel(src) return - + if(!istype(W,/obj/item/stack/sheet)) return @@ -322,7 +322,7 @@ if(WT.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) user << "You start slicing apart the girder..." - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if( !WT.isOn() ) return user << "You slice apart the girder." diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index aa6b7d59ecf..a02c6ea02f8 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -80,7 +80,7 @@ mybag.attackby(I, user) else if(istype(I, /obj/item/weapon/crowbar)) user.visible_message("[user] begins to empty the contents of [src].", "You begin to empty the contents of [src]...") - if(do_after(user, 30, target = src)) + if(do_after(user, 30/I.toolspeed, target = src)) usr << "You empty the contents of [src]'s bucket onto the floor." reagents.reaction(src.loc) src.reagents.clear_reagents() diff --git a/code/game/objects/structures/kitchen_spike.dm b/code/game/objects/structures/kitchen_spike.dm index 4bc45ba6bcf..14ad3320de6 100644 --- a/code/game/objects/structures/kitchen_spike.dm +++ b/code/game/objects/structures/kitchen_spike.dm @@ -40,7 +40,7 @@ if(istype(I, /obj/item/weapon/crowbar)) if(!src.buckled_mob) playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) user << "You pry the spikes out of the frame." new /obj/item/stack/rods(loc, 4) var/obj/F = new /obj/structure/kitchenspike_frame(src.loc,) diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm index 04ce58ae6d6..27d46c1b551 100644 --- a/code/game/objects/structures/mirror.dm +++ b/code/game/objects/structures/mirror.dm @@ -70,7 +70,7 @@ if(WT.remove_fuel(0, user)) user << "You begin repairing [src]..." playsound(src, 'sound/items/Welder.ogg', 100, 1) - if(do_after(user, 10, target = src)) + if(do_after(user, 10/I.toolspeed, target = src)) if(!user || !WT || !WT.isOn()) return user << "You repair [src]." diff --git a/code/game/objects/structures/musician.dm b/code/game/objects/structures/musician.dm index 5969168b473..b497f7e3e6b 100644 --- a/code/game/objects/structures/musician.dm +++ b/code/game/objects/structures/musician.dm @@ -349,7 +349,7 @@ if (!anchored && !isinspace()) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << " You begin to tighten \the [src] to the floor..." - if (do_after(user, 20, target = src)) + if (do_after(user, 20/O.toolspeed, target = src)) user.visible_message( \ "[user] tightens \the [src]'s casters.", \ "You tighten \the [src]'s casters. Now it can be played again.", \ @@ -358,7 +358,7 @@ else if(anchored) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << " You begin to loosen \the [src]'s casters..." - if (do_after(user, 40, target = src)) + if (do_after(user, 40/O.toolspeed, target = src)) user.visible_message( \ "[user] loosens \the [src]'s casters.", \ "You loosen \the [src]. Now it can be pulled somewhere else.", \ diff --git a/code/game/objects/structures/reflector.dm b/code/game/objects/structures/reflector.dm index 17705c71df7..f2857ca7a8b 100644 --- a/code/game/objects/structures/reflector.dm +++ b/code/game/objects/structures/reflector.dm @@ -41,7 +41,7 @@ if(istype(W, /obj/item/weapon/wrench)) if(anchored) user << "Unweld the [src] first!" - if(do_after(user, 80, target = src)) + if(do_after(user, 80/W.toolspeed, target = src)) playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You dismantle the [src]." qdel(src) @@ -54,7 +54,7 @@ user.visible_message("[user.name] starts to weld the [src.name] to the floor.", \ "You start to weld \the [src] to the floor...", \ "You hear welding.") - if (do_after(user,20, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return anchored = 1 @@ -65,7 +65,7 @@ user.visible_message("[user.name] starts to cut the [src.name] free from the floor.", \ "You start to cut \the [src] free from the floor...", \ "You hear welding.") - if (do_after(user,20, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return anchored = 0 diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index 5c21ff8be4c..ae64e41c6a9 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -22,7 +22,7 @@ user.visible_message("[user] starts removing [src]...", \ "You start unfastening [src].") playsound(src, 'sound/items/Ratchet.ogg', 50, 1) - if(!do_after(user, 30, target = src)) + if(!do_after(user, 30/O.toolspeed, target = src)) return playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) user.visible_message("[user] unfastens [src].", \ diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index f54046e7065..94e395d6ac9 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -24,7 +24,7 @@ playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) user.visible_message("[user] is loosening the [name]'s bolts.", \ "You are loosening the [name]'s bolts...") - if(do_after(user,40, target = src)) + if(do_after(user,40/W.toolspeed, target = src)) if(!src.loc || !anchored) return user.visible_message("[user] loosened the [name]'s bolts!", \ @@ -37,7 +37,7 @@ playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) user.visible_message("[user] is securing the [name]'s bolts...", \ "You are securing the [name]'s bolts...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src.loc || anchored) return user.visible_message("[user] has secured the [name]'s bolts.", \ @@ -68,7 +68,7 @@ playsound(loc, 'sound/items/Welder.ogg', 40, 1) user.visible_message("[user] is slicing apart the [name].", \ "You are slicing apart the [name]...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src.loc) return playsound(loc, 'sound/items/Welder2.ogg', 50, 1) diff --git a/code/game/objects/structures/table_frames.dm b/code/game/objects/structures/table_frames.dm index cddb027e0e8..c05d1251165 100644 --- a/code/game/objects/structures/table_frames.dm +++ b/code/game/objects/structures/table_frames.dm @@ -24,7 +24,7 @@ if(istype(I, /obj/item/weapon/wrench)) user << "You start disassembling [src]..." playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, 30, target = src)) + if(do_after(user, 30/I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) for(var/i = 1, i <= framestackamount, i++) new framestack(get_turf(src)) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 2d8da625c67..f114c0842c6 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -340,14 +340,14 @@ if(src.status == 2) user << "You start weakening the reinforced table..." playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) - if (do_after(user, 50, target = src)) + if (do_after(user, 50/W.toolspeed, target = src)) if(!src || !WT.isOn()) return user << "You weaken the table." src.status = 1 else user << "You start strengthening the reinforced table..." playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) - if (do_after(user, 50, target = src)) + if (do_after(user, 50/W.toolspeed, target = src)) if(!src || !WT.isOn()) return user << "You strengthen the table." src.status = 2 diff --git a/code/game/objects/structures/transit_tubes/transit_tube.dm b/code/game/objects/structures/transit_tubes/transit_tube.dm index e0429724bd5..28e788c0c2f 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube.dm @@ -46,7 +46,7 @@ obj/structure/transit_tube/ex_act(severity, target) return user.visible_message("[user] starts to deattach \the [src].", "You start to deattach the [name]...") playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) - if(do_after(user, 35, target = src)) + if(do_after(user, 35/W.toolspeed, target = src)) user << "You deattach the [name]." var/obj/structure/R = new tube_construction(src.loc) R.icon_state = src.icon_state diff --git a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm index 772b8e33c1b..010200185ee 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm @@ -95,7 +95,7 @@ if(istype(I, /obj/item/weapon/wrench)) user << "You start attaching the [name]..." src.add_fingerprint(user) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) if(!src) return user << "You attach the [name]." var/obj/structure/transit_tube/R = src.buildtube() diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 27a759dfc2b..365acba4a54 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -50,7 +50,7 @@ if(istype(I, /obj/item/weapon/crowbar)) user << "You start to [cistern ? "replace the lid on the cistern" : "lift the lid off the cistern"]..." playsound(loc, 'sound/effects/stonedoor_openclose.ogg', 50, 1) - if(do_after(user, 30, target = src)) + if(do_after(user, 30/I.toolspeed, target = src)) user.visible_message("[user] [cistern ? "replaces the lid on the cistern" : "lifts the lid off the cistern"]!", "You [cistern ? "replace the lid on the cistern" : "lift the lid off the cistern"]!", "You hear grinding porcelain.") cistern = !cistern update_icon() @@ -185,7 +185,7 @@ user << "The water temperature seems to be [watertemp]." if(istype(I, /obj/item/weapon/wrench)) user << "You begin to adjust the temperature valve with \the [I]..." - if(do_after(user, 50, target = src)) + if(do_after(user, 50/I.toolspeed, target = src)) switch(watertemp) if("normal") watertemp = "freezing" diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index ba1f9b119cd..829869976a4 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -83,7 +83,7 @@ user.visible_message("[user] disassembles the windoor assembly.", "You start to disassemble the windoor assembly...") playsound(loc, 'sound/items/Welder2.ogg', 50, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src || !WT.isOn()) return user << "You disassemble the windoor assembly." var/obj/item/stack/sheet/rglass/RG = new (get_turf(src), 5) @@ -104,7 +104,7 @@ playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) user.visible_message("[user] secures the windoor assembly to the floor.", "You start to secure the windoor assembly to the floor...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src || anchored) return for(var/obj/machinery/door/window/WD in loc) @@ -123,7 +123,7 @@ playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) user.visible_message("[user] unsecures the windoor assembly to the floor.", "You start to unsecure the windoor assembly to the floor...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src || !anchored) return user << "You unsecure the windoor assembly." @@ -180,7 +180,7 @@ playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1) user.visible_message("[user] cuts the wires from the airlock assembly.", "You start to cut the wires from airlock assembly...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src || state != "02") return @@ -218,7 +218,7 @@ playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) user.visible_message("[user] removes the electronics from the airlock assembly.", "You start to uninstall electronics from the airlock assembly...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(!src || !electronics) return user << "You remove the airlock electronics." @@ -248,7 +248,7 @@ playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) user.visible_message("[user] pries the windoor into the frame.", "You start prying the windoor into the frame...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/W.toolspeed, target = src)) if(loc && electronics) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index cb0c4bc4957..9431ee3dc3d 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -200,7 +200,7 @@ else if(!reinf) user << (anchored ? "You begin to unscrew the window from the floor..." : "You begin to screw the window to the floor...") - if(do_after(user, 40, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) if(reinf && (state == 1 || state == 2)) //If state was unfastened, fasten it, else do the reverse state = (state == 1 ? 2 : 1) @@ -217,7 +217,7 @@ else if (istype(I, /obj/item/weapon/crowbar) && reinf && (state == 0 || state == 1)) user << (state == 0 ? "You begin to lever the window into the frame..." : "You begin to lever the window out of the frame...") playsound(loc, 'sound/items/Crowbar.ogg', 75, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) //If state was out of frame, put into frame, else do the reverse state = (state == 0 ? 1 : 0) user << (state == 1 ? "You pry the window into the frame." : "You pry the window out of the frame.") @@ -228,7 +228,7 @@ if(WT.remove_fuel(0,user)) user << "You begin repairing [src]..." playsound(loc, 'sound/items/Welder.ogg', 40, 1) - if(do_after(user, 40, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) health = maxhealth playsound(loc, 'sound/items/Welder2.ogg', 50, 1) else @@ -239,7 +239,7 @@ else if(istype(I, /obj/item/weapon/wrench) && !anchored) playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) user << " You begin to disassemble [src]..." - if(do_after(user, 40, target = src)) + if(do_after(user, 40/I.toolspeed, target = src)) if(disassembled) return //Prevents multiple deconstruction attempts diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index b2db1033a60..d75c02fe808 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -98,7 +98,7 @@ if(istype(C, /obj/item/weapon/wrench)) user << "You begin removing rods..." playsound(src, 'sound/items/Ratchet.ogg', 80, 1) - if(do_after(user, 30, target = src)) + if(do_after(user, 30/C.toolspeed, target = src)) if(!istype(src, /turf/simulated/floor/engine)) return new /obj/item/stack/rods(src, 2) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 5f9d7596609..074a31dabc3 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -178,7 +178,7 @@ if( WT.remove_fuel(0,user) ) user << "You begin slicing through the outer plating..." playsound(src, 'sound/items/Welder.ogg', 100, 1) - if(do_after(user, slicing_duration, target = src)) + if(do_after(user, slicing_duration/W.toolspeed, target = src)) if( !istype(src, /turf/simulated/wall) || !user || !WT || !WT.isOn() || !T ) return 1 if( user.loc == T && user.get_active_hand() == WT ) diff --git a/code/modules/food&drinks/kitchen machinery/microwave.dm b/code/modules/food&drinks/kitchen machinery/microwave.dm index 94326f51489..878d51853b1 100644 --- a/code/modules/food&drinks/kitchen machinery/microwave.dm +++ b/code/modules/food&drinks/kitchen machinery/microwave.dm @@ -66,7 +66,7 @@ "[user] starts to fix part of the microwave.", \ "You start to fix part of the microwave..." \ ) - if (do_after(user,20, target = src)) + if (do_after(user,20/O.toolspeed, target = src)) user.visible_message( \ "[user] fixes part of the microwave.", \ "You fix part of the microwave." \ @@ -77,7 +77,7 @@ "[user] starts to fix part of the microwave.", \ "You start to fix part of the microwave..." \ ) - if (do_after(user,20, target = src)) + if (do_after(user,20/O.toolspeed, target = src)) user.visible_message( \ "[user] fixes the microwave.", \ "You fix the microwave." \ diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 85d0851f300..13c40680a50 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -768,7 +768,7 @@ user.visible_message("[user] begins to wrench [src] into place.", \ "You begin to wrench [src] in place...") playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) - if (do_after(user, 20, target = src)) + if (do_after(user, 20/O.toolspeed, target = src)) if(anchored) return anchored = 1 @@ -778,7 +778,7 @@ user.visible_message("[user] begins to unwrench [src].", \ "You begin to unwrench [src]...") playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) - if (do_after(user, 20, target = src)) + if (do_after(user, 20/O.toolspeed, target = src)) if(!anchored) return anchored = 0 diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 3cb02b4f5ed..1af63f8b489 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -38,13 +38,13 @@ if(0) if(istype(I, /obj/item/weapon/wrench)) playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) user << "You wrench the frame into place." anchored = 1 state = 1 if(istype(I, /obj/item/weapon/crowbar)) playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) user << "You pry the frame apart." new /obj/item/stack/sheet/mineral/wood(loc, 4) qdel(src) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index e9955f28606..f7791f68467 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -429,7 +429,7 @@ if (WT.remove_fuel(0, user)) //The welder has 1u of fuel consumed by it's afterattack, so we don't need to worry about taking any away. if(src == user) user << "You start fixing youself..." - if(!do_after(user, 50, target = src)) + if(!do_after(user, 50/W.toolspeed, target = src)) return adjustBruteLoss(-30) @@ -510,7 +510,7 @@ else playsound(src, 'sound/items/Ratchet.ogg', 50, 1) user << "You start to unfasten [src]'s securing bolts..." - if(do_after(user, 50, target = src) && !cell) + if(do_after(user, 50/W.toolspeed, target = src) && !cell) user.visible_message("[user] deconstructs [src]!", "You unfasten the securing bolts, and [src] falls to pieces!") deconstruct() diff --git a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm index 603edee9c56..9e4eac0075c 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm @@ -98,7 +98,7 @@ if(istype(I, /obj/item/weapon/screwdriver) && stat != DEAD) if(health < maxHealth) user << "You start to tighten loose screws on [src]..." - if(do_after(user,80,target=user)) + if(do_after(user,80/I.toolspeed,target=user)) adjustBruteLoss(-getBruteLoss()) visible_message("[user] tightens [src == user ? "their" : "[src]'s"] loose screws!", "You tighten [src == user ? "your" : "[src]'s"] loose screws.") else @@ -110,7 +110,7 @@ user.visible_message("[user] starts resetting [src]...", \ "You press down on [src]'s factory reset control...") playsound(src, 'sound/items/Ratchet.ogg', 50, 1) - if(!do_after(user, 50, target = src)) + if(!do_after(user, 50/I.toolspeed, target = src)) return user.visible_message("[user] resets [src]!", \ "You reset [src]'s directives to factory defaults!") diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index 99fcaf0a589..75e9cc96ee3 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -262,7 +262,7 @@ return playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) user << "You start [anchored ? "unwrenching" : "wrenching"] [src]..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/O.toolspeed, target = src)) if(gc_destroyed) return user << "You [anchored ? "unwrench" : "wrench"] [src]." diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index bf39d7dc76d..1507f09f2f4 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -386,7 +386,7 @@ return playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) user << "You are trying to remove the power control board..." //lpeters - fixed grammar issues - if(do_after(user, 50, target = src)) + if(do_after(user, 50/W.toolspeed, target = src)) if (has_electronics==1) has_electronics = 0 if ((stat & BROKEN) || malfhack) @@ -518,7 +518,7 @@ "You start welding the APC frame...", \ "You hear welding.") playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) - if(do_after(user, 50, target = src)) + if(do_after(user, 50/W.toolspeed, target = src)) if(!src || !WT.remove_fuel(3, user)) return if (emagged || malfhack || (stat & BROKEN) || opened==2) new /obj/item/stack/sheet/metal(loc) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 62a288969c4..75484746e4c 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -60,7 +60,7 @@ if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) usr << "You begin deconstructing [src]..." - if (!do_after(usr, 30, target = src)) + if (!do_after(usr, 30/W.toolspeed, target = src)) return new /obj/item/stack/sheet/metal( get_turf(src.loc), sheets_refunded ) user.visible_message("[user.name] deconstructs [src].", \ diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 63c1566b534..eecacac5f85 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -228,7 +228,7 @@ user.visible_message("[user.name] starts to weld the [src.name] to the floor.", \ "You start to weld \the [src] to the floor...", \ "You hear welding.") - if (do_after(user,20, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = 2 user << "You weld \the [src] to the floor." @@ -239,7 +239,7 @@ user.visible_message("[user.name] starts to cut the [src.name] free from the floor.", \ "You start to cut \the [src] free from the floor...", \ "You hear welding.") - if (do_after(user,20, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = 1 user << "You cut \the [src] free from the floor." diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm index 92c5e2070d1..008416ac9e5 100644 --- a/code/modules/power/singularity/field_generator.dm +++ b/code/modules/power/singularity/field_generator.dm @@ -130,7 +130,7 @@ field_generator power level display user.visible_message("[user.name] starts to weld the [src.name] to the floor.", \ "You start to weld \the [src] to the floor...", \ "You hear welding.") - if (do_after(user,20, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = 2 user << "You weld the field generator to the floor." @@ -142,7 +142,7 @@ field_generator power level display user.visible_message("[user.name] starts to cut the [src.name] free from the floor.", \ "You start to cut \the [src] free from the floor...", \ "You hear welding.") - if (do_after(user,20, target = src)) + if (do_after(user,20/W.toolspeed, target = src)) if(!src || !WT.isOn()) return state = 1 user << "You cut \the [src] free from the floor." diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index d7a58ac043f..3810f00ff43 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -60,7 +60,7 @@ if(istype(W, /obj/item/weapon/crowbar)) playsound(src.loc, 'sound/machines/click.ogg', 50, 1) user.visible_message("[user] begins to take the glass off the solar panel.", "You begin to take the glass off the solar panel...") - if(do_after(user, 50, target = src)) + if(do_after(user, 50/W.toolspeed, target = src)) var/obj/item/solar_assembly/S = locate() in src if(S) S.loc = src.loc @@ -386,10 +386,10 @@ data["connected_tracker"] = (connected_tracker ? 1 : 0) return data -/obj/machinery/power/solar_control/attackby(obj/I, mob/user, params) +/obj/machinery/power/solar_control/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) if (src.stat & BROKEN) user << "The broken glass falls out." var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc ) diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index 874b2ca1733..233685983a3 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -63,7 +63,7 @@ if(istype(W, /obj/item/weapon/crowbar)) playsound(src.loc, 'sound/machines/click.ogg', 50, 1) user.visible_message("[user] begins to take the glass off the solar tracker.", "You begin to take the glass off the solar tracker...") - if(do_after(user, 50, target = src)) + if(do_after(user, 50/W.toolspeed, target = src)) var/obj/item/solar_assembly/S = locate() in src if(S) S.loc = src.loc diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 7cc46f27a26..2b98c2d7e15 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -122,7 +122,7 @@ afterattack(user, user) //you know the drill user.visible_message("[src] goes off!", "[src] goes off in your face!") return - if(do_after(user, 30, target = src)) + if(do_after(user, 30/A.toolspeed, target = src)) if(magazine.ammo_count()) user << "You can't modify it!" return @@ -135,7 +135,7 @@ afterattack(user, user) //and again user.visible_message("[src] goes off!", "[src] goes off in your face!") return - if(do_after(user, 30, target = src)) + if(do_after(user, 30/A.toolspeed, target = src)) if(magazine.ammo_count()) user << "You can't modify it!" return diff --git a/code/modules/recycling/disposal-construction.dm b/code/modules/recycling/disposal-construction.dm index 5d869bde26c..b1227bb5b80 100644 --- a/code/modules/recycling/disposal-construction.dm +++ b/code/modules/recycling/disposal-construction.dm @@ -237,7 +237,7 @@ if(W.remove_fuel(0,user)) playsound(loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start welding the [nicetype] in place..." - if(do_after(user, 20, target = src)) + if(do_after(user, 20/I.toolspeed, target = src)) if(!loc || !W.isOn()) return user << "The [nicetype] has been welded in place." diff --git a/code/modules/recycling/disposal-structures.dm b/code/modules/recycling/disposal-structures.dm index 0589e10be6d..7ea048f1bf3 100644 --- a/code/modules/recycling/disposal-structures.dm +++ b/code/modules/recycling/disposal-structures.dm @@ -693,7 +693,7 @@ if(W.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start slicing the disposal pipe..." - if(do_after(user,30, target = src)) + if(do_after(user,30/I.toolspeed, target = src)) if(!src || !W.isOn()) return Deconstruct() user << "You slice the disposal pipe." @@ -827,7 +827,7 @@ if(W.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start slicing the floorweld off \the [src]..." - if(do_after(user,20, target = src)) + if(do_after(user,20/I.toolspeed, target = src)) if(!src || !W.isOn()) return user << "You slice the floorweld off \the [src]." stored.loc = loc diff --git a/code/modules/recycling/disposal-unit.dm b/code/modules/recycling/disposal-unit.dm index 0607f28e607..74be5a2317d 100644 --- a/code/modules/recycling/disposal-unit.dm +++ b/code/modules/recycling/disposal-unit.dm @@ -89,7 +89,7 @@ return playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) user << "You start slicing the floorweld off \the [src]..." - if(do_after(user,20, target = src)) + if(do_after(user,20/I.toolspeed, target = src)) if(!W.isOn()) return user << "You slice the floorweld off \the [src]."