diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 6b59f02057f..3135d4fd9ed 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -100,7 +100,7 @@ var/bomb_set switch(deconstruction_state) if(NUKESTATE_INTACT) if(istype(I, /obj/item/weapon/screwdriver/nuke)) - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) user << "You start removing [src]'s front panel's screws..." if(do_after(user, 60/I.toolspeed,target=src)) deconstruction_state = NUKESTATE_UNSCREWED @@ -110,7 +110,7 @@ var/bomb_set if(NUKESTATE_UNSCREWED) if(istype(I, /obj/item/weapon/crowbar)) user << "You start removing [src]'s front panel..." - playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) if(do_after(user,30/I.toolspeed,target=src)) user << "You remove [src]'s front panel." deconstruction_state = NUKESTATE_PANEL_REMOVED @@ -119,7 +119,7 @@ var/bomb_set if(NUKESTATE_PANEL_REMOVED) if(istype(I, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/welder = I - playsound(loc, 'sound/items/Welder.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) user << "You start cutting [src]'s inner plate..." if(welder.remove_fuel(1,user)) if(do_after(user,80/I.toolspeed,target=src)) @@ -130,7 +130,7 @@ var/bomb_set if(NUKESTATE_WELDED) if(istype(I, /obj/item/weapon/crowbar)) user << "You start prying off [src]'s inner plate..." - playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) 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 diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index f957f81704a..a85776fef79 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -76,7 +76,7 @@ var/list/announcement_systems = list() /obj/machinery/announcement_system/attackby(obj/item/P, mob/user, params) if(istype(P, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) panel_open = !panel_open user << "You [panel_open ? "open" : "close"] the maintenance hatch of [src]." update_icon() diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 558c5d02c1d..05e66436bbd 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -128,7 +128,7 @@ return user.electrocute_act(10, src) -/obj/machinery/camera/attackby(obj/W, mob/living/user, params) +/obj/machinery/camera/attackby(obj/item/W, mob/living/user, params) var/msg = "You attach [W] into the assembly's inner circuits." var/msg2 = "[src] already has that upgrade!" @@ -136,7 +136,7 @@ if(istype(W, /obj/item/weapon/screwdriver)) panel_open = !panel_open user << "You screw the camera's panel [panel_open ? "open" : "closed"]." - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) return if(panel_open) diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 87b08024f3f..1df5077ed9c 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -43,7 +43,7 @@ return else if(istype(W, /obj/item/weapon/wrench)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You unattach the assembly from its place." new /obj/item/wallframe/camera(get_turf(src)) qdel(src) @@ -73,7 +73,7 @@ if(3) // State 3 if(istype(W, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) var/input = stripped_input(user, "Which networks would you like to connect this camera to? Seperate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Set Network", "SS13") if(!input) @@ -98,7 +98,7 @@ else if(istype(W, /obj/item/weapon/wirecutters)) new/obj/item/stack/cable_coil(get_turf(src), 2) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You cut the wires from the circuits." state = 2 return @@ -117,7 +117,7 @@ var/obj/U = locate(/obj) in upgrades if(U) user << "You unattach an upgrade from the assembly." - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) U.loc = get_turf(src) upgrades -= U return @@ -138,4 +138,4 @@ /obj/structure/camera_assembly/deconstruct(disassembled = TRUE) if(!(flags & NODECONSTRUCT)) new /obj/item/stack/sheet/metal(loc) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index f62a0be4816..a5d12712a9b 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -9,7 +9,7 @@ switch(state) if(0) if(istype(P, /obj/item/weapon/wrench)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You start wrenching the frame into place..." if(do_after(user, 20/P.toolspeed, target = src)) user << "You wrench the frame into place." @@ -22,7 +22,7 @@ if(!WT.isOn()) user << "The welding tool must be on to complete this task!" return - playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You start deconstructing the frame..." if(do_after(user, 20/P.toolspeed, target = src)) if(!src || !WT.isOn()) return @@ -33,7 +33,7 @@ return if(1) if(istype(P, /obj/item/weapon/wrench)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You start to unfasten the frame..." if(do_after(user, 20/P.toolspeed, target = src)) user << "You unfasten the frame." @@ -55,13 +55,13 @@ user << "This frame does not accept circuit boards of this type!" return if(istype(P, /obj/item/weapon/screwdriver) && circuit) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You screw the circuit board into place." state = 2 icon_state = "2" return if(istype(P, /obj/item/weapon/crowbar) && circuit) - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You remove the circuit board." state = 1 icon_state = "0" @@ -71,7 +71,7 @@ return if(2) if(istype(P, /obj/item/weapon/screwdriver) && circuit) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You unfasten the circuit board." state = 1 icon_state = "1" @@ -92,7 +92,7 @@ return if(3) if(istype(P, /obj/item/weapon/wirecutters)) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You remove the cables." state = 2 icon_state = "2" @@ -118,7 +118,7 @@ return if(4) if(istype(P, /obj/item/weapon/crowbar)) - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You remove the glass panel." state = 3 icon_state = "3" @@ -126,7 +126,7 @@ G.add_fingerprint(user) return if(istype(P, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You connect the monitor." var/obj/B = new src.circuit.build_path (src.loc, circuit) transfer_fingerprints_to(B) diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 38ef9137c09..0da26bc5ba4 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -82,7 +82,7 @@ /obj/machinery/computer/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver) && circuit && !(flags&NODECONSTRUCT)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) user << " You start to disconnect the monitor..." if(do_after(user, 20/I.toolspeed, target = src)) deconstruct(TRUE, user) diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index ec10b96b79f..de90e7e936a 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -97,7 +97,7 @@ user << "You need five length of cable to wire the frame!" return if(istype(P, /obj/item/weapon/screwdriver) && !anchored) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, P.usesound, 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/P.toolspeed, target = src)) @@ -109,7 +109,7 @@ return if(istype(P, /obj/item/weapon/wrench)) user << "You start [anchored ? "un" : ""]securing [name]..." - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, P.usesound, 75, 1) if(do_after(user, 40/P.toolspeed, target = src)) if(state == 1) user << "You [anchored ? "un" : ""]secure [name]." @@ -119,7 +119,7 @@ if(2) if(istype(P, /obj/item/weapon/wrench)) user << "You start [anchored ? "un" : ""]securing [name]..." - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, P.usesound, 75, 1) if(do_after(user, 40/P.toolspeed, target = src)) user << "You [anchored ? "un" : ""]secure [name]." anchored = !anchored @@ -148,7 +148,7 @@ return if(istype(P, /obj/item/weapon/wirecutters)) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) user << "You remove the cables." state = 1 icon_state = "box_0" @@ -158,7 +158,7 @@ if(3) if(istype(P, /obj/item/weapon/crowbar)) - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) state = 2 circuit.loc = src.loc components.Remove(circuit) @@ -182,7 +182,7 @@ component_check = 0 break if(component_check) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, P.usesound, 50, 1) var/obj/machinery/new_machine = new src.circuit.build_path(src.loc, 1) new_machine.on_construction() for(var/obj/O in new_machine.component_parts) @@ -309,4 +309,4 @@ micro-manipulator, console screen, beaker, Microlaser, matter bin, power cells. /obj/item/weapon/circuitboard/machine/clockwork name = "clockwork board (Report This)" - icon_state = "clock_mod" \ No newline at end of file + icon_state = "clock_mod" diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index cf112181ff3..a780d26d25d 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -913,7 +913,7 @@ var/list/airlock_overlays = list() beingcrowbarred = 0 if(panel_open && charge) user << "You carefully start removing [charge] from [src]..." - playsound(get_turf(src), 'sound/items/Crowbar.ogg', 50, 1) + playsound(get_turf(src), I.usesound, 50, 1) if(!do_after(user, 150/I.toolspeed, target = src)) user << "You slip and [charge] detonates!" charge.ex_act(1) @@ -925,7 +925,7 @@ var/list/airlock_overlays = list() charge = null return if( beingcrowbarred && (density && welded && !operating && src.panel_open && (!hasPower()) && !src.locked) ) - playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(src.loc, I.usesound, 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/I.toolspeed, target = src)) @@ -954,6 +954,31 @@ var/list/airlock_overlays = list() else close(2) + if(istype(I, /obj/item/weapon/crowbar/power)) + if(isElectrified()) + shock(user,100)//it's like sticking a forck in a power socket + return + + if(!density)//already open + return + + if(locked) + user << "The bolts are down, it won't budge!" + return + + if(welded) + user << "It's welded, it won't budge!" + return + + var/time_to_open = 5 + if(hasPower()) + time_to_open = 50 + playsound(src, 'sound/machines/airlock_alien_prying.ogg',100,1) //is it aliens or just the CE being a dick? + if(do_after(user, time_to_open,target = src)) + open(2) + if(density && !open(2)) + user << "Despite your attempts, the [src] refuses to open." + /obj/machinery/door/airlock/plasma/attackby(obj/item/C, mob/user, params) if(C.is_hot() > 300)//If the temperature of the object is over 300, then ignite message_admins("Plasma airlock ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(src)]") diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index cf42af56410..97e147448c3 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -460,7 +460,7 @@ if(istype(I, /obj/item/weapon/screwdriver)) if(construction_state == GEAR_SECURE) user.visible_message("[user] begins unfastening [src]'s gear...", "You begin unfastening [src]'s gear...") - playsound(src, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src, I.usesound, 50, 1) if(!do_after(user, 75 / I.toolspeed, target = src)) return 1 //Returns 1 so as not to have extra interactions with the tools used (i.e. prying open) user.visible_message("[user] unfastens [src]'s gear!", "[src]'s gear shifts slightly with a pop.") @@ -468,7 +468,7 @@ construction_state = GEAR_UNFASTENED else if(construction_state == GEAR_UNFASTENED) user.visible_message("[user] begins fastening [src]'s gear...", "You begin fastening [src]'s gear...") - playsound(src, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src, I.usesound, 50, 1) if(!do_after(user, 75 / I.toolspeed, target = src)) return 1 user.visible_message("[user] fastens [src]'s gear!", "[src]'s gear shifts back into place.") @@ -483,7 +483,7 @@ return 0 else if(construction_state == GEAR_UNFASTENED) user.visible_message("[user] begins loosening [src]'s gear...", "You begin loosening [src]'s gear...") - playsound(src, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src, I.usesound, 50, 1) if(!do_after(user, 80 / I.toolspeed, target = src)) return 1 user.visible_message("[user] loosens [src]'s gear!", "[src]'s gear pops off and dangles loosely.") @@ -491,7 +491,7 @@ construction_state = GEAR_LOOSE else if(construction_state == GEAR_LOOSE) user.visible_message("[user] begins tightening [src]'s gear...", "You begin tightening [src]'s gear into place...") - playsound(src, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src, I.usesound, 50, 1) if(!do_after(user, 80 / I.toolspeed, target = src)) return 1 user.visible_message("[user] tightens [src]'s gear!", "You firmly tighten [src]'s gear into place.") @@ -504,7 +504,7 @@ return 1 else if(construction_state == GEAR_LOOSE) user.visible_message("[user] begins slowly lifting off [src]'s gear...", "You slowly begin lifting off [src]'s gear...") - playsound(src, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src, I.usesound, 50, 1) if(!do_after(user, 85 / I.toolspeed, target = src)) return 1 user.visible_message("[user] lifts off [src]'s gear, causing it to fall apart!", "You lift off [src]'s gear, causing it to fall \ diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 02cb9157938..7cb67847aa8 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -215,14 +215,14 @@ if(density || operating) user << "You need to open the door to access the maintenance panel!" return - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) panel_open = !panel_open user << "You [panel_open ? "open":"close"] the maintenance panel of the [src.name]." return if(istype(I, /obj/item/weapon/crowbar)) if(panel_open && !density && !operating) - playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(src.loc, I.usesound, 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/I.toolspeed, target = src)) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index faf731632d8..6384a693eb3 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -136,7 +136,7 @@ add_fingerprint(user) if(istype(W, /obj/item/weapon/screwdriver) && buildstage == 2) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) panel_open = !panel_open user << "The wires have been [panel_open ? "exposed" : "unexposed"]." update_icon() @@ -155,7 +155,7 @@ else if (istype(W, /obj/item/weapon/wirecutters)) buildstage = 1 - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) new /obj/item/stack/cable_coil(user.loc, 5) user << "You cut the wires from \the [src]." update_icon() @@ -173,7 +173,7 @@ return else if(istype(W, /obj/item/weapon/crowbar)) - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user.visible_message("[user.name] removes the electronics from [src.name].", \ "You start prying out the circuit...") if(do_after(user, 20/W.toolspeed, target = src)) @@ -199,7 +199,7 @@ "You remove the fire alarm assembly from the wall.") var/obj/item/wallframe/firealarm/frame = new /obj/item/wallframe/firealarm() frame.loc = user.loc - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) qdel(src) return return ..() @@ -289,4 +289,4 @@ return for(var/area/RA in A.related) RA.partyalert() - return \ No newline at end of file + return diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index ce2ac895743..0439e7faea8 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -292,7 +292,7 @@ Class Procs: /obj/machinery/proc/default_pry_open(obj/item/weapon/crowbar/C) . = !(state_open || panel_open || is_operational() || (flags & NODECONSTRUCT)) && istype(C) if(.) - playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(loc, C.usesound, 50, 1) visible_message("[usr] pries open \the [src].", "You pry open \the [src].") open_machine() return 1 @@ -300,7 +300,7 @@ Class Procs: /obj/machinery/proc/default_deconstruction_crowbar(obj/item/weapon/crowbar/C, ignore_panel = 0) . = istype(C) && (panel_open || ignore_panel) && !(flags & NODECONSTRUCT) if(.) - playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(loc, C.usesound, 50, 1) deconstruct(TRUE) /obj/machinery/deconstruct(disassembled = TRUE) @@ -324,7 +324,7 @@ Class Procs: /obj/machinery/proc/default_deconstruction_screwdriver(mob/user, icon_state_open, icon_state_closed, obj/item/weapon/screwdriver/S) if(istype(S) && !(flags & NODECONSTRUCT)) - playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(loc, S.usesound, 50, 1) if(!panel_open) panel_open = 1 icon_state = icon_state_open @@ -338,7 +338,7 @@ Class Procs: /obj/machinery/proc/default_change_direction_wrench(mob/user, obj/item/weapon/wrench/W) if(panel_open && istype(W)) - playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(loc, W.usesound, 50, 1) setDir(turn(dir,-90)) user << "You rotate [src]." return 1 @@ -347,7 +347,7 @@ Class Procs: /obj/proc/default_unfasten_wrench(mob/user, obj/item/weapon/wrench/W, time = 20) if(istype(W) && !(flags & NODECONSTRUCT)) user << "You begin [anchored ? "un" : ""]securing [name]..." - playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(loc, W.usesound, 50, 1) if(do_after(user, time/W.toolspeed, target = src)) user << "You [anchored ? "un" : ""]secure [name]." anchored = !anchored diff --git a/code/game/machinery/porta_turret/portable_turret_construct.dm b/code/game/machinery/porta_turret/portable_turret_construct.dm index 4e92cf434d9..5ac7b22e2e2 100644 --- a/code/game/machinery/porta_turret/portable_turret_construct.dm +++ b/code/game/machinery/porta_turret/portable_turret_construct.dm @@ -23,14 +23,14 @@ switch(build_step) if(PTURRET_UNSECURED) //first step if(istype(I, /obj/item/weapon/wrench) && !anchored) - playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) user << "You secure the external bolts." anchored = 1 build_step = PTURRET_BOLTED return else if(istype(I, /obj/item/weapon/crowbar) && !anchored) - playsound(loc, 'sound/items/Crowbar.ogg', 75, 1) + playsound(loc, I.usesound, 75, 1) user << "You dismantle the turret construction." new /obj/item/stack/sheet/metal( loc, 5) qdel(src) @@ -48,7 +48,7 @@ return else if(istype(I, /obj/item/weapon/wrench)) - playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(loc, I.usesound, 75, 1) user << "You unfasten the external bolts." anchored = 0 build_step = PTURRET_UNSECURED @@ -57,7 +57,7 @@ if(PTURRET_START_INTERNAL_ARMOUR) if(istype(I, /obj/item/weapon/wrench)) - playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) user << "You bolt the metal armor into place." build_step = PTURRET_INTERNAL_ARMOUR_ON return @@ -94,7 +94,7 @@ return else if(istype(I, /obj/item/weapon/wrench)) - playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) user << "You remove the turret's metal armor bolts." build_step = PTURRET_START_INTERNAL_ARMOUR return @@ -111,7 +111,7 @@ if(PTURRET_SENSORS_ON) if(istype(I, /obj/item/weapon/screwdriver)) - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) build_step = PTURRET_CLOSED user << "You close the internal access hatch." return @@ -128,7 +128,7 @@ return else if(istype(I, /obj/item/weapon/screwdriver)) - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, I.usesound, 100, 1) build_step = PTURRET_SENSORS_ON user << "You open the internal access hatch." return @@ -159,7 +159,7 @@ qdel(src) else if(istype(I, /obj/item/weapon/crowbar)) - playsound(loc, 'sound/items/Crowbar.ogg', 75, 1) + playsound(loc, I.usesound, 75, 1) user << "You pry off the turret's exterior armor." new /obj/item/stack/sheet/metal(loc, 2) build_step = PTURRET_CLOSED diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index 036959b4ec9..fad92884531 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -154,7 +154,7 @@ /obj/machinery/shieldgen/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/screwdriver)) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) panel_open = !panel_open if(panel_open) user << "You open the panel and expose the wiring." @@ -180,11 +180,11 @@ user << "The bolts are covered! Unlocking this would retract the covers." return if(!anchored && !isinspace()) - playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user << "You secure \the [src] to the floor!" anchored = 1 else if(anchored) - playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user << "You unsecure \the [src] from the floor!" if(active) user << "\The [src] shuts off!" @@ -376,13 +376,13 @@ return else if(!anchored && !isinspace()) //Can't fasten this thing in space - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, W.usesound, 75, 1) user << "You secure the external reinforcing bolts to the floor." anchored = 1 return else //You can unfasten it tough, if you somehow manage to fasten it. - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, W.usesound, 75, 1) user << "You undo the external reinforcing bolts." anchored = 0 return diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index c01cad9f22a..fd00a10656b 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -25,6 +25,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) var/hitsound = null + var/usesound = null var/throwhitsound = null var/w_class = 3 var/slot_flags = 0 //This is used to determine on which slots an item can fit. diff --git a/code/game/objects/items/devices/geiger_counter.dm b/code/game/objects/items/devices/geiger_counter.dm index c35b04a34b0..59f0e9fdbc6 100644 --- a/code/game/objects/items/devices/geiger_counter.dm +++ b/code/game/objects/items/devices/geiger_counter.dm @@ -121,7 +121,7 @@ user << "Turn off [src] before you perform this action!" 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) + playsound(user, I.usesound, 50, 1) 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!") diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 6a340caac7f..5060df42338 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -34,6 +34,23 @@ /obj/item/clothing/gloves/ ) +/obj/item/weapon/storage/belt/utility/chief + name = "Chief Engineer's toolbelt" + desc = "Holds tools, looks snazzy" + icon_state = "utilitybelt_ce" + item_state = "utility_ce" + +/obj/item/weapon/storage/belt/utility/chief/full/New() + ..() + new /obj/item/weapon/screwdriver/power(src) + new /obj/item/weapon/crowbar/power(src) + new /obj/item/weapon/weldingtool/experimental(src)//This can be changed if this is too much + new /obj/item/device/multitool(src) + new /obj/item/stack/cable_coil(src,30,pick("red","yellow","orange")) + new /obj/item/weapon/extinguisher/mini(src) + //much roomier now that we've managed to remove two tools + + /obj/item/weapon/storage/belt/utility/full/New() ..() new /obj/item/weapon/screwdriver(src) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 7e0f3b1c966..7c225fe21e8 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -24,6 +24,7 @@ force = 5 throwforce = 7 w_class = 2 + usesound = 'sound/items/Ratchet.ogg' materials = list(MAT_METAL=150) origin_tech = "materials=1;engineering=1" attack_verb = list("bashed", "battered", "bludgeoned", "whacked") @@ -31,7 +32,7 @@ armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 30) /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.") + user.visible_message("[user] is beating \himself to death with the [src]! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/weapons/genhit.ogg', 50, 1, -1) return (BRUTELOSS) @@ -47,6 +48,31 @@ icon_state = "wrench_brass" toolspeed = 2 +/obj/item/weapon/wrench/power + name = "Hand Drill" + desc ="A simple powered drill with a bolt bit" + icon_state = "drill_bolt" + item_state = "drill" + usesound = 'sound/items/drill_use.ogg' + materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_TITANIUM=25) + origin_tech = "materials=2;engineering=2" //done for balance reasons, making them high value for research, but harder to get + force = 8 //might or might not be too high, subject to change + throwforce = 8 + attack_verb = list("drilled", "screwed", "jabbed") + toolspeed = 4 + +/obj/item/weapon/wrench/power/attack_self(mob/user) + playsound(get_turf(user),'sound/items/change_drill.ogg',50,1) + var/obj/item/weapon/wirecutters/power/s_drill = new /obj/item/weapon/screwdriver/power + user << "You attach the screw driver bit to the [src]." + user.unEquip(src) + user.put_in_active_hand(s_drill) + qdel(src) + +obj/item/weapon/wrench/power/suicide_act(mob/user) + user.visible_message("[user] is pressing the [src] against \his head, it looks like he's trying to drill \his head off") + return (BRUTELOSS) + /obj/item/weapon/wrench/medical name = "medical wrench" desc = "A medical wrench with common(medical?) uses. Can be found in your hand." @@ -54,7 +80,7 @@ force = 2 //MEDICAL throwforce = 4 origin_tech = "materials=1;engineering=1;biotech=3" - attack_verb = list("wrenched", "medicaled", "tapped", "jabbed") + attack_verb = list("wrenched", "medicaled", "tapped", "jabbed", "whacked") /obj/item/weapon/wrench/medical/suicide_act(mob/user) user.visible_message("[user] is praying to the medical wrench to take \his soul. It looks like \he's trying to commit suicide.") @@ -103,12 +129,13 @@ materials = list(MAT_METAL=75) attack_verb = list("stabbed") hitsound = 'sound/weapons/bladeslice.ogg' + usesound = 'sound/items/Screwdriver.ogg' toolspeed = 1 armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 30) /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.", \ - "[user] is stabbing the [src.name] into \his heart! It looks like \he's trying to commit suicide.")) + user.visible_message(pick("[user] is stabbing the [src] into \his temple! It looks like \he's trying to commit suicide.", \ + "[user] is stabbing the [src] into \his heart! It looks like \he's trying to commit suicide.")) return(BRUTELOSS) /obj/item/weapon/screwdriver/New(loc, var/param_color = null) @@ -137,11 +164,40 @@ icon_state = "screwdriver_brass" toolspeed = 2 +/obj/item/weapon/screwdriver/power + name = "Hand Drill" + desc = "A simple hand drill with a screwdriver bit attached." + icon_state = "drill_screw" + item_state = "drill" + materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_TITANIUM=25) + origin_tech = "materials=2;engineering=2" //done for balance reasons, making them high value for research, but harder to get + force = 8 //might or might not be too high, subject to change + throwforce = 8 + throw_speed = 2 + throw_range = 3//it's heavier than a screw driver/wrench, so it does more damage, but can't be thrown as far + attack_verb = list("drilled", "screwed", "jabbed","whacked") + hitsound = 'sound/items/drill_hit.ogg' + usesound = 'sound/items/drill_use.ogg' + toolspeed = 4 + +/obj/item/weapon/screwdriver/power/suicide_act(mob/user) + user.visible_message("[user] is putting the [src] up to \his temple, it looks like they're trying to commit suicide") + return(BRUTELOSS) + +/obj/item/weapon/screwdriver/power/attack_self(mob/user) + playsound(get_turf(user),'sound/items/change_drill.ogg',50,1) + var/obj/item/weapon/wrench/power/b_drill = new /obj/item/weapon/wrench/power + user << "You attach the bolt driver bit to the [src]." + user.unEquip(src) + user.put_in_active_hand(b_drill) + qdel(src) + /obj/item/weapon/screwdriver/cyborg name = "powered screwdriver" desc = "An electrical screwdriver, designed to be both precise and quick." icon = 'icons/obj/items_cyborg.dmi' icon_state = "screwdriver_cyborg" + usesound = 'sound/items/drill_use.ogg' toolspeed = 2 /* @@ -159,9 +215,9 @@ throw_range = 7 w_class = 2 materials = list(MAT_METAL=80) - origin_tech = "materials=1;engineering=1" attack_verb = list("pinched", "nipped") hitsound = 'sound/items/Wirecutter.ogg' + usesound = 'sound/items/Wirecutter.ogg' toolspeed = 1 armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 30) @@ -185,7 +241,7 @@ ..() /obj/item/weapon/wirecutters/suicide_act(mob/user) - user.visible_message("[user] is cutting at \his arteries with the [src.name]! It looks like \he's trying to commit suicide.") + user.visible_message("[user] is cutting at \his arteries with the [src]! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/items/Wirecutter.ogg', 50, 1, -1) return (BRUTELOSS) @@ -202,6 +258,35 @@ icon_state = "cutters_cyborg" toolspeed = 2 +/obj/item/weapon/wirecutters/power + name = "Jaws of Life" + desc = "A set of jaws of life, the magic of science has managed to fit it down into a device small enough to fit in a tool belt. It's fitted with a cutting head" + icon_state = "jaws_cutter" + item_state = "jawsoflife" + origin_tech = "materials=2;engineering=2" + materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_TITANIUM=25) + usesound = 'sound/items/jaws_cut.ogg' + toolspeed = 4 + +/obj/item/weapon/wirecutters/power/suicide_act(mob/user) + user.visible_message("[user] is the [src] around \his neck, it looks like \he's trying to rip \his head off!") + playsound(loc, 'sound/items/jaws_cut.ogg', 50, 1, -1) + var/mob/living/carbon/C = user + var/obj/item/bodypart/BP = C.get_bodypart("head") + if(BP) + BP.drop_limb()// <- i have no idea why this works, but it does + playsound(loc,pick('sound/misc/desceration-01.ogg','sound/misc/desceration-02.ogg','sound/misc/desceration-01.ogg') ,50, 1, -1) + else + user.visible_message("[user] doesn't have a head to cutt off, but dies anyway.") + return (BRUTELOSS) + +/obj/item/weapon/wirecutters/power/attack_self(mob/user) + playsound(get_turf(user),"sound/items/change_jaws.ogg",50,1) + var/obj/item/weapon/crowbar/power/pryjaws = new /obj/item/weapon/crowbar/power + user << "You attach the pry jaws to the [src]." + user.unEquip(src) + user.put_in_active_hand(pryjaws) + qdel(src) /* * Welding Tool */ @@ -216,6 +301,9 @@ force = 3 throwforce = 5 hitsound = "swing_hit" + usesound = 'sound/items/Welder.ogg' + var/acti_sound = 'sound/items/WelderActivate.ogg' + var/deac_sound = 'sound/items/WelderDeactivate.ogg' throw_speed = 3 throw_range = 5 w_class = 2 @@ -249,6 +337,7 @@ else item_state = "[initial(item_state)]" + /obj/item/weapon/weldingtool/update_icon() if(change_icons) var/ratio = get_fuel() / max_fuel @@ -381,6 +470,7 @@ obj/item/weapon/weldingtool/proc/switched_on(mob/user) if(welding) if(get_fuel() >= 1) user << "You switch [src] on." + playsound(loc, acti_sound, 50, 1) force = 15 damtype = "fire" hitsound = 'sound/items/welder.ogg' @@ -391,6 +481,7 @@ obj/item/weapon/weldingtool/proc/switched_on(mob/user) switched_off(user) else user << "You switch [src] off." + playsound(loc, deac_sound, 50, 1) switched_off(user) //Switches the welder off @@ -547,6 +638,7 @@ obj/item/weapon/weldingtool/proc/switched_off(mob/user) desc = "A small crowbar. This handy tool is useful for lots of things, such as prying floor tiles or opening unpowered doors." icon = 'icons/obj/tools.dmi' icon_state = "crowbar" + usesound = 'sound/items/Crowbar.ogg' flags = CONDUCT slot_flags = SLOT_BELT force = 5 @@ -559,7 +651,7 @@ obj/item/weapon/weldingtool/proc/switched_off(mob/user) armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 30) /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.") + user.visible_message("[user] is beating \himself to death with the [src]! It looks like \he's trying to commit suicide.") playsound(loc, 'sound/weapons/genhit.ogg', 50, 1, -1) return (BRUTELOSS) @@ -589,5 +681,30 @@ obj/item/weapon/weldingtool/proc/switched_off(mob/user) name = "hydraulic crowbar" desc = "A hydraulic prying tool, compact but powerful. Designed to replace crowbar in construction cyborgs." icon = 'icons/obj/items_cyborg.dmi' + usesound = 'sound/items/jaws_pry.ogg' force = 10 toolspeed = 2 + +/obj/item/weapon/crowbar/power + name = "Jaws of Life" + desc = "A set of jaws of life, the magic of science has managed to fit it down into a device small enough to fit in a tool belt. It's fitted with a prying head" + icon_state = "jaws_pry" + item_state = "jawsoflife" + materials = list(MAT_METAL=150,MAT_SILVER=50,MAT_TITANIUM=25) + origin_tech = "materials=2;engineering=2" + usesound = 'sound/items/jaws_pry.ogg' + force = 15 + toolspeed = 4 + +/obj/item/weapon/crowbar/power/suicide_act(mob/user) + user.visible_message("[user] is putting his head in the [src], it looks like \he's trying to commit suicide!") + playsound(loc, 'sound/items/jaws_pry.ogg', 50, 1, -1) + return (BRUTELOSS) + +/obj/item/weapon/crowbar/power/attack_self(mob/user) + playsound(get_turf(user),"sound/items/change_jaws.ogg",50,1) + var/obj/item/weapon/wirecutters/power/cutjaws = new /obj/item/weapon/wirecutters/power + user << "You attach the cutting jaws to the [src]." + user.unEquip(src) + user.put_in_active_hand(cutjaws) + qdel(src) diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index 946fbeaabf8..f261df2aa8e 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -32,7 +32,7 @@ /obj/structure/AIcore/attackby(obj/item/P, mob/user, params) if(istype(P, /obj/item/weapon/wrench)) - playsound(loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user.visible_message("[user] [anchored ? "fastens" : "unfastens"] [src].", \ "You start to [anchored ? "unfasten [src] from" : "fasten [src] to"] the floor...") if(do_after(user, 20/P.toolspeed, target = src)) @@ -69,13 +69,13 @@ return if(CIRCUIT_CORE) if(istype(P, /obj/item/weapon/screwdriver)) - playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You screw the circuit board into place." state = SCREWED_CORE icon_state = "2" return if(istype(P, /obj/item/weapon/crowbar)) - playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You remove the circuit board." state = EMPTY_CORE icon_state = "0" @@ -84,7 +84,7 @@ return if(SCREWED_CORE) if(istype(P, /obj/item/weapon/screwdriver) && circuit) - playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You unfasten the circuit board." state = CIRCUIT_CORE icon_state = "1" @@ -106,7 +106,7 @@ if (brain) user << "Get that brain out of there first!" else - playsound(loc, 'sound/items/Wirecutter.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You remove the cables." state = SCREWED_CORE icon_state = "2" @@ -165,7 +165,7 @@ return if(istype(P, /obj/item/weapon/crowbar) && brain) - playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You remove the brain." brain.forceMove(loc) brain = null @@ -174,7 +174,7 @@ if(GLASS_CORE) if(istype(P, /obj/item/weapon/crowbar)) - playsound(loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You remove the glass panel." state = CABLED_CORE if(brain) @@ -185,7 +185,7 @@ return if(istype(P, /obj/item/weapon/screwdriver)) - playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(loc, P.usesound, 50, 1) user << "You connect the monitor." new /mob/living/silicon/ai (loc, laws, brain) feedback_inc("cyborg_ais_created",1) diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index bf2a6435626..850a436d9db 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -508,7 +508,7 @@ break if(door_check) - playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] secures the airlock assembly to the floor.", \ "You start to secure the airlock assembly to the floor...", \ "You hear wrenching.") @@ -523,7 +523,7 @@ user << "There is another door here!" else - playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] unsecures the airlock assembly from the floor.", \ "You start to unsecure the airlock assembly from the floor...", \ "You hear wrenching.") @@ -549,7 +549,7 @@ src.name = "wired airlock assembly" else if(istype(W, /obj/item/weapon/wirecutters) && state == 1 ) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] cuts the wires from the airlock assembly.", \ "You start to cut the wires from the airlock assembly...") @@ -562,7 +562,7 @@ src.name = "secured airlock assembly" else if(istype(W, /obj/item/weapon/electronics/airlock) && state == 1 ) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] installs the electronics into the airlock assembly.", \ "You start to install electronics into the airlock assembly...") if(do_after(user, 40, target = src)) @@ -579,7 +579,7 @@ else if(istype(W, /obj/item/weapon/crowbar) && state == 2 ) - playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] removes the electronics from the airlock assembly.", \ "You start to remove electronics from the airlock assembly...") @@ -642,7 +642,7 @@ glass_type = /obj/machinery/door/airlock/glass else if(istype(W, /obj/item/weapon/screwdriver) && state == 2 ) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] finishes the airlock.", \ "You start finishing the airlock...") @@ -697,4 +697,4 @@ else var/obj/item/stack/sheet/mineral/mineral_path = text2path("/obj/item/stack/sheet/mineral/[mineral]") new mineral_path(T, 2) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 7209637f484..7311da106e4 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -20,7 +20,7 @@ add_fingerprint(user) if(istype(W, /obj/item/weapon/screwdriver)) if(state == GIRDER_DISPLACED) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(src.loc, W.usesound, 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/W.toolspeed, target = src)) @@ -32,7 +32,7 @@ M.add_fingerprint(user) qdel(src) else if(state == GIRDER_REINF) - playsound(src.loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user << "You start unsecuring support struts..." if(do_after(user, 40/W.toolspeed, target = src)) if(state != GIRDER_REINF) @@ -45,7 +45,7 @@ if(!isfloorturf(loc)) user << "A floor must be present to secure the girder!" return - playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user << "You start securing the girder..." if(do_after(user, 40/W.toolspeed, target = src)) user << "You secure the girder." @@ -53,7 +53,7 @@ transfer_fingerprints_to(G) qdel(src) else if(state == GIRDER_NORMAL && can_displace) - playsound(src.loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user << "You start unsecuring the girder..." if(do_after(user, 40/W.toolspeed, target = src)) user << "You unsecure the girder." @@ -78,7 +78,7 @@ qdel(src) else if(istype(W, /obj/item/weapon/wirecutters) && state == GIRDER_REINF_STRUTS) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1) + playsound(src.loc, W.usesound, 100, 1) user << "You start removing support struts..." if(do_after(user, 40/W.toolspeed, target = src)) user << "You remove the support struts." @@ -316,7 +316,7 @@ else if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) - playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You start slicing apart the girder..." if(do_after(user, 40/W.toolspeed, target = src)) if( !WT.isOn() ) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index a3b1b12d7a9..01a68a0ff97 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -80,11 +80,11 @@ add_fingerprint(user) if(istype(W, /obj/item/weapon/wirecutters)) if(!shock(user, 100)) - playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) deconstruct() else if((istype(W, /obj/item/weapon/screwdriver)) && (isturf(loc) || anchored)) if(!shock(user, 90)) - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) anchored = !anchored user.visible_message("[user] [anchored ? "fastens" : "unfastens"] [src].", \ "You [anchored ? "fasten [src] to" : "unfasten [src] from"] the floor.") diff --git a/code/game/objects/structures/showcase.dm b/code/game/objects/structures/showcase.dm index 170b709328e..4e8af420a9b 100644 --- a/code/game/objects/structures/showcase.dm +++ b/code/game/objects/structures/showcase.dm @@ -45,16 +45,16 @@ if(istype(W, /obj/item/weapon/screwdriver) && !anchored) if(deconstruction_state == SHOWCASE_SCREWDRIVERED) user << "You screw the screws back into the showcase." - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) deconstruction_state = SHOWCASE_CONSTRUCTED else if (deconstruction_state == SHOWCASE_CONSTRUCTED) user << "You unscrew the screws." - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) deconstruction_state = SHOWCASE_SCREWDRIVERED if(istype(W, /obj/item/weapon/crowbar) && deconstruction_state == SHOWCASE_SCREWDRIVERED) if(do_after(user, 20/W.toolspeed, target = src)) - playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) user << "You start to crowbar the showcase apart..." new /obj/item/stack/sheet/metal (get_turf(src), 4) qdel(src) @@ -73,4 +73,4 @@ if(SHOWCASE_SCREWDRIVERED) user << "The showcase has its screws loosened." else - user << "If you see this, something is wrong." \ No newline at end of file + user << "If you see this, something is wrong." diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 7a5f362fb86..ca61f2f7022 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -104,14 +104,14 @@ if(!(flags & NODECONSTRUCT)) if(istype(I, /obj/item/weapon/screwdriver) && deconstruction_ready) user << "You start disassembling [src]..." - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 20, target = src)) deconstruct(TRUE) return if(istype(I, /obj/item/weapon/wrench) && deconstruction_ready) user << "You start deconstructing [src]..." - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 40, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) deconstruct(TRUE, 1) @@ -301,7 +301,7 @@ if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) - playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) if(deconstruction_ready) user << "You start strengthening the reinforced table..." if (do_after(user, 50/W.toolspeed, target = src)) @@ -424,7 +424,7 @@ /obj/structure/rack/attackby(obj/item/weapon/W, mob/user, params) if (istype(W, /obj/item/weapon/wrench) && !(flags&NODECONSTRUCT)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) deconstruct(TRUE) return if(user.a_intent == "harm") diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 13e6ea0570f..bc7ce257f0a 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -101,7 +101,7 @@ if(WD.dir == dir) user << "There is already a windoor in that location!" return - playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(loc, W.usesound, 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/W.toolspeed, target = src)) @@ -120,7 +120,7 @@ //Unwrenching an unsecure assembly un-anchors it. Step 4 undone else if(istype(W, /obj/item/weapon/wrench) && anchored) - playsound(loc, 'sound/items/Ratchet.ogg', 100, 1) + playsound(loc, W.usesound, 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/W.toolspeed, target = src)) @@ -177,7 +177,7 @@ //Removing wire from the assembly. Step 5 undone. if(istype(W, /obj/item/weapon/wirecutters)) - playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1) + playsound(loc, W.usesound, 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/W.toolspeed, target = src)) @@ -196,7 +196,7 @@ else if(istype(W, /obj/item/weapon/electronics/airlock)) if(!user.drop_item()) return - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) user.visible_message("[user] installs the electronics into the airlock assembly.", "You start to install electronics into the airlock assembly...") W.loc = src @@ -215,7 +215,7 @@ if(!electronics) return - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, W.usesound, 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/W.toolspeed, target = src)) @@ -245,7 +245,7 @@ usr << "The assembly is missing electronics!" return usr << browse(null, "window=windoor_access") - playsound(loc, 'sound/items/Crowbar.ogg', 100, 1) + playsound(loc, W.usesound, 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/W.toolspeed, target = src)) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 008ae109c1d..a426f311f8c 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -143,7 +143,7 @@ if(!(flags&NODECONSTRUCT)) if(istype(I, /obj/item/weapon/screwdriver)) - playsound(loc, 'sound/items/Screwdriver.ogg', 75, 1) + playsound(loc, I.usesound, 75, 1) if(reinf && (state == 2 || state == 1)) user << (state == 2 ? "You begin to unscrew the window from the frame..." : "You begin to screw the window to the frame...") else if(reinf && state == 0) @@ -168,7 +168,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) + playsound(loc, I.usesound, 75, 1) 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) @@ -176,7 +176,7 @@ return else if(istype(I, /obj/item/weapon/wrench) && !anchored) - playsound(loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(loc, I.usesound, 75, 1) user << " You begin to disassemble [src]..." if(do_after(user, 40/I.toolspeed, target = src)) if(qdeleted(src)) diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm index f4e9934dd27..3a7a9c9339a 100644 --- a/code/game/turfs/simulated/floor/fancy_floor.dm +++ b/code/game/turfs/simulated/floor/fancy_floor.dm @@ -18,7 +18,7 @@ user << "You unscrew the planks." new floor_tile(src) make_plating() - playsound(src, 'sound/items/Screwdriver.ogg', 80, 1) + playsound(src, C.usesound, 80, 1) return /turf/open/floor/wood/cold @@ -140,4 +140,4 @@ /turf/open/floor/fakespace/New() ..() - icon_state = "[rand(0,25)]" \ No newline at end of file + icon_state = "[rand(0,25)]" diff --git a/code/game/turfs/simulated/wall/reinf_walls.dm b/code/game/turfs/simulated/wall/reinf_walls.dm index 1c7ee6a608a..882833f1079 100644 --- a/code/game/turfs/simulated/wall/reinf_walls.dm +++ b/code/game/turfs/simulated/wall/reinf_walls.dm @@ -63,7 +63,7 @@ switch(d_state) if(0) if (istype(W, /obj/item/weapon/wirecutters)) - playsound(src, 'sound/items/Wirecutter.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) src.d_state = 1 update_icon() user << "You cut the outer grille." @@ -72,7 +72,7 @@ if(1) if (istype(W, /obj/item/weapon/screwdriver)) user << "You begin removing the support lines..." - playsound(src, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, 40, target = src)) if( !istype(src, /turf/closed/wall/r_wall) || !user || !W || !T ) @@ -103,7 +103,7 @@ if( WT.remove_fuel(0,user) ) user << "You begin slicing through the metal cover..." - playsound(src, 'sound/items/Welder.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, 60, target = src)) if( !istype(src, /turf/closed/wall/r_wall) || !user || !WT || !WT.isOn() || !T ) @@ -134,7 +134,7 @@ if (istype(W, /obj/item/weapon/crowbar)) user << "You struggle to pry off the cover..." - playsound(src, 'sound/items/Crowbar.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, 100, target = src)) if( !istype(src, /turf/closed/wall/r_wall) || !user || !W || !T ) @@ -150,7 +150,7 @@ if (istype(W, /obj/item/weapon/wrench)) user << "You start loosening the anchoring bolts which secure the support rods to their frame..." - playsound(src, 'sound/items/Ratchet.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, 40, target = src)) if( !istype(src, /turf/closed/wall/r_wall) || !user || !W || !T ) @@ -168,7 +168,7 @@ if( WT.remove_fuel(0,user) ) user << "You begin slicing through the support rods..." - playsound(src, 'sound/items/Welder.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, 100, target = src)) if( !istype(src, /turf/closed/wall/r_wall) || !user || !WT || !WT.isOn() || !T ) @@ -199,7 +199,7 @@ if( istype(W, /obj/item/weapon/crowbar) ) user << "You struggle to pry off the outer sheath..." - playsound(src, 'sound/items/Crowbar.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, 100, target = src)) if( !istype(src, /turf/closed/wall/r_wall) || !user || !W || !T ) @@ -223,4 +223,4 @@ /turf/closed/wall/r_wall/singularity_pull(S, current_size) if(current_size >= STAGE_FIVE) if(prob(30)) - dismantle_wall() \ No newline at end of file + dismantle_wall() diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index e3760fcd446..9e8a747be88 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -176,7 +176,7 @@ var/obj/item/weapon/weldingtool/WT = W if( WT.remove_fuel(0,user) ) user << "You begin slicing through the outer plating..." - playsound(src, 'sound/items/Welder.ogg', 100, 1) + playsound(src, W.usesound, 100, 1) if(do_after(user, slicing_duration/W.toolspeed, target = src)) if(!iswallturf(src) || !user || !WT || !WT.isOn() || !T) return 1 @@ -268,4 +268,3 @@ /turf/closed/wall/acid_melt() dismantle_wall(1) - diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index f73dc6b4cc9..17328a60e68 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -631,14 +631,14 @@ switch(buildstage) if(2) if(istype(W, /obj/item/weapon/wirecutters) && panel_open && wires.is_all_cut()) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You cut the final wires." new /obj/item/stack/cable_coil(loc, 5) buildstage = 1 update_icon() return else if(istype(W, /obj/item/weapon/screwdriver)) // Opening that Air Alarm up. - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) panel_open = !panel_open user << "The wires have been [panel_open ? "exposed" : "unexposed"]." update_icon() @@ -660,7 +660,7 @@ if(istype(W, /obj/item/weapon/crowbar)) 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) + playsound(src.loc, W.usesound, 50, 1) if (do_after(user, 20/W.toolspeed, target = src)) if (buildstage == 1) user <<"You remove the air alarm electronics." @@ -701,7 +701,7 @@ if(istype(W, /obj/item/weapon/wrench)) user << "You detach \the [src] from the wall." - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) new /obj/item/wallframe/airalarm( user.loc ) qdel(src) return @@ -730,4 +730,4 @@ if(!disassembled) I.obj_integrity = I.max_integrity * 0.5 new /obj/item/stack/cable_coil(loc, 3) - qdel(src) \ No newline at end of file + qdel(src) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm index 2a62684c873..f188c91b3f6 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm @@ -40,7 +40,7 @@ if(istype(I, /obj/item/weapon/screwdriver)) var/new_setting = "Heater" - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) if(build_path == initial(heater.build_path)) newtype = freezer new_setting = "Freezer" diff --git a/code/modules/jobs/job_types/engineering.dm b/code/modules/jobs/job_types/engineering.dm index eea162ee3ca..58eb0891ee2 100644 --- a/code/modules/jobs/job_types/engineering.dm +++ b/code/modules/jobs/job_types/engineering.dm @@ -29,7 +29,7 @@ Chief Engineer name = "Chief Engineer" id = /obj/item/weapon/card/id/silver - belt = /obj/item/weapon/storage/belt/utility/full + belt = /obj/item/weapon/storage/belt/utility/chief/full l_pocket = /obj/item/device/pda/heads/ce ears = /obj/item/device/radio/headset/heads/ce uniform = /obj/item/clothing/under/rank/chief_engineer @@ -125,4 +125,4 @@ Atmospheric Technician dufflebag = /obj/item/weapon/storage/backpack/dufflebag/engineering box = /obj/item/weapon/storage/box/engineer pda_slot = slot_l_store - backpack_contents = list(/obj/item/device/modular_computer/tablet/preset/advanced=1) \ No newline at end of file + backpack_contents = list(/obj/item/device/modular_computer/tablet/preset/advanced=1) diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index 63a58a5f705..4e12d7c2fab 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -174,7 +174,7 @@ if(8) if(istype(W, /obj/item/weapon/screwdriver)) - playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) var/turf/T = get_turf(user) user << "You start attaching the gun to the frame..." sleep(40) @@ -460,4 +460,4 @@ overlays -= "hs_arm" new /obj/item/bodypart/l_arm/robot(get_turf(src)) user << "You remove the robot arm from [src]." - build_step-- \ No newline at end of file + build_step-- diff --git a/code/modules/paperwork/paper_cutter.dm b/code/modules/paperwork/paper_cutter.dm index e66f9992800..8f959443ddd 100644 --- a/code/modules/paperwork/paper_cutter.dm +++ b/code/modules/paperwork/paper_cutter.dm @@ -55,7 +55,7 @@ update_icon() return if(istype(P, /obj/item/weapon/screwdriver) && storedcutter) - playsound(src, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src, P.usesound, 50, 1) user << "\The [storedcutter] has been [cuttersecured ? "unsecured" : "secured"]." cuttersecured = !cuttersecured return diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index e25ef50c5a4..79475cd0469 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -378,7 +378,7 @@ if (terminal) user << "Disconnect the wires first!" return - playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You are trying to remove the power control board..." //lpeters - fixed grammar issues if(do_after(user, 50/W.toolspeed, target = src)) if (has_electronics==1) @@ -430,12 +430,12 @@ if (has_electronics==1 && terminal) has_electronics = 2 stat &= ~MAINT - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You screw the circuit electronics into place." else if (has_electronics==2) has_electronics = 1 stat |= MAINT - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, W.usesound, 50, 1) user << "You unfasten the electronics." else /* has_electronics==0 */ user << "There is nothing to secure!" diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index ccae16644f3..55e4f0c87d2 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -190,7 +190,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 if(GRAV_NEEDS_SCREWDRIVER) if(istype(I, /obj/item/weapon/screwdriver)) user << "You secure the screws of the framework." - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) broken_state++ update_icon() return @@ -220,7 +220,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 if(GRAV_NEEDS_WRENCH) if(istype(I, /obj/item/weapon/wrench)) user << "You secure the plating to the framework." - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, I.usesound, 75, 1) set_fix() return return ..() diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 9584b5487a6..fb62d3c5960 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -62,7 +62,7 @@ switch(stage) if(1) if(istype(W, /obj/item/weapon/wrench)) - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, W.usesound, 75, 1) usr << "You begin deconstructing [src]..." if (!do_after(usr, 30/W.toolspeed, target = src)) return @@ -102,13 +102,13 @@ new /obj/item/stack/cable_coil(get_turf(loc), 1, "red") user.visible_message("[user.name] removes the wiring from [src].", \ "You remove the wiring from [src].", "You hear clicking.") - playsound(loc, 'sound/items/Wirecutter.ogg', 100, 1) + playsound(loc, W.usesound, 100, 1) return if(istype(W, /obj/item/weapon/screwdriver)) user.visible_message("[user.name] closes [src]'s casing.", \ "You close [src]'s casing.", "You hear screwing.") - playsound(loc, 'sound/items/Screwdriver.ogg', 75, 1) + playsound(loc, W.usesound, 75, 1) switch(fixture_type) if("tube") newlight = new /obj/machinery/light/built(loc) @@ -328,7 +328,7 @@ // attempt to stick weapon into light socket else if(status == LIGHT_EMPTY) if(istype(W, /obj/item/weapon/screwdriver)) //If it's a screwdriver open it. - playsound(src.loc, 'sound/items/Screwdriver.ogg', 75, 1) + playsound(src.loc, W.usesound, 75, 1) user.visible_message("[user.name] opens [src]'s casing.", \ "You open [src]'s casing.", "You hear a noise.") deconstruct() diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 0eea1f23925..2d9fa7036d5 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -241,7 +241,7 @@ display round(lastgen) and plasmatank amount return else if(istype(O, /obj/item/weapon/screwdriver)) panel_open = !panel_open - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, O.usesound, 50, 1) if(panel_open) user << "You open the access panel." else diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 6b19344e683..78faf820177 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -212,10 +212,10 @@ anchored = !anchored if(anchored) user.visible_message("[user] wrenches the solar assembly into place.", "You wrench the solar assembly into place.") - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, W.usesound, 75, 1) else user.visible_message("[user] unwrenches the solar assembly from its place.", "You unwrench the solar assembly from its place.") - playsound(src.loc, 'sound/items/Ratchet.ogg', 75, 1) + playsound(src.loc, W.usesound, 75, 1) return 1 if(istype(W, /obj/item/stack/sheet/glass) || istype(W, /obj/item/stack/sheet/rglass)) @@ -277,7 +277,7 @@ var/lastgen = 0 var/track = 0 // 0= off 1=timed 2=auto (tracker) var/trackrate = 600 // 300-900 seconds - var/nexttime = 0 // time for a panel to rotate of 1° in manual tracking + var/nexttime = 0 // time for a panel to rotate of 1 degree in manual tracking var/obj/machinery/power/tracker/connected_tracker = null var/list/connected_panels = list() @@ -416,7 +416,7 @@ /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) + playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 20/I.toolspeed, target = src)) if (src.stat & BROKEN) user << "The broken glass falls out." @@ -474,9 +474,9 @@ connected_tracker.unset_control() if(track==1 && trackrate) //manual tracking and set a rotation speed - if(nexttime <= world.time) //every time we need to increase/decrease the angle by 1°... + if(nexttime <= world.time) //every time we need to increase/decrease the angle by 1�... targetdir = (targetdir + trackrate/abs(trackrate) + 360) % 360 //... do it - nexttime += 36000/abs(trackrate) //reset the counter for the next 1° + nexttime += 36000/abs(trackrate) //reset the counter for the next 1� //rotates the panel to the passed angle /obj/machinery/power/solar_control/proc/set_panels(currentdir) diff --git a/code/modules/recycling/disposal-structures.dm b/code/modules/recycling/disposal-structures.dm index 0e8751652fc..4298503adea 100644 --- a/code/modules/recycling/disposal-structures.dm +++ b/code/modules/recycling/disposal-structures.dm @@ -696,11 +696,11 @@ if(istype(I, /obj/item/weapon/screwdriver)) if(mode==0) mode=1 - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) user << "You remove the screws around the power connection." else if(mode==1) mode=0 - playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1) + playsound(src.loc, I.usesound, 50, 1) user << "You attach the screws around the power connection." else if(istype(I,/obj/item/weapon/weldingtool) && mode==1) diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index a532b35573d..74ce440180a 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -505,6 +505,25 @@ datum/design/diagnostic_hud_night build_path = /obj/item/clothing/glasses/science category = list("Equipment") +/datum/design/handdrill + name = "Hand Drill" + desc = "A small electric hand drill with an interchangable screwdriver and bolt bit" + id = "handdrill" + req_tech = list("materials" = 4, "engineering" = 6) + build_type = PROTOLATHE + materials = list(MAT_METAL = 3500, MAT_SILVER = 1500, MAT_TITANIUM = 2500) + build_path = /obj/item/weapon/screwdriver/power + category = list("Equipment") + +/datum/design/jawsoflife + name = "Jaws of Life" + desc = "A small, compact Jaws of Life with an interchangable pry jaws and cutting jaws" + id = "jawsoflife" + req_tech = list("materials" = 4, "engineering" = 6, "magnets" = 6) // added one more requirment since the Jaws of Life are a bit OP + build_path = /obj/item/weapon/crowbar/power + build_type = PROTOLATHE + materials = list(MAT_METAL = 4500, MAT_SILVER = 2500, MAT_TITANIUM = 3500) + /datum/design/diskplantgene name = "Plant data disk" desc = "A disk for storing plant genetic data." diff --git a/icons/mob/belt.dmi b/icons/mob/belt.dmi index 974d473eacd..732f2d2d906 100644 Binary files a/icons/mob/belt.dmi and b/icons/mob/belt.dmi differ diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi index 57bb27f6455..8902386aa60 100644 Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index 08c0e0c1d7d..f57be4f9412 100644 Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ diff --git a/icons/obj/clothing/belts.dmi b/icons/obj/clothing/belts.dmi index ec2ca29fa8c..8a29fa78ffc 100644 Binary files a/icons/obj/clothing/belts.dmi and b/icons/obj/clothing/belts.dmi differ diff --git a/icons/obj/tools.dmi b/icons/obj/tools.dmi index cf34d32c5c0..cd0d3f835ed 100644 Binary files a/icons/obj/tools.dmi and b/icons/obj/tools.dmi differ diff --git a/sound/items/WelderActivate.ogg b/sound/items/WelderActivate.ogg new file mode 100644 index 00000000000..5218f2ab1cf Binary files /dev/null and b/sound/items/WelderActivate.ogg differ diff --git a/sound/items/WelderDeactivate.ogg b/sound/items/WelderDeactivate.ogg new file mode 100644 index 00000000000..22ac4f445cb Binary files /dev/null and b/sound/items/WelderDeactivate.ogg differ diff --git a/sound/items/change_drill.ogg b/sound/items/change_drill.ogg new file mode 100644 index 00000000000..406027a5955 Binary files /dev/null and b/sound/items/change_drill.ogg differ diff --git a/sound/items/change_jaws.ogg b/sound/items/change_jaws.ogg new file mode 100644 index 00000000000..b6a41eca806 Binary files /dev/null and b/sound/items/change_jaws.ogg differ diff --git a/sound/items/drill_hit.ogg b/sound/items/drill_hit.ogg new file mode 100644 index 00000000000..0f8fa631aa1 Binary files /dev/null and b/sound/items/drill_hit.ogg differ diff --git a/sound/items/drill_use.ogg b/sound/items/drill_use.ogg new file mode 100644 index 00000000000..82f37cd35bb Binary files /dev/null and b/sound/items/drill_use.ogg differ diff --git a/sound/items/jaws_cut.ogg b/sound/items/jaws_cut.ogg new file mode 100644 index 00000000000..a0bfd855029 Binary files /dev/null and b/sound/items/jaws_cut.ogg differ diff --git a/sound/items/jaws_pry.ogg b/sound/items/jaws_pry.ogg new file mode 100644 index 00000000000..05178bd4663 Binary files /dev/null and b/sound/items/jaws_pry.ogg differ