From 80f7f3afb23bb992f37e428375c5220456264a25 Mon Sep 17 00:00:00 2001 From: Cerebulon Date: Thu, 12 Mar 2020 00:30:42 +0000 Subject: [PATCH] Adds more machine button sounds (#6802) * Adds more machine button sounds * chang --- code/game/machinery/Sleeper.dm | 2 + code/game/machinery/alarm.dm | 2 + code/game/machinery/autolathe.dm | 3 ++ code/game/machinery/cryo.dm | 2 + code/game/machinery/jukebox.dm | 1 + code/game/machinery/spaceheater.dm | 1 + code/game/machinery/vending.dm | 3 ++ code/game/machinery/washing_machine.dm | 3 ++ .../game/objects/items/devices/radio/radio.dm | 5 +++ code/modules/food/kitchen/microwave.dm | 2 + code/modules/power/apc.dm | 3 +- code/modules/power/smes.dm | 1 + code/modules/reagents/dispenser/dispenser2.dm | 1 + html/changelogs/Cerebulon - machinesounds.yml | 36 ++++++++++++++++++ sound/machines/buttonbeep.ogg | Bin 0 -> 13054 bytes sound/machines/id_swipe.ogg | Bin 0 -> 8549 bytes 16 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 html/changelogs/Cerebulon - machinesounds.yml create mode 100644 sound/machines/buttonbeep.ogg create mode 100644 sound/machines/id_swipe.ogg diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index 8d112b41384..3bfc1fdf699 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -11,6 +11,8 @@ idle_power_usage = 40 interact_offline = 1 circuit = /obj/item/weapon/circuitboard/sleeper_console + clicksound = 'sound/machines/buttonbeep.ogg' + clickvol = 30 /obj/machinery/sleep_console/New() ..() diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm index d5a81d59097..0072adb9fb3 100644 --- a/code/game/machinery/alarm.dm +++ b/code/game/machinery/alarm.dm @@ -45,6 +45,8 @@ active_power_usage = 1000 //For heating/cooling rooms. 1000 joules equates to about 1 degree every 2 seconds for a single tile of air. power_channel = ENVIRON req_one_access = list(access_atmospherics, access_engine_equip) + clicksound = "button" + clickvol = 30 var/alarm_id = null var/breach_detection = 1 // Whether to use automatic breach detection or not var/frequency = 1439 diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index fa71e660220..5bea355efd6 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -8,6 +8,9 @@ use_power = 1 idle_power_usage = 10 active_power_usage = 2000 + clicksound = "keyboard" + clickvol = 30 + circuit = /obj/item/weapon/circuitboard/autolathe var/datum/category_collection/autolathe/machine_recipes var/list/stored_material = list(DEFAULT_WALL_MATERIAL = 0, "glass" = 0) diff --git a/code/game/machinery/cryo.dm b/code/game/machinery/cryo.dm index fb4c9b79235..2db50be5339 100644 --- a/code/game/machinery/cryo.dm +++ b/code/game/machinery/cryo.dm @@ -16,6 +16,8 @@ active_power_usage = 200 buckle_lying = FALSE buckle_dir = SOUTH + clicksound = 'sound/machines/buttonbeep.ogg' + clickvol = 30 var/temperature_archived var/mob/living/carbon/occupant = null diff --git a/code/game/machinery/jukebox.dm b/code/game/machinery/jukebox.dm index a9e5d7c154f..8bd43417140 100644 --- a/code/game/machinery/jukebox.dm +++ b/code/game/machinery/jukebox.dm @@ -21,6 +21,7 @@ idle_power_usage = 10 active_power_usage = 100 circuit = /obj/item/weapon/circuitboard/jukebox + clicksound = 'sound/machines/buttonbeep.ogg' // Vars for hacking var/datum/wires/jukebox/wires = null diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index fa808ea051a..f45872c2d88 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -10,6 +10,7 @@ var/on = 0 var/set_temperature = T0C + 20 //K var/heating_power = 40000 + clicksound = "switch" /obj/machinery/space_heater/New() ..() diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index e1d81c878b2..acc997f959a 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -8,6 +8,7 @@ icon_state = "generic" anchored = 1 density = 1 + clicksound = "button" var/icon_vend //Icon_state when vending var/icon_deny //Icon_state when denying access @@ -253,6 +254,7 @@ */ /obj/machinery/vending/proc/pay_with_ewallet(var/obj/item/weapon/spacecash/ewallet/wallet) visible_message("\The [usr] swipes \the [wallet] through \the [src].") + playsound(src.loc, 'sound/machines/id_swipe.ogg', 50, 1) if(currently_vending.price > wallet.worth) status_message = "Insufficient funds on chargecard." status_error = 1 @@ -273,6 +275,7 @@ visible_message("\The [usr] swipes \the [I] through \the [src].") else visible_message("\The [usr] swipes \the [ID_container] through \the [src].") + playsound(src.loc, 'sound/machines/id_swipe.ogg', 50, 1) var/datum/money_account/customer_account = get_account(I.associated_account_number) if(!customer_account) status_message = "Error: Unable to access account. Please contact technical support if problem persists." diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index 7f2a5ae47b6..fd462333906 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -5,6 +5,9 @@ icon_state = "wm_10" density = 1 anchored = 1.0 + clicksound = "button" + clickvol = 40 + circuit = /obj/item/weapon/circuitboard/washing var/state = 1 //1 = empty, open door diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 8948a1ec115..278d911f0ef 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -128,6 +128,11 @@ var/global/list/default_medbay_channels = list( ui.set_initial_data(data) ui.open() +/obj/item/device/radio/CouldUseTopic(var/mob/user) + ..() + if(iscarbon(user)) + playsound(src, "button", 10) + /obj/item/device/radio/proc/list_channels(var/mob/user) return list_internal_channels(user) diff --git a/code/modules/food/kitchen/microwave.dm b/code/modules/food/kitchen/microwave.dm index 9978bca5ace..3498d214130 100644 --- a/code/modules/food/kitchen/microwave.dm +++ b/code/modules/food/kitchen/microwave.dm @@ -8,6 +8,8 @@ use_power = 1 idle_power_usage = 5 active_power_usage = 100 + clicksound = "button" + clickvol = "30" flags = OPENCONTAINER | NOREACT circuit = /obj/item/weapon/circuitboard/microwave var/operating = 0 // Is it on? diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 5195d1ed5af..60519e6f20a 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -68,6 +68,7 @@ layer = ABOVE_TURF_LAYER anchored = 1 use_power = 0 + clicksound = "switch" req_access = list(access_engine_equip) var/area/area var/areastring = null @@ -535,7 +536,7 @@ else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) // trying to unlock the interface with an ID card togglelock() - + else if (istype(W, /obj/item/stack/cable_coil) && !terminal && opened && has_electronics!=2) var/turf/T = loc if(istype(T) && !T.is_plating()) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 00fe38541e3..31c7be32ec3 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -13,6 +13,7 @@ anchored = 1 use_power = 0 circuit = /obj/item/weapon/circuitboard/smes + clicksound = "switch" var/capacity = 5e6 // maximum charge var/charge = 1e6 // actual charge diff --git a/code/modules/reagents/dispenser/dispenser2.dm b/code/modules/reagents/dispenser/dispenser2.dm index b09c55d95b3..b6dff6a3ea9 100644 --- a/code/modules/reagents/dispenser/dispenser2.dm +++ b/code/modules/reagents/dispenser/dispenser2.dm @@ -3,6 +3,7 @@ desc = "Automagically fabricates chemicals from electricity." icon = 'icons/obj/chemical.dmi' icon_state = "dispenser" + clicksound = "switch" var/list/spawn_cartridges = null // Set to a list of types to spawn one of each on New() diff --git a/html/changelogs/Cerebulon - machinesounds.yml b/html/changelogs/Cerebulon - machinesounds.yml new file mode 100644 index 00000000000..c6bfbfeaa30 --- /dev/null +++ b/html/changelogs/Cerebulon - machinesounds.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Cerebulon + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - soundadd: "Added button sounds to various machines." diff --git a/sound/machines/buttonbeep.ogg b/sound/machines/buttonbeep.ogg new file mode 100644 index 0000000000000000000000000000000000000000..347ea135440adad83ef6b6d581e24812dd8a19f4 GIT binary patch literal 13054 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 literal 0 HcmV?d00001