From 8d2b41ad2c73e1db743b0c98ecf66f0d1bfbcd10 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Sun, 15 Mar 2020 11:38:44 -0700 Subject: [PATCH] Big Bastard Incidental Sound Port --- code/defines/obj.dm | 1 + code/defines/obj/weapon.dm | 5 ++- code/defines/procs/announce.dm | 5 +++ code/game/machinery/newscaster.dm | 1 + code/game/machinery/vending.dm | 12 +++++- code/game/objects/items.dm | 7 ++++ code/game/objects/items/devices/PDA/PDA.dm | 2 + code/game/objects/items/stacks/medical.dm | 4 ++ .../game/objects/items/stacks/sheets/glass.dm | 1 + .../objects/items/stacks/sheets/leather.dm | 1 + .../objects/items/stacks/tiles/tile_types.dm | 4 ++ code/game/objects/items/toys.dm | 28 ++++++++++--- code/game/objects/items/trash.dm | 3 ++ .../objects/items/weapons/cigs_lighters.dm | 8 ++++ code/game/objects/items/weapons/cosmetics.dm | 1 + .../objects/items/weapons/extinguisher.dm | 1 + .../objects/items/weapons/gift_wrappaper.dm | 2 + code/game/objects/items/weapons/handcuffs.dm | 1 + .../objects/items/weapons/id cards/cards.dm | 1 + .../objects/items/weapons/material/kitchen.dm | 1 + .../objects/items/weapons/material/knives.dm | 2 + .../objects/items/weapons/material/misc.dm | 1 + .../objects/items/weapons/material/swords.dm | 1 + .../items/weapons/material/twohanded.dm | 1 + .../objects/items/weapons/storage/backpack.dm | 5 +-- .../objects/items/weapons/storage/bags.dm | 3 ++ .../objects/items/weapons/storage/belt.dm | 1 + .../objects/items/weapons/storage/bible.dm | 2 + .../objects/items/weapons/storage/boxes.dm | 16 ++++++-- .../items/weapons/storage/briefcase.dm | 2 + .../objects/items/weapons/storage/firstaid.dm | 8 +++- .../objects/items/weapons/storage/secure.dm | 1 + .../objects/items/weapons/storage/storage.dm | 4 +- .../objects/items/weapons/storage/toolbox.dm | 2 + .../objects/items/weapons/surgery_tools.dm | 9 +++++ .../objects/items/weapons/swords_axes_etc.dm | 11 ++++++ .../game/objects/items/weapons/tanks/tanks.dm | 1 + code/game/objects/items/weapons/tape.dm | 2 + .../objects/items/weapons/tools/crowbar.dm | 1 + .../items/weapons/tools/screwdriver.dm | 1 + .../items/weapons/tools/weldingtool.dm | 1 + .../items/weapons/tools/wirecutters.dm | 1 + .../objects/items/weapons/tools/wrench.dm | 1 + code/game/objects/items/weapons/towels.dm | 1 + code/game/objects/items/weapons/trays.dm | 1 + code/game/objects/items/weapons/weaponry.dm | 1 + .../objects/items/weapons/weldbackpack.dm | 1 + code/game/objects/structures/bedsheet_bin.dm | 1 + code/game/objects/structures/inflatable.dm | 1 + .../structures/stool_bed_chair_nest/bed.dm | 1 + .../structures/stool_bed_chair_nest/chairs.dm | 1 + .../stool_bed_chair_nest/wheelchair.dm | 2 + code/game/objects/structures/watercloset.dm | 2 + code/game/sound.dm | 4 ++ .../preference_setup/global/setting_datums.dm | 6 +++ .../client/preferences_toggle_procs.dm | 15 +++++++ code/modules/clothing/clothing.dm | 2 + code/modules/clothing/ears/ears.dm | 2 + code/modules/clothing/glasses/glasses.dm | 3 ++ code/modules/clothing/gloves/arm_guards.dm | 1 + code/modules/clothing/gloves/color.dm | 9 +++++ code/modules/clothing/gloves/miscellaneous.dm | 4 ++ code/modules/clothing/head/collectable.dm | 6 +++ code/modules/clothing/head/flowercrowns.dm | 4 ++ code/modules/clothing/head/hardhat.dm | 1 + code/modules/clothing/head/helmet.dm | 1 + code/modules/clothing/head/misc.dm | 5 ++- code/modules/clothing/head/misc_special.dm | 2 + code/modules/clothing/rings/rings.dm | 8 ++++ code/modules/clothing/shoes/boots.dm | 2 + code/modules/clothing/shoes/colour.dm | 7 ++++ code/modules/clothing/shoes/leg_guards.dm | 1 + code/modules/clothing/shoes/magboots.dm | 2 + code/modules/clothing/shoes/miscellaneous.dm | 3 ++ code/modules/detectivework/tools/rag.dm | 1 + code/modules/economy/cash.dm | 2 + code/modules/food/food.dm | 1 + code/modules/food/food/cans.dm | 2 + code/modules/food/food/drinks.dm | 11 ++++++ code/modules/food/food/drinks/bottle.dm | 4 +- code/modules/holodeck/HolodeckObjects.dm | 1 + code/modules/hydroponics/grown.dm | 2 + code/modules/library/lib_items.dm | 5 +++ code/modules/lore_codex/codex.dm | 4 ++ code/modules/materials/material_sheets.dm | 11 ++++++ code/modules/mining/coins.dm | 1 + code/modules/mining/mine_items.dm | 2 +- code/modules/mob/inventory.dm | 1 - code/modules/mob/living/inventory.dm | 21 +++++++++- code/modules/organs/organ.dm | 1 + code/modules/paperwork/filingcabinet.dm | 9 +++-- code/modules/paperwork/folders.dm | 1 + code/modules/paperwork/paper.dm | 6 +++ code/modules/paperwork/paper_bundle.dm | 1 + code/modules/paperwork/pen.dm | 1 + code/modules/power/cable.dm | 1 + code/modules/projectiles/ammunition.dm | 1 + code/modules/projectiles/gun.dm | 1 + code/modules/reagents/dispenser/dispenser2.dm | 1 + .../reagents/reagent_containers/blood_pack.dm | 1 + .../reagents/reagent_containers/dropper.dm | 1 + .../reagents/reagent_containers/pill.dm | 1 + .../reagents/reagent_containers/syringes.dm | 1 + code/modules/recycling/sortingmachinery.dm | 10 +++++ html/changelogs/Cerebulon - bigsounds.yml | 37 ++++++++++++++++++ sound/bureaucracy/bookclose.ogg | Bin 0 -> 21288 bytes sound/bureaucracy/bookopen.ogg | Bin 0 -> 44310 bytes sound/bureaucracy/filingcabinet.ogg | Bin 0 -> 30696 bytes sound/bureaucracy/paperburn.ogg | Bin 0 -> 86176 bytes sound/bureaucracy/papercrumple.ogg | Bin 0 -> 22209 bytes sound/bureaucracy/pen1.ogg | Bin 0 -> 21208 bytes sound/bureaucracy/pen2.ogg | Bin 0 -> 13811 bytes sound/bureaucracy/stamp.ogg | Bin 0 -> 7722 bytes sound/effects/magnetclamp.ogg | Bin 0 -> 10877 bytes sound/effects/roll.ogg | Bin 0 -> 13519 bytes sound/effects/sink.ogg | Bin 0 -> 14415 bytes sound/effects/sink_long.ogg | Bin 0 -> 40237 bytes sound/items/cigs_lighters/cig_light.ogg | Bin 0 -> 17354 bytes sound/items/cigs_lighters/cig_snuff.ogg | Bin 0 -> 11799 bytes sound/items/cigs_lighters/inhale.ogg | Bin 0 -> 23256 bytes sound/items/cigs_lighters/matchstick_hit.ogg | Bin 0 -> 5525 bytes sound/items/cigs_lighters/matchstick_lit.ogg | Bin 0 -> 11414 bytes sound/items/drop/accessory.ogg | Bin 0 -> 17328 bytes sound/items/drop/axe.ogg | Bin 0 -> 9477 bytes sound/items/drop/backpack.ogg | Bin 0 -> 29898 bytes sound/items/drop/basketball.ogg | Bin 0 -> 27127 bytes sound/items/drop/boots.ogg | Bin 0 -> 25864 bytes sound/items/drop/bottle.ogg | Bin 0 -> 24542 bytes sound/items/drop/box.ogg | Bin 0 -> 26387 bytes sound/items/drop/card.ogg | Bin 0 -> 16578 bytes sound/items/drop/clothing.ogg | Bin 0 -> 8007 bytes sound/items/drop/device.ogg | Bin 0 -> 11230 bytes sound/items/drop/flesh.ogg | Bin 0 -> 78987 bytes sound/items/drop/food.ogg | Bin 0 -> 13256 bytes sound/items/drop/gascan.ogg | Bin 0 -> 172789 bytes sound/items/drop/glass.ogg | Bin 0 -> 8566 bytes sound/items/drop/gloves.ogg | Bin 0 -> 17219 bytes sound/items/drop/gun.ogg | Bin 0 -> 37003 bytes sound/items/drop/hat.ogg | Bin 0 -> 38688 bytes sound/items/drop/helm.ogg | Bin 0 -> 15846 bytes sound/items/drop/herb.ogg | Bin 0 -> 10321 bytes sound/items/drop/knife.ogg | Bin 0 -> 10129 bytes sound/items/drop/leather.ogg | Bin 0 -> 46611 bytes sound/items/drop/metalboots.ogg | Bin 0 -> 7686 bytes sound/items/drop/metalshield.ogg | Bin 0 -> 6973 bytes sound/items/drop/metalweapon.ogg | Bin 0 -> 53251 bytes sound/items/drop/paper.ogg | Bin 0 -> 31410 bytes sound/items/drop/pillbottle.ogg | Bin 0 -> 19220 bytes sound/items/drop/plushie.ogg | Bin 0 -> 11556 bytes sound/items/drop/ring.ogg | Bin 0 -> 12202 bytes sound/items/drop/rubber.ogg | Bin 0 -> 27940 bytes sound/items/drop/scrap.ogg | Bin 0 -> 11580 bytes sound/items/drop/shoes.ogg | Bin 0 -> 18335 bytes sound/items/drop/shovel.ogg | Bin 0 -> 25278 bytes sound/items/drop/soda.ogg | Bin 0 -> 51901 bytes sound/items/drop/sword.ogg | Bin 0 -> 6711 bytes sound/items/drop/wooden.ogg | Bin 0 -> 9215 bytes sound/items/drop/woodweapon.ogg | Bin 0 -> 73570 bytes sound/items/drop/wrapper.ogg | Bin 0 -> 38600 bytes sound/items/package_unwrap.ogg | Bin 0 -> 69862 bytes sound/items/package_wrap.ogg | Bin 0 -> 71400 bytes sound/items/storage/box.ogg | Bin 0 -> 26704 bytes sound/items/storage/boxfold.ogg | Bin 0 -> 29012 bytes sound/items/storage/briefcase.ogg | Bin 0 -> 7440 bytes sound/items/storage/pillbottle.ogg | Bin 0 -> 7565 bytes sound/items/storage/toolbox.ogg | Bin 0 -> 13218 bytes sound/machines/reagent_dispense.ogg | Bin 0 -> 62979 bytes sound/machines/vending/vending_cans.ogg | Bin 0 -> 42210 bytes sound/machines/vending/vending_coffee.ogg | Bin 0 -> 165781 bytes sound/machines/vending/vending_drop.ogg | Bin 0 -> 37531 bytes sound/misc/notice3.ogg | Bin 0 -> 7604 bytes sound/weapons/holster/holsterin.ogg | Bin 0 -> 15340 bytes sound/weapons/holster/holsterout.ogg | Bin 0 -> 16522 bytes sound/weapons/holster/sheathin.ogg | Bin 0 -> 13067 bytes sound/weapons/holster/sheathout.ogg | Bin 0 -> 8889 bytes sound/weapons/mine/pickaxe1.ogg | Bin 0 -> 9772 bytes sound/weapons/mine/pickaxe2.ogg | Bin 0 -> 11602 bytes sound/weapons/mine/pickaxe3.ogg | Bin 0 -> 11314 bytes sound/weapons/mine/pickaxe4.ogg | Bin 0 -> 9606 bytes 179 files changed, 380 insertions(+), 29 deletions(-) create mode 100644 html/changelogs/Cerebulon - bigsounds.yml create mode 100644 sound/bureaucracy/bookclose.ogg create mode 100644 sound/bureaucracy/bookopen.ogg create mode 100644 sound/bureaucracy/filingcabinet.ogg create mode 100644 sound/bureaucracy/paperburn.ogg create mode 100644 sound/bureaucracy/papercrumple.ogg create mode 100644 sound/bureaucracy/pen1.ogg create mode 100644 sound/bureaucracy/pen2.ogg create mode 100644 sound/bureaucracy/stamp.ogg create mode 100644 sound/effects/magnetclamp.ogg create mode 100644 sound/effects/roll.ogg create mode 100644 sound/effects/sink.ogg create mode 100644 sound/effects/sink_long.ogg create mode 100644 sound/items/cigs_lighters/cig_light.ogg create mode 100644 sound/items/cigs_lighters/cig_snuff.ogg create mode 100644 sound/items/cigs_lighters/inhale.ogg create mode 100644 sound/items/cigs_lighters/matchstick_hit.ogg create mode 100644 sound/items/cigs_lighters/matchstick_lit.ogg create mode 100644 sound/items/drop/accessory.ogg create mode 100644 sound/items/drop/axe.ogg create mode 100644 sound/items/drop/backpack.ogg create mode 100644 sound/items/drop/basketball.ogg create mode 100644 sound/items/drop/boots.ogg create mode 100644 sound/items/drop/bottle.ogg create mode 100644 sound/items/drop/box.ogg create mode 100644 sound/items/drop/card.ogg create mode 100644 sound/items/drop/clothing.ogg create mode 100644 sound/items/drop/device.ogg create mode 100644 sound/items/drop/flesh.ogg create mode 100644 sound/items/drop/food.ogg create mode 100644 sound/items/drop/gascan.ogg create mode 100644 sound/items/drop/glass.ogg create mode 100644 sound/items/drop/gloves.ogg create mode 100644 sound/items/drop/gun.ogg create mode 100644 sound/items/drop/hat.ogg create mode 100644 sound/items/drop/helm.ogg create mode 100644 sound/items/drop/herb.ogg create mode 100644 sound/items/drop/knife.ogg create mode 100644 sound/items/drop/leather.ogg create mode 100644 sound/items/drop/metalboots.ogg create mode 100644 sound/items/drop/metalshield.ogg create mode 100644 sound/items/drop/metalweapon.ogg create mode 100644 sound/items/drop/paper.ogg create mode 100644 sound/items/drop/pillbottle.ogg create mode 100644 sound/items/drop/plushie.ogg create mode 100644 sound/items/drop/ring.ogg create mode 100644 sound/items/drop/rubber.ogg create mode 100644 sound/items/drop/scrap.ogg create mode 100644 sound/items/drop/shoes.ogg create mode 100644 sound/items/drop/shovel.ogg create mode 100644 sound/items/drop/soda.ogg create mode 100644 sound/items/drop/sword.ogg create mode 100644 sound/items/drop/wooden.ogg create mode 100644 sound/items/drop/woodweapon.ogg create mode 100644 sound/items/drop/wrapper.ogg create mode 100644 sound/items/package_unwrap.ogg create mode 100644 sound/items/package_wrap.ogg create mode 100644 sound/items/storage/box.ogg create mode 100644 sound/items/storage/boxfold.ogg create mode 100644 sound/items/storage/briefcase.ogg create mode 100644 sound/items/storage/pillbottle.ogg create mode 100644 sound/items/storage/toolbox.ogg create mode 100644 sound/machines/reagent_dispense.ogg create mode 100644 sound/machines/vending/vending_cans.ogg create mode 100644 sound/machines/vending/vending_coffee.ogg create mode 100644 sound/machines/vending/vending_drop.ogg create mode 100644 sound/misc/notice3.ogg create mode 100644 sound/weapons/holster/holsterin.ogg create mode 100644 sound/weapons/holster/holsterout.ogg create mode 100644 sound/weapons/holster/sheathin.ogg create mode 100644 sound/weapons/holster/sheathout.ogg create mode 100644 sound/weapons/mine/pickaxe1.ogg create mode 100644 sound/weapons/mine/pickaxe2.ogg create mode 100644 sound/weapons/mine/pickaxe3.ogg create mode 100644 sound/weapons/mine/pickaxe4.ogg diff --git a/code/defines/obj.dm b/code/defines/obj.dm index 116f239c41..1f3a7257c9 100644 --- a/code/defines/obj.dm +++ b/code/defines/obj.dm @@ -222,6 +222,7 @@ var/global/list/PDA_Manifest = list() throwforce = 0.0 throw_speed = 1 throw_range = 20 + drop_sound = 'sound/items/drop/rubber.ogg' afterattack(atom/target as mob|obj|turf|area, mob/user as mob) user.drop_item() diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index e06bde44a7..622051ba6c 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -35,6 +35,7 @@ throwforce = 0 throw_speed = 4 throw_range = 20 + drop_sound = 'sound/misc/slip.ogg' /obj/item/weapon/soap/nanotrasen desc = "A NanoTrasen-brand bar of soap. Smells of phoron." @@ -105,7 +106,7 @@ if(concealed_blade) user.visible_message("[user] has unsheathed \a [concealed_blade] from [T.his] [src]!", "You unsheathe \the [concealed_blade] from \the [src].") // Calling drop/put in hands to properly call item drop/pickup procs - playsound(user.loc, 'sound/weapons/flipblade.ogg', 50, 1) + playsound(user.loc, 'sound/weapons/holster/sheathout.ogg', 50, 1) user.drop_from_inventory(src) user.put_in_hands(concealed_blade) user.put_in_hands(src) @@ -119,6 +120,7 @@ if(!src.concealed_blade && istype(W)) var/datum/gender/T = gender_datums[user.get_visible_gender()] user.visible_message("[user] has sheathed \a [W] into [T.his] [src]!", "You sheathe \the [W] into \the [src].") + playsound(user.loc, 'sound/weapons/holster/sheathin.ogg', 50, 1) user.drop_from_inventory(W) W.loc = src src.concealed_blade = W @@ -487,6 +489,7 @@ icon = 'icons/obj/stock_parts.dmi' w_class = ITEMSIZE_SMALL var/rating = 1 + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/weapon/stock_parts/New() src.pixel_x = rand(-5.0, 5) diff --git a/code/defines/procs/announce.dm b/code/defines/procs/announce.dm index f4dae08661..ba2555e7f3 100644 --- a/code/defines/procs/announce.dm +++ b/code/defines/procs/announce.dm @@ -113,5 +113,10 @@ datum/announcement/proc/Log(message as text, message_title as text) rank = character.mind.role_alt_title AnnounceArrivalSimple(character.real_name, rank, join_message) +<<<<<<< HEAD /proc/AnnounceArrivalSimple(var/name, var/rank = "visitor", var/join_message = "will arrive at the station shortly") //VOREStation Edit - Remove shuttle reference +======= + +/proc/AnnounceArrivalSimple(var/name, var/rank = "visitor", var/join_message = "will arrive to the station shortly by shuttle", new_sound = 'sound/misc/notice3.ogg') +>>>>>>> 22e28f2... Merge pull request #6804 from Cerebulon/bigsounds global_announcer.autosay("[name], [rank], [join_message].", "Arrivals Announcement Computer") diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index 34381cb3c0..10ae286276 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -807,6 +807,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co var/datum/feed_message/important_message = null var/scribble="" var/scribble_page = null + drop_sound = 'sound/items/drop/wrapper.ogg' obj/item/weapon/newspaper/attack_self(mob/user as mob) if(ishuman(user)) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index acc997f959..06994a5823 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -26,6 +26,7 @@ var/datum/stored_item/vending_product/currently_vending = null // What we're requesting payment for right now var/status_message = "" // Status screen messages like "insufficient funds", displayed in NanoUI var/status_error = 0 // Set to 1 if status_message is an error + var/vending_sound = "machines/vending/vending_drop.ogg" /* Variables used to initialize the product list @@ -508,8 +509,7 @@ sleep(3) if(R.get_product(get_turf(src))) visible_message("\The [src] clunks as it vends an additional item.") - - playsound(src, 'sound/items/vending.ogg', 50, 1, 1) + playsound(src.loc, "sound/[vending_sound]", 100, 1, 1) status_message = "" status_error = 0 @@ -741,6 +741,7 @@ req_access = list(access_bar) req_log_access = access_bar has_logs = 1 + vending_sound = "machines/vending/vending_cans.ogg" /obj/machinery/vending/assist products = list( /obj/item/device/assembly/prox_sensor = 5,/obj/item/device/assembly/igniter = 3,/obj/item/device/assembly/signaler = 4, @@ -759,7 +760,12 @@ vend_power_usage = 85000 //85 kJ to heat a 250 mL cup of coffee products = list(/obj/item/weapon/reagent_containers/food/drinks/coffee = 25,/obj/item/weapon/reagent_containers/food/drinks/tea = 25,/obj/item/weapon/reagent_containers/food/drinks/h_chocolate = 25) contraband = list(/obj/item/weapon/reagent_containers/food/drinks/ice = 10) +<<<<<<< HEAD prices = list(/obj/item/weapon/reagent_containers/food/drinks/coffee = 2, /obj/item/weapon/reagent_containers/food/drinks/tea = 2, /obj/item/weapon/reagent_containers/food/drinks/h_chocolate = 2) //VOREStation Edit +======= + prices = list(/obj/item/weapon/reagent_containers/food/drinks/coffee = 3, /obj/item/weapon/reagent_containers/food/drinks/tea = 3, /obj/item/weapon/reagent_containers/food/drinks/h_chocolate = 3) + vending_sound = "machines/vending/vending_coffee.ogg" +>>>>>>> 22e28f2... Merge pull request #6804 from Cerebulon/bigsounds /obj/machinery/vending/snack name = "Getmore Chocolate Corp" @@ -796,6 +802,7 @@ /obj/item/weapon/reagent_containers/food/drinks/cans/iced_tea = 1,/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice = 1, /obj/item/weapon/reagent_containers/food/drinks/cans/gingerale = 1) idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. + vending_sound = "machines/vending/vending_cans.ogg" /obj/machinery/vending/fitness name = "SweatMAX" @@ -1035,6 +1042,7 @@ products = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/space_up = 30) // TODO Russian soda can contraband = list(/obj/item/weapon/reagent_containers/food/drinks/bottle/cola = 20) // TODO Russian cola can idle_power_usage = 211 //refrigerator - believe it or not, this is actually the average power consumption of a refrigerated vending machine according to NRCan. + vending_sound = "machines/vending/vending_cans.ogg" /obj/machinery/vending/tool name = "YouTool" diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 78f8ab4ffe..927c471544 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -92,6 +92,8 @@ var/icon/default_worn_icon //Default on-mob icon var/worn_layer //Default on-mob layer + var/drop_sound = 'sound/items/drop/device.ogg' // drop sound - this is the default + /obj/item/New() ..() if(embed_chance < 0) @@ -274,6 +276,11 @@ /obj/item/proc/moved(mob/user as mob, old_loc as turf) return +/obj/item/throw_impact(atom/hit_atom) + ..() + if(drop_sound) + playsound(src, drop_sound, 50, 0, preference = /datum/client_preference/drop_sounds) + // apparently called whenever an item is removed from a slot, container, or anything else. /obj/item/proc/dropped(mob/user as mob) ..() diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 1a66de26f8..848f9bcd0d 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -1054,6 +1054,7 @@ var/global/list/obj/item/device/pda/PDAs = list() var/mob/M = loc M.put_in_hands(id) to_chat(usr, "You remove the ID from the [name].") + playsound(loc, 'sound/machines/id_swipe.ogg', 100, 1) else id.loc = get_turf(src) id = null @@ -1260,6 +1261,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if (cartridge.radio) cartridge.radio.hostpda = null to_chat(usr, "You remove \the [cartridge] from the [name].") + playsound(loc, 'sound/machines/id_swipe.ogg', 100, 1) cartridge = null /obj/item/device/pda/proc/id_check(mob/user as mob, choice as num)//To check for IDs; 1 for in-pda use, 2 for out of pda use. diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index b429afd31b..8887dd0053 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -10,6 +10,7 @@ var/heal_brute = 0 var/heal_burn = 0 var/apply_sounds + drop_sound = 'sound/items/drop/box.ogg' var/upgrade_to // The type path this stack can be upgraded to. @@ -143,6 +144,7 @@ origin_tech = list(TECH_BIO = 1) no_variants = FALSE apply_sounds = list('sound/effects/rip1.ogg','sound/effects/rip2.ogg') + drop_sound = 'sound/items/drop/gloves.ogg' upgrade_to = /obj/item/stack/medical/advanced/bruise_pack @@ -212,6 +214,7 @@ origin_tech = list(TECH_BIO = 1) no_variants = FALSE apply_sounds = list('sound/effects/ointment.ogg') + drop_sound = 'sound/items/drop/herb.ogg' /obj/item/stack/medical/ointment/attack(mob/living/carbon/M as mob, mob/user as mob) if(..()) @@ -354,6 +357,7 @@ icon_state = "splint" amount = 5 max_amount = 5 + drop_sound = 'sound/items/drop/hat.ogg' var/list/splintable_organs = list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO) //List of organs you can splint, natch. diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index bc21de5e07..f571123fc1 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -16,6 +16,7 @@ icon_state = "sheet-glass" var/is_reinforced = 0 default_type = "glass" + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/stack/material/glass/attack_self(mob/user as mob) construct_window(user) diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index f85bd944fc..255a739d84 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -4,6 +4,7 @@ singular_name = "human skin piece" icon_state = "sheet-hide" no_variants = FALSE + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/stack/material/animalhide/human amount = 50 diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index 357ff7e125..b1e86987ac 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -17,6 +17,7 @@ randpixel = 7 w_class = ITEMSIZE_NORMAL max_amount = 60 + drop_sound = 'sound/items/drop/axe.ogg' /obj/item/stack/tile/New() ..() @@ -37,6 +38,7 @@ flags = 0 origin_tech = list(TECH_BIO = 1) no_variants = FALSE + drop_sound = 'sound/items/drop/herb.ogg' /* * Wood */ @@ -51,6 +53,7 @@ throw_range = 20 flags = 0 no_variants = FALSE + drop_sound = 'sound/items/drop/wooden.ogg' /obj/item/stack/tile/wood/sif name = "alien wood tile" @@ -80,6 +83,7 @@ throw_range = 20 flags = 0 no_variants = FALSE + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/stack/tile/carpet/teal name = "teal carpet" diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 927d21c646..a54c7e5c7b 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -26,6 +26,7 @@ throw_speed = 4 throw_range = 20 force = 0 + drop_sound = 'sound/items/drop/gloves.ogg' /* @@ -36,6 +37,7 @@ desc = "A translucent balloon. There's nothing in it." icon = 'icons/obj/toy.dmi' icon_state = "waterballoon-e" + drop_sound = 'sound/items/drop/rubber.ogg' /obj/item/toy/balloon/New() var/datum/reagents/R = new/datum/reagents(10) @@ -99,6 +101,7 @@ icon = 'icons/obj/weapons.dmi' icon_state = "syndballoon" w_class = ITEMSIZE_LARGE + drop_sound = 'sound/items/drop/rubber.ogg' /obj/item/toy/nanotrasenballoon name = "criminal balloon" @@ -110,6 +113,7 @@ icon = 'icons/obj/weapons.dmi' icon_state = "ntballoon" w_class = ITEMSIZE_LARGE + drop_sound = 'sound/items/drop/rubber.ogg' /* * Fake telebeacon @@ -147,6 +151,7 @@ w_class = ITEMSIZE_SMALL attack_verb = list("attacked", "struck", "hit") var/bullets = 5 + drop_sound = 'sound/items/drop/gun.ogg' examine(mob/user) if(..(user, 2) && bullets) @@ -239,6 +244,7 @@ icon_state = "foamdart" w_class = ITEMSIZE_TINY slot_flags = SLOT_EARS + drop_sound = 'sound/items/drop/food.ogg' /obj/effect/foam_dart_dummy name = "" @@ -256,6 +262,7 @@ desc = "A cheap, plastic replica of an energy sword. Realistic sounds! Ages 8 and up." icon = 'icons/obj/weapons.dmi' icon_state = "esword" + drop_sound = 'sound/items/drop/gun.ogg' var/lcolor var/rainbow = FALSE item_icons = list( @@ -344,6 +351,7 @@ icon = 'icons/obj/toy.dmi' icon_state = "snappop" w_class = ITEMSIZE_TINY + drop_sound = null throw_impact(atom/hit_atom) ..() @@ -378,6 +386,7 @@ name = "water flower" desc = "A seemingly innocent sunflower...with a twist." icon = 'icons/obj/device.dmi' + drop_sound = 'sound/items/drop/food.ogg' icon_state = "sunflower" item_state = "sunflower" var/empty = 0 @@ -448,6 +457,7 @@ desc = "A genuine Admiral Krush Bosun's Whistle, for the aspiring ship's captain! Suitable for ages 8 and up, do not swallow." icon = 'icons/obj/toy.dmi' icon_state = "bosunwhistle" + drop_sound = 'sound/items/drop/card.ogg' var/cooldown = 0 w_class = ITEMSIZE_TINY slot_flags = SLOT_EARS | SLOT_HOLSTER @@ -465,6 +475,7 @@ icon = 'icons/obj/toy.dmi' icon_state = "ripleytoy" var/cooldown = 0 + drop_sound = 'sound/mecha/mechstep.ogg' //all credit to skasi for toy mech fun ideas /obj/item/toy/prize/attack_self(mob/user as mob) @@ -546,6 +557,7 @@ icon_state = "nuketoy" var/cooldown = 0 var/toysay = "What the fuck did you do?" + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/toy/figure/New() ..() @@ -879,14 +891,14 @@ var/searching = FALSE var/opened = FALSE // has this been slit open? this will allow you to store an object in a plushie. var/obj/item/stored_item // Note: Stored items can't be bigger than the plushie itself. - + /obj/structure/plushie/examine(mob/user) ..() if(opened) to_chat(user, "You notice an incision has been made on [src].") if(in_range(user, src) && stored_item) to_chat(user, "You can see something in there...") - + /obj/structure/plushie/attack_hand(mob/user) user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) @@ -900,7 +912,7 @@ return else searching = FALSE - + if(user.a_intent == I_HELP) user.visible_message("\The [user] hugs [src]!","You hug [src]!") else if (user.a_intent == I_HURT) @@ -927,7 +939,7 @@ if(stored_item) to_chat(user, "There is already something in here.") return - + if(!(I.w_class > w_class)) to_chat(user, "You place [I] inside [src].") user.drop_from_inventory(I, src) @@ -970,6 +982,7 @@ desc = "A small toy plushie. It's very cute." icon = 'icons/obj/toy.dmi' icon_state = "nymphplushie" + drop_sound = 'sound/items/drop/plushie.ogg' w_class = ITEMSIZE_TINY var/last_message = 0 var/pokephrase = "Uww!" @@ -1007,6 +1020,7 @@ user.visible_message("\The [user] attempts to strangle [src]!","You attempt to strangle [src]!") else user.visible_message("\The [user] pokes [src].","You poke [src].") + playsound(src, 'sound/items/drop/plushie.ogg', 25, 0) visible_message("[src] says, \"[pokephrase]\"") last_message = world.time @@ -1030,7 +1044,7 @@ user.visible_message("[user] makes \the [I] kiss \the [src]!.", \ "You make \the [I] kiss \the [src]!.") return - + if(istype(I, /obj/item/device/threadneedle) && opened) to_chat(user, "You sew the hole underneath [src].") @@ -1053,7 +1067,7 @@ stored_item = I to_chat(user, "You placed [I] into [src].") return - + return ..() /obj/item/toy/plushie/nymph @@ -1488,6 +1502,7 @@ icon_state = "inflatable" icon = 'icons/obj/clothing/belts.dmi' slot_flags = SLOT_BELT + drop_sound = 'sound/items/drop/rubber.ogg' /obj/item/toy/xmastree name = "Miniature Christmas tree" @@ -1497,3 +1512,4 @@ w_class = ITEMSIZE_TINY force = 1 throwforce = 1 + drop_sound = 'sound/items/drop/box.ogg' diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm index 12315972a2..b72a73f34e 100644 --- a/code/game/objects/items/trash.dm +++ b/code/game/objects/items/trash.dm @@ -6,6 +6,7 @@ icon = 'icons/obj/trash.dmi' w_class = ITEMSIZE_SMALL desc = "This is rubbish." + drop_sound = 'sound/items/drop/wrapper.ogg' /obj/item/trash/raisins name = "\improper 4no raisins" @@ -38,6 +39,7 @@ /obj/item/trash/unajerky name = "Moghes Imported Sissalik Jerky" icon_state = "unathitinred" + drop_sound = 'sound/items/drop/soda.ogg' /obj/item/trash/syndi_cakes name = "syndi cakes" @@ -66,6 +68,7 @@ /obj/item/trash/tray name = "tray" icon_state = "tray" + drop_sound = 'sound/items/trayhit1.ogg' /obj/item/trash/candle name = "candle" diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 759ae702ab..70a9110215 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -34,6 +34,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM origin_tech = list(TECH_MATERIAL = 1) slot_flags = SLOT_EARS attack_verb = list("burnt", "singed") + drop_sound = null /obj/item/weapon/flame/match/process() if(isliving(loc)) @@ -90,6 +91,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/ignitermes = "USER lights NAME with FLAME" var/brand blood_sprite_state = null //Can't bloody these + drop_sound = 'sound/items/cigs_lighters/cig_snuff.ogg' /obj/item/clothing/mask/smokable/Initialize() . = ..() @@ -158,6 +160,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/smokable/proc/light(var/flavor_text = "[usr] lights the [name].") if(!src.lit) src.lit = 1 + playsound(src, 'sound/items/cigs_lighters/cig_light.ogg', 75, 1, -1) damtype = "fire" if(reagents.get_reagent_amount("phoron")) // the phoron explodes when exposed to fire var/datum/effect/effect/system/reagents_explosion/e = new() @@ -182,6 +185,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/clothing/mask/smokable/proc/die(var/nomessage = 0) var/turf/T = get_turf(src) set_light(0) + playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1) STOP_PROCESSING(SSobj, src) if (type_butt) var/obj/item/butt = new type_butt(T) @@ -203,6 +207,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/mob/living/M = loc if (!nomessage) to_chat(M, "Your [name] goes out, and you empty the ash.") + playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1) lit = 0 icon_state = initial(icon_state) item_state = initial(item_state) @@ -225,6 +230,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM to_chat(H, "\The [blocked] is in the way!") return 1 to_chat(H, "You take a drag on your [name].") + playsound(src, 'sound/items/cigs_lighters/inhale.ogg', 50, 0, -1) smoke(5) return 1 return ..() @@ -313,6 +319,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(lit == 1) if(user.a_intent == I_HURT) user.visible_message("[user] drops and treads on the lit [src], putting it out instantly.") + playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1) die(1) else user.visible_message("[user] puts out \the [src].") @@ -406,6 +413,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(lit == 1) if(user.a_intent == I_HURT) user.visible_message("[user] empties the lit [src] on the floor!.") + playsound(src.loc, 'sound/items/cigs_lighters/cig_snuff.ogg', 50, 1) die(1) else user.visible_message("[user] puts out \the [src].") diff --git a/code/game/objects/items/weapons/cosmetics.dm b/code/game/objects/items/weapons/cosmetics.dm index c325600847..9435be7fb3 100644 --- a/code/game/objects/items/weapons/cosmetics.dm +++ b/code/game/objects/items/weapons/cosmetics.dm @@ -8,6 +8,7 @@ slot_flags = SLOT_EARS var/colour = "red" var/open = 0 + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/weapon/lipstick/purple name = "purple lipstick" diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm index 87fb0ffb7d..f44abcb96b 100644 --- a/code/game/objects/items/weapons/extinguisher.dm +++ b/code/game/objects/items/weapons/extinguisher.dm @@ -12,6 +12,7 @@ force = 10 matter = list(DEFAULT_WALL_MATERIAL = 90) attack_verb = list("slammed", "whacked", "bashed", "thunked", "battered", "bludgeoned", "thrashed") + drop_sound = 'sound/items/drop/gascan.ogg' var/spray_particles = 3 var/spray_amount = 10 //units of liquid per particle diff --git a/code/game/objects/items/weapons/gift_wrappaper.dm b/code/game/objects/items/weapons/gift_wrappaper.dm index d342e30863..27c917df28 100644 --- a/code/game/objects/items/weapons/gift_wrappaper.dm +++ b/code/game/objects/items/weapons/gift_wrappaper.dm @@ -13,6 +13,7 @@ icon = 'icons/obj/items.dmi' icon_state = "gift1" item_state = "gift1" + drop_sound = 'sound/items/drop/box.ogg' /obj/item/weapon/a_gift/New() ..() @@ -26,6 +27,7 @@ /obj/item/weapon/gift/attack_self(mob/user as mob) user.drop_item() + playsound(src.loc, 'sound/items/package_unwrap.ogg', 50,1) if(src.gift) user.put_in_active_hand(gift) src.gift.add_fingerprint(user) diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index 6c5f2ced83..763b89c353 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -11,6 +11,7 @@ throw_range = 5 origin_tech = list(TECH_MATERIAL = 1) matter = list(DEFAULT_WALL_MATERIAL = 500) + drop_sound = 'sound/items/drop/accessory.ogg' var/elastic var/dispenser = 0 var/breakouttime = 1200 //Deciseconds = 120s = 2 minutes diff --git a/code/game/objects/items/weapons/id cards/cards.dm b/code/game/objects/items/weapons/id cards/cards.dm index 2b153bab21..6179632f9b 100644 --- a/code/game/objects/items/weapons/id cards/cards.dm +++ b/code/game/objects/items/weapons/id cards/cards.dm @@ -20,6 +20,7 @@ var/associated_account_number = 0 var/list/files = list( ) + drop_sound = 'sound/items/drop/card.ogg' /obj/item/weapon/card/data name = "data disk" diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index 8d445efce2..b2369f995d 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -103,6 +103,7 @@ force_divisor = 0.7 // 10 when wielded with weight 15 (wood) dulled_divisor = 0.75 // Still a club thrown_force_divisor = 1 // as above + drop_sound = 'sound/items/drop/wooden.ogg' /obj/item/weapon/material/kitchen/rollingpin/attack(mob/living/M as mob, mob/living/user as mob) if ((CLUMSY in user.mutations) && prob(50)) diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 74f6fc570f..cf5a706525 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -9,6 +9,7 @@ attack_verb = list("patted", "tapped") force_divisor = 0.25 // 15 when wielded with hardness 60 (steel) thrown_force_divisor = 0.25 // 5 when thrown with weight 20 (steel) + drop_sound = 'sound/items/drop/knife.ogg' /obj/item/weapon/material/butterfly/update_force() if(active) @@ -65,6 +66,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 12000) origin_tech = list(TECH_MATERIAL = 1) attack_verb = list("slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + drop_sound = 'sound/items/drop/knife.ogg' /obj/item/weapon/material/knife/suicide_act(mob/user) var/datum/gender/TU = gender_datums[user.get_visible_gender()] diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 050307eb7e..2db6fea0e6 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -21,6 +21,7 @@ origin_tech = list(TECH_MATERIAL = 2, TECH_COMBAT = 1) attack_verb = list("chopped", "torn", "cut") applies_material_colour = 0 + drop_sound = 'sound/items/drop/axe.ogg' /obj/item/weapon/material/knife/machete/hatchet/unathiknife name = "duelling knife" diff --git a/code/game/objects/items/weapons/material/swords.dm b/code/game/objects/items/weapons/material/swords.dm index f1685510eb..3affd40887 100644 --- a/code/game/objects/items/weapons/material/swords.dm +++ b/code/game/objects/items/weapons/material/swords.dm @@ -9,6 +9,7 @@ edge = 1 attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") hitsound = 'sound/weapons/bladeslice.ogg' + drop_sound = 'sound/items/drop/sword.ogg' /obj/item/weapon/material/sword/handle_shield(mob/user, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack") if(unique_parry_check(user, attacker, damage_source) && prob(50)) diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index 943964f78b..108751654a 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -95,6 +95,7 @@ attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") applies_material_colour = 0 can_cleave = TRUE + drop_sound = 'sound/items/drop/axe.ogg' /obj/item/weapon/material/twohanded/fireaxe/update_held_icon() var/mob/living/M = loc diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index b2ff7dd06e..6b347e0cb6 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -16,11 +16,8 @@ max_storage_space = INVENTORY_STANDARD_SPACE var/flippable = 0 var/side = 0 //0 = right, 1 = left + drop_sound = 'sound/items/drop/backpack.ogg' -/obj/item/weapon/storage/backpack/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (src.use_sound) - playsound(src.loc, src.use_sound, 50, 1, -5) - ..() /obj/item/weapon/storage/backpack/equipped(var/mob/user, var/slot) if (slot == slot_back && src.use_sound) diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index e8cb3135d9..005def5410 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -23,6 +23,7 @@ display_contents_with_number = 0 // UNStABLE AS FuCK, turn on when it stops crashing clients use_to_pickup = 1 slot_flags = SLOT_BELT + drop_sound = 'sound/items/drop/backpack.ogg' // ----------------------------- // Trash bag @@ -33,6 +34,7 @@ icon = 'icons/obj/janitor.dmi' icon_state = "trashbag0" item_state_slots = list(slot_r_hand_str = "trashbag", slot_l_hand_str = "trashbag") + drop_sound = 'sound/items/drop/wrapper.ogg' w_class = ITEMSIZE_LARGE max_w_class = ITEMSIZE_SMALL @@ -59,6 +61,7 @@ desc = "It's a very flimsy, very noisy alternative to a bag." icon = 'icons/obj/trash.dmi' icon_state = "plasticbag" + drop_sound = 'sound/items/drop/wrapper.ogg' w_class = ITEMSIZE_LARGE max_w_class = ITEMSIZE_SMALL diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 8a564be25f..c900e729c5 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -9,6 +9,7 @@ slot_flags = SLOT_BELT attack_verb = list("whipped", "lashed", "disciplined") sprite_sheets = list(SPECIES_TESHARI = 'icons/mob/species/seromi/belt.dmi') + drop_sound = 'sound/items/drop/leather.ogg' var/show_above_suit = 0 diff --git a/code/game/objects/items/weapons/storage/bible.dm b/code/game/objects/items/weapons/storage/bible.dm index d59b5bf3e6..0d97b4f878 100644 --- a/code/game/objects/items/weapons/storage/bible.dm +++ b/code/game/objects/items/weapons/storage/bible.dm @@ -7,6 +7,8 @@ w_class = ITEMSIZE_NORMAL var/mob/affecting = null var/deity_name = "Christ" + use_sound = 'sound/bureaucracy/bookopen.ogg' + drop_sound = 'sound/bureaucracy/bookclose.ogg' /obj/item/weapon/storage/bible/booze name = "bible" diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 669ca244f8..447678a2c9 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -28,6 +28,8 @@ var/foldable = /obj/item/stack/material/cardboard // BubbleWrap - if set, can be folded (when empty) into a sheet of cardboard max_w_class = ITEMSIZE_SMALL max_storage_space = INVENTORY_BOX_SPACE + use_sound = 'sound/items/storage/box.ogg' + drop_sound = 'sound/items/drop/box.ogg' // BubbleWrap - A box can be folded up to make card /obj/item/weapon/storage/box/attack_self(mob/user as mob) @@ -50,6 +52,7 @@ return // Now make the cardboard to_chat(user, "You fold [src] flat.") + playsound(src.loc, 'sound/items/storage/boxfold.ogg', 30, 1) new foldable(get_turf(src)) qdel(src) @@ -407,10 +410,15 @@ /obj/item/weapon/storage/box/matches/attackby(obj/item/weapon/flame/match/W as obj, mob/user as mob) if(istype(W) && !W.lit && !W.burnt) - W.lit = 1 - W.damtype = "burn" - W.icon_state = "match_lit" - START_PROCESSING(SSobj, W) + if(prob(25)) + playsound(src.loc, 'sound/items/cigs_lighters/matchstick_lit.ogg', 25, 0, -1) + user.visible_message("[user] manages to light the match on the matchbox.") + W.lit = 1 + W.damtype = "burn" + W.icon_state = "match_lit" + START_PROCESSING(SSprocessing, W) + else + playsound(src.loc, 'sound/items/cigs_lighters/matchstick_hit.ogg', 25, 0, -1) W.update_icon() return diff --git a/code/game/objects/items/weapons/storage/briefcase.dm b/code/game/objects/items/weapons/storage/briefcase.dm index 4c8a631fa3..3d24c6dd0a 100644 --- a/code/game/objects/items/weapons/storage/briefcase.dm +++ b/code/game/objects/items/weapons/storage/briefcase.dm @@ -8,6 +8,8 @@ w_class = ITEMSIZE_LARGE max_w_class = ITEMSIZE_NORMAL max_storage_space = ITEMSIZE_COST_NORMAL * 4 + use_sound = 'sound/items/storage/briefcase.ogg' + drop_sound = 'sound/items/drop/backpack.ogg' /obj/item/weapon/storage/briefcase/clutch name = "clutch purse" diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm index 2fd85ec7c2..d1466844a5 100644 --- a/code/game/objects/items/weapons/storage/firstaid.dm +++ b/code/game/objects/items/weapons/storage/firstaid.dm @@ -15,7 +15,12 @@ throw_speed = 2 throw_range = 8 max_storage_space = ITEMSIZE_COST_SMALL * 7 // 14 +<<<<<<< HEAD // var/list/icon_variety // VOREStation edit +======= + var/list/icon_variety + drop_sound = 'sound/items/drop/box.ogg' +>>>>>>> 22e28f2... Merge pull request #6804 from Cerebulon/bigsounds /obj/item/weapon/storage/firstaid/Initialize() . = ..() @@ -173,13 +178,14 @@ desc = "It's an airtight container for storing medication." icon_state = "pill_canister" icon = 'icons/obj/chemical.dmi' + drop_sound = 'sound/items/drop/pillbottle.ogg' item_state_slots = list(slot_r_hand_str = "contsolid", slot_l_hand_str = "contsolid") w_class = ITEMSIZE_SMALL can_hold = list(/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/dice,/obj/item/weapon/paper) allow_quick_gather = 1 allow_quick_empty = 1 use_to_pickup = 1 - use_sound = null + use_sound = 'sound/items/storage/pillbottle.ogg' max_storage_space = ITEMSIZE_COST_TINY * 14 max_w_class = ITEMSIZE_TINY var/wrapper_color diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm index 9bd4a6c5e2..df775b3cc0 100644 --- a/code/game/objects/items/weapons/storage/secure.dm +++ b/code/game/objects/items/weapons/storage/secure.dm @@ -26,6 +26,7 @@ w_class = ITEMSIZE_NORMAL max_w_class = ITEMSIZE_SMALL max_storage_space = ITEMSIZE_SMALL * 7 + use_sound = 'sound/items/storage/briefcase.ogg' examine(mob/user) if(..(user, 1)) diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm index f400f87bb3..1b25d5e19a 100644 --- a/code/game/objects/items/weapons/storage/storage.dm +++ b/code/game/objects/items/weapons/storage/storage.dm @@ -141,8 +141,8 @@ is_seeing -= user /obj/item/weapon/storage/proc/open(mob/user as mob) - if (src.use_sound && !isobserver(user)) - playsound(src.loc, src.use_sound, 50, 1, -5) + if (use_sound) + playsound(src.loc, src.use_sound, 50, 0, -5) orient2hud(user) if (user.s_active) diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index 9ce324c44e..d23a5e2d69 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -14,6 +14,8 @@ max_storage_space = ITEMSIZE_COST_SMALL * 7 //enough to hold all starting contents origin_tech = list(TECH_COMBAT = 1) attack_verb = list("robusted") + use_sound = 'sound/items/storage/toolbox.ogg' + drop_sound = 'sound/items/drop/metalboots.ogg' /obj/item/weapon/storage/toolbox/emergency name = "emergency toolbox" diff --git a/code/game/objects/items/weapons/surgery_tools.dm b/code/game/objects/items/weapons/surgery_tools.dm index 418c0a789a..e5580082a1 100644 --- a/code/game/objects/items/weapons/surgery_tools.dm +++ b/code/game/objects/items/weapons/surgery_tools.dm @@ -30,6 +30,7 @@ icon_state = "retractor" matter = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 5000) origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) + drop_sound = 'sound/items/drop/scrap.ogg' /* * Hemostat @@ -41,6 +42,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 2500) origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) attack_verb = list("attacked", "pinched") + drop_sound = 'sound/items/drop/scrap.ogg' /* * Cautery @@ -52,6 +54,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 5000, "glass" = 2500) origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) attack_verb = list("burnt") + drop_sound = 'sound/items/drop/scrap.ogg' /* * Surgical Drill @@ -66,6 +69,7 @@ w_class = ITEMSIZE_NORMAL origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) attack_verb = list("drilled") + drop_sound = 'sound/items/drop/accessory.ogg' suicide_act(mob/user) var/datum/gender/TU = gender_datums[user.get_visible_gender()] @@ -91,6 +95,7 @@ origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) matter = list(DEFAULT_WALL_MATERIAL = 10000, "glass" = 5000) attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + drop_sound = 'sound/items/drop/knife.ogg' suicide_act(mob/user) var/datum/gender/TU = gender_datums[user.get_visible_gender()] @@ -145,6 +150,7 @@ desc = "For heavy duty cutting." icon_state = "saw3" hitsound = 'sound/weapons/circsawhit.ogg' + drop_sound = 'sound/items/drop/accessory.ogg' force = 15.0 w_class = ITEMSIZE_NORMAL throwforce = 9.0 @@ -176,6 +182,7 @@ icon_state = "bone-gel" force = 0 throwforce = 1.0 + drop_sound = 'sound/items/drop/bottle.ogg' /obj/item/weapon/surgical/FixOVein name = "FixOVein" @@ -185,6 +192,7 @@ throwforce = 1.0 origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 3) var/usage_amount = 10 + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/weapon/surgical/bonesetter name = "bone setter" @@ -195,6 +203,7 @@ throw_speed = 3 throw_range = 5 attack_verb = list("attacked", "hit", "bludgeoned") + drop_sound = 'sound/items/drop/scrap.ogg' /obj/item/weapon/surgical/bone_clamp name = "bone clamp" diff --git a/code/game/objects/items/weapons/swords_axes_etc.dm b/code/game/objects/items/weapons/swords_axes_etc.dm index 06ab7c5939..e000496f28 100644 --- a/code/game/objects/items/weapons/swords_axes_etc.dm +++ b/code/game/objects/items/weapons/swords_axes_etc.dm @@ -8,6 +8,17 @@ /* * Classic Baton */ + +/obj/item/weapon/melee + name = "weapon" + desc = "Murder device." + icon = 'icons/obj/weapons.dmi' + icon_state = "baton" + item_state = "classic_baton" + slot_flags = SLOT_BELT + force = 10 + drop_sound = 'sound/items/drop/metalweapon.ogg' + /obj/item/weapon/melee/classic_baton name = "police baton" desc = "A wooden truncheon for beating criminal scum." diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index 3ab51cd237..4a9b4456e2 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -10,6 +10,7 @@ var/list/global/tank_gauge_cache = list() sprite_sheets = list( SPECIES_TESHARI = 'icons/mob/species/seromi/back.dmi' ) + drop_sound = 'sound/items/drop/gascan.ogg' var/gauge_icon = "indicator_tank" var/last_gauge_pressure diff --git a/code/game/objects/items/weapons/tape.dm b/code/game/objects/items/weapons/tape.dm index 2a3340d71c..62153d440b 100644 --- a/code/game/objects/items/weapons/tape.dm +++ b/code/game/objects/items/weapons/tape.dm @@ -4,6 +4,7 @@ icon = 'icons/obj/bureaucracy.dmi' icon_state = "taperoll" w_class = ITEMSIZE_TINY + drop_sound = 'sound/items/drop/box.ogg' toolspeed = 2 //It is now used in surgery as a not awful, but probably dangerous option, due to speed. @@ -141,6 +142,7 @@ w_class = ITEMSIZE_TINY plane = MOB_PLANE anchored = FALSE + drop_sound = null var/obj/item/weapon/stuck = null diff --git a/code/game/objects/items/weapons/tools/crowbar.dm b/code/game/objects/items/weapons/tools/crowbar.dm index fab0a6fb98..56afaf8219 100644 --- a/code/game/objects/items/weapons/tools/crowbar.dm +++ b/code/game/objects/items/weapons/tools/crowbar.dm @@ -17,6 +17,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 50) attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked") usesound = 'sound/items/crowbar.ogg' + drop_sound = 'sound/items/drop/sword.ogg' toolspeed = 1 /obj/item/weapon/tool/crowbar/is_crowbar() diff --git a/code/game/objects/items/weapons/tools/screwdriver.dm b/code/game/objects/items/weapons/tools/screwdriver.dm index d63692635d..8045445ca3 100644 --- a/code/game/objects/items/weapons/tools/screwdriver.dm +++ b/code/game/objects/items/weapons/tools/screwdriver.dm @@ -15,6 +15,7 @@ throw_range = 5 hitsound = 'sound/weapons/bladeslice.ogg' usesound = 'sound/items/screwdriver.ogg' + drop_sound = 'sound/items/drop/scrap.ogg' matter = list(DEFAULT_WALL_MATERIAL = 75) attack_verb = list("stabbed") sharp = 1 diff --git a/code/game/objects/items/weapons/tools/weldingtool.dm b/code/game/objects/items/weapons/tools/weldingtool.dm index 51f486766a..60ea0103b3 100644 --- a/code/game/objects/items/weapons/tools/weldingtool.dm +++ b/code/game/objects/items/weapons/tools/weldingtool.dm @@ -37,6 +37,7 @@ var/burned_fuel_for = 0 // Keeps track of how long the welder's been on, used to gradually empty the welder if left one, without RNG. var/always_process = FALSE // If true, keeps the welder on the process list even if it's off. Used for when it needs to regenerate fuel. toolspeed = 1 + drop_sound = 'sound/items/drop/scrap.ogg' /obj/item/weapon/weldingtool/Initialize() . = ..() diff --git a/code/game/objects/items/weapons/tools/wirecutters.dm b/code/game/objects/items/weapons/tools/wirecutters.dm index 4cfc99487c..28e9e8f6cf 100644 --- a/code/game/objects/items/weapons/tools/wirecutters.dm +++ b/code/game/objects/items/weapons/tools/wirecutters.dm @@ -17,6 +17,7 @@ attack_verb = list("pinched", "nipped") hitsound = 'sound/items/wirecutter.ogg' usesound = 'sound/items/wirecutter.ogg' + drop_sound = 'sound/items/drop/knife.ogg' sharp = 1 edge = 1 toolspeed = 1 diff --git a/code/game/objects/items/weapons/tools/wrench.dm b/code/game/objects/items/weapons/tools/wrench.dm index 3f02a2f8b3..89a51cf217 100644 --- a/code/game/objects/items/weapons/tools/wrench.dm +++ b/code/game/objects/items/weapons/tools/wrench.dm @@ -15,6 +15,7 @@ attack_verb = list("bashed", "battered", "bludgeoned", "whacked") usesound = 'sound/items/ratchet.ogg' toolspeed = 1 + drop_sound = 'sound/items/drop/sword.ogg' /obj/item/weapon/tool/wrench/is_wrench() return TRUE diff --git a/code/game/objects/items/weapons/towels.dm b/code/game/objects/items/weapons/towels.dm index 0c433a63a0..ba1b662ebb 100644 --- a/code/game/objects/items/weapons/towels.dm +++ b/code/game/objects/items/weapons/towels.dm @@ -8,6 +8,7 @@ attack_verb = list("whipped") hitsound = 'sound/weapons/towelwhip.ogg' desc = "A soft cotton towel." + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/weapon/towel/attack_self(mob/living/user as mob) user.visible_message(text("[] uses [] to towel themselves off.", user, src)) diff --git a/code/game/objects/items/weapons/trays.dm b/code/game/objects/items/weapons/trays.dm index 231e589a69..48d65ffb16 100644 --- a/code/game/objects/items/weapons/trays.dm +++ b/code/game/objects/items/weapons/trays.dm @@ -14,6 +14,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 3000) var/list/carrying = list() // List of things on the tray. - Doohl var/max_carry = 10 + drop_sound = 'sound/items/trayhit1.ogg' /obj/item/weapon/tray/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob) user.setClickCooldown(user.get_attack_speed(src)) diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm index ea390d52bd..ff982da257 100644 --- a/code/game/objects/items/weapons/weaponry.dm +++ b/code/game/objects/items/weapons/weaponry.dm @@ -9,6 +9,7 @@ throw_range = 4 throwforce = 10 w_class = ITEMSIZE_SMALL + drop_sound = 'sound/items/drop/sword.ogg' suicide_act(mob/user) var/datum/gender/T = gender_datums[user.get_visible_gender()] diff --git a/code/game/objects/items/weapons/weldbackpack.dm b/code/game/objects/items/weapons/weldbackpack.dm index 886f90498a..2f946a5942 100644 --- a/code/game/objects/items/weapons/weldbackpack.dm +++ b/code/game/objects/items/weapons/weldbackpack.dm @@ -9,6 +9,7 @@ var/obj/item/weapon/nozzle = null //Attached welder, or other spray device. var/nozzle_type = /obj/item/weapon/weldingtool/tubefed var/nozzle_attached = 0 + drop_sound = 'sound/items/drop/backpack.ogg' /obj/item/weapon/weldpack/Initialize() . = ..() diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index a2f0606ef4..9f1af1cf1b 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -16,6 +16,7 @@ LINEN BINS throw_speed = 1 throw_range = 2 w_class = ITEMSIZE_SMALL + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/weapon/bedsheet/attack_self(mob/user as mob) user.drop_item() diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index 41a7c0fd28..995bf4eece 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -3,6 +3,7 @@ desc = "A folded membrane which rapidly expands into a large cubical shape on activation." icon = 'icons/obj/inflatable.dmi' icon_state = "folded_wall" + drop_sound = 'sound/items/drop/rubber.ogg' w_class = ITEMSIZE_NORMAL var/deploy_path = /obj/structure/inflatable diff --git a/code/game/objects/structures/stool_bed_chair_nest/bed.dm b/code/game/objects/structures/stool_bed_chair_nest/bed.dm index 4b25759396..1a9d4e7315 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/bed.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/bed.dm @@ -288,6 +288,7 @@ /obj/structure/bed/roller/Move() ..() + playsound(src, 'sound/effects/roll.ogg', 100, 1) if(has_buckled_mobs()) for(var/A in buckled_mobs) var/mob/living/L = A diff --git a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm index 99f9cd567f..0c03d4fb5d 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/chairs.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/chairs.dm @@ -144,6 +144,7 @@ /obj/structure/bed/chair/office/Move() ..() + playsound(src, 'sound/effects/roll.ogg', 100, 1) if(has_buckled_mobs()) for(var/A in buckled_mobs) var/mob/living/occupant = A diff --git a/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm b/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm index 388909b6a5..8a3902fa1d 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm @@ -93,6 +93,8 @@ /obj/structure/bed/chair/wheelchair/Move() ..() + cut_overlays() + playsound(src, 'sound/effects/roll.ogg', 75, 1) if(has_buckled_mobs()) for(var/A in buckled_mobs) var/mob/living/occupant = A diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 464cf08f7d..4b4d0e90cc 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -384,6 +384,7 @@ return to_chat(usr, "You start washing your hands.") + playsound(loc, 'sound/effects/sink_long.ogg', 75, 1) busy = 1 sleep(40) @@ -406,6 +407,7 @@ if (istype(RG) && RG.is_open_container()) RG.reagents.add_reagent("water", min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this)) user.visible_message("[user] fills \the [RG] using \the [src].","You fill \the [RG] using \the [src].") + playsound(loc, 'sound/effects/sink.ogg', 75, 1) return 1 else if (istype(O, /obj/item/weapon/melee/baton)) diff --git a/code/game/sound.dm b/code/game/sound.dm index cd3b140bd9..a0eaec0819 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -137,6 +137,7 @@ if ("button") soundin = pick('sound/machines/button1.ogg','sound/machines/button2.ogg','sound/machines/button3.ogg','sound/machines/button4.ogg') if ("switch") soundin = pick('sound/machines/switch1.ogg','sound/machines/switch2.ogg','sound/machines/switch3.ogg','sound/machines/switch4.ogg') if ("casing_sound") soundin = pick('sound/weapons/casingfall1.ogg','sound/weapons/casingfall2.ogg','sound/weapons/casingfall3.ogg') +<<<<<<< HEAD //VORESTATION EDIT - vore sounds for better performance if ("hunger_sounds") soundin = pick('sound/vore/growl1.ogg','sound/vore/growl2.ogg','sound/vore/growl3.ogg','sound/vore/growl4.ogg','sound/vore/growl5.ogg') @@ -177,6 +178,9 @@ 'sound/vore/sunesound/prey/death_07.ogg','sound/vore/sunesound/prey/death_08.ogg','sound/vore/sunesound/prey/death_09.ogg', 'sound/vore/sunesound/prey/death_10.ogg') //END VORESTATION EDIT +======= + if ("pickaxe") soundin = pick('sound/weapons/mine/pickaxe1.ogg', 'sound/weapons/mine/pickaxe2.ogg','sound/weapons/mine/pickaxe3.ogg','sound/weapons/mine/pickaxe4.ogg') +>>>>>>> 22e28f2... Merge pull request #6804 from Cerebulon/bigsounds return soundin //Are these even used? diff --git a/code/modules/client/preference_setup/global/setting_datums.dm b/code/modules/client/preference_setup/global/setting_datums.dm index 36123ef700..7f6a5d5f95 100644 --- a/code/modules/client/preference_setup/global/setting_datums.dm +++ b/code/modules/client/preference_setup/global/setting_datums.dm @@ -141,6 +141,12 @@ var/list/_client_preferences_by_type enabled_description = "Audible" disabled_description = "Silent" +/datum/client_preference/drop_sounds + description = "Dropped Item Sounds" + key = "SOUND_DROPPED" + enabled_description = "Enabled" + disabled_description = "Disabled" + /datum/client_preference/mob_tooltips description ="Mob tooltips" key = "MOB_TOOLTIPS" diff --git a/code/modules/client/preferences_toggle_procs.dm b/code/modules/client/preferences_toggle_procs.dm index 1184b9bc29..9b8aa94b66 100644 --- a/code/modules/client/preferences_toggle_procs.dm +++ b/code/modules/client/preferences_toggle_procs.dm @@ -254,6 +254,21 @@ feedback_add_details("admin_verb","TAirPumpNoise") +/client/verb/toggle_drop_sounds() + set name = "Toggle Dropped Item Sounds" + set category = "Preferences" + set desc = "Toggles sounds when items are dropped or thrown." + + var/pref_path = /datum/client_preference/drop_sounds + + toggle_preference(pref_path) + + to_chat(src, "You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear sounds when items are dropped or thrown.") + + SScharacter_setup.queue_preferences_save(prefs) + + feedback_add_details("admin_verb", "TDropSounds") + /client/verb/toggle_safe_firing() set name = "Toggle Gun Firing Intent Requirement" set category = "Preferences" diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index aaa7680572..0a98c263a6 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -1,6 +1,7 @@ /obj/item/clothing name = "clothing" siemens_coefficient = 0.9 + drop_sound = 'sound/items/drop/clothing.ogg' var/list/species_restricted = null //Only these species can wear this kit. var/gunshot_residue //Used by forensics. @@ -530,6 +531,7 @@ if(usr.put_in_hands(holding)) usr.visible_message("\The [usr] pulls a knife out of their boot!") + playsound(get_turf(src), 'sound/weapons/holster/sheathout.ogg', 25) holding = null overlays -= image(icon, "[icon_state]_knife") else diff --git a/code/modules/clothing/ears/ears.dm b/code/modules/clothing/ears/ears.dm index 193ce36232..505a4be004 100644 --- a/code/modules/clothing/ears/ears.dm +++ b/code/modules/clothing/ears/ears.dm @@ -53,6 +53,7 @@ desc = "A delicate golden chain worn by female skrell to decorate their head tails." icon_state = "skrell_chain" item_state_slots = list(slot_r_hand_str = "egg5", slot_l_hand_str = "egg5") + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/clothing/ears/skrell/chain/silver name = "Silver headtail chains" @@ -83,6 +84,7 @@ desc = "Golden metallic bands worn by male skrell to adorn their head tails." icon_state = "skrell_band" item_state_slots = list(slot_r_hand_str = "egg5", slot_l_hand_str = "egg5") + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/clothing/ears/skrell/band/silver name = "Silver headtail bands" diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 2bb43cbcd6..d93c866bd3 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -27,6 +27,7 @@ BLIND // can't see anything var/activation_sound = 'sound/items/goggles_charge.ogg' var/obj/screen/overlay = null var/list/away_planes //Holder for disabled planes + drop_sound = 'sound/items/drop/accessory.ogg' sprite_sheets = list( "Teshari" = 'icons/mob/species/seromi/eyes.dmi', @@ -159,6 +160,7 @@ BLIND // can't see anything item_state_slots = list(slot_r_hand_str = "blindfold", slot_l_hand_str = "blindfold") body_parts_covered = 0 var/eye = null + drop_sound = 'sound/items/drop/gloves.ogg' /obj/item/clothing/glasses/eyepatch/verb/switcheye() set name = "Switch Eyepatch" @@ -340,6 +342,7 @@ BLIND // can't see anything item_state_slots = list(slot_r_hand_str = "blindfold", slot_l_hand_str = "blindfold") flash_protection = FLASH_PROTECTION_MAJOR tint = BLIND + drop_sound = 'sound/items/drop/gloves.ogg' /obj/item/clothing/glasses/sunglasses/blindfold/tape name = "length of tape" diff --git a/code/modules/clothing/gloves/arm_guards.dm b/code/modules/clothing/gloves/arm_guards.dm index 84ebecdc1e..558f855545 100644 --- a/code/modules/clothing/gloves/arm_guards.dm +++ b/code/modules/clothing/gloves/arm_guards.dm @@ -5,6 +5,7 @@ overgloves = 1 punch_force = 3 w_class = ITEMSIZE_NORMAL + drop_sound = 'sound/items/drop/metalshield.ogg' /obj/item/clothing/gloves/arm_guard/mob_can_equip(var/mob/living/carbon/human/H, slot) if(..()) //This will only run if no other problems occured when equiping. diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index a030bc038c..e787bbd893 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -1,9 +1,17 @@ +/obj/item/clothing/gloves + desc = "you aren't supposed to see this." + name = "strange gloves" + icon_state = "black" + item_state = "bgloves" + drop_sound = 'sound/items/drop/gloves.ogg' + /obj/item/clothing/gloves/yellow desc = "These gloves will protect the wearer from electric shock." name = "insulated gloves" icon_state = "yellow" siemens_coefficient = 0 permeability_coefficient = 0.05 + drop_sound = 'sound/items/drop/rubber.ogg' /obj/item/clothing/gloves/fyellow //Cheap Chinese Crap desc = "These gloves are cheap copies of proper insulated gloves. No way this can end badly." @@ -11,6 +19,7 @@ icon_state = "yellow" siemens_coefficient = 1 //Set to a default of 1, gets overridden in initialize() permeability_coefficient = 0.05 + drop_sound = 'sound/items/drop/rubber.ogg' /obj/item/clothing/gloves/fyellow/Initialize() . = ..() diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 94e2d1fef0..b44dc54567 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -56,6 +56,7 @@ permeability_coefficient = 0.01 germ_level = 0 fingerprint_chance = 25 + drop_sound = 'sound/items/drop/rubber.ogg' // var/balloonPath = /obj/item/latexballon //TODO: Make inflating gloves a thing @@ -81,6 +82,7 @@ item_state_slots = list(slot_r_hand_str = "lightbrown", slot_l_hand_str = "lightbrown") permeability_coefficient = 0.05 siemens_coefficient = 0.75 //thick work gloves + drop_sound = 'sound/items/drop/leather.ogg' /obj/item/clothing/gloves/duty desc = "These brown duty gloves are made from a durable synthetic." @@ -109,6 +111,7 @@ siemens_coefficient = 0 permeability_coefficient = 0.05 species_restricted = list("Vox") + drop_sound = 'sound/items/drop/metalboots.ogg' cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE @@ -127,6 +130,7 @@ overgloves = 1 force = 5 punch_force = 5 + drop_sound = 'sound/items/drop/metalboots.ogg' /obj/item/clothing/gloves/ranger var/glovecolor = "white" diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm index 8446b09446..dafce7ad6b 100644 --- a/code/modules/clothing/head/collectable.dm +++ b/code/modules/clothing/head/collectable.dm @@ -1,6 +1,11 @@ //Hat Station 13 +/obj/item/clothing/head/ + name = "hat" + desc = "Apply on head." + drop_sound = 'sound/items/drop/hat.ogg' + /obj/item/clothing/head/collectable name = "collectable hat" desc = "A rare collectable hat." @@ -37,6 +42,7 @@ desc = "What looks like an ordinary paper hat, is actually a rare and valuable collector's edition paper hat. Keep away from water, fire and Librarians." icon_state = "paper" body_parts_covered = 0 + drop_sound = 'sound/items/drop/paper.ogg' /obj/item/clothing/head/collectable/tophat name = "collectable top hat" diff --git a/code/modules/clothing/head/flowercrowns.dm b/code/modules/clothing/head/flowercrowns.dm index 7e13993bcb..15bfe16162 100644 --- a/code/modules/clothing/head/flowercrowns.dm +++ b/code/modules/clothing/head/flowercrowns.dm @@ -36,21 +36,25 @@ desc = "A flower crown weaved with sunflowers." icon_state = "sunflower_crown" body_parts_covered = 0 + drop_sound = 'sound/items/drop/herb.ogg' /obj/item/clothing/head/lavender_crown name = "lavender crown" desc = "A flower crown weaved with lavender." icon_state = "lavender_crown" body_parts_covered = 0 + drop_sound = 'sound/items/drop/herb.ogg' /obj/item/clothing/head/poppy_crown name = "poppy crown" desc = "A flower crown weaved with poppies." icon_state = "poppy_crown" body_parts_covered = 0 + drop_sound = 'sound/items/drop/herb.ogg' /obj/item/clothing/head/rose_crown name = "rose crown" desc = "A flower crown weaved with roses." icon_state = "poppy_crown" body_parts_covered = 0 + drop_sound = 'sound/items/drop/herb.ogg' diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index e7d7cee13d..d3db7a5b17 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -10,6 +10,7 @@ action_button_name = "Toggle Head-light" w_class = ITEMSIZE_NORMAL ear_protection = 1 + drop_sound = 'sound/items/drop/helm.ogg' /obj/item/clothing/head/hardhat/orange icon_state = "hardhat0_orange" diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 37941282aa..2f30326e78 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -14,6 +14,7 @@ siemens_coefficient = 0.7 w_class = ITEMSIZE_NORMAL ear_protection = 1 + drop_sound = 'sound/items/drop/helm.ogg' /obj/item/clothing/head/helmet/solgov name = "\improper Solar Confederate Government helmet" diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 368367c424..1b7544c351 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -17,6 +17,7 @@ desc = "A nice hair pin." slot_flags = SLOT_HEAD | SLOT_EARS body_parts_covered = 0 + drop_sound = 'sound/items/drop/ring.ogg' /obj/item/clothing/head/pin/pink icon_state = "pinkpin" @@ -168,6 +169,7 @@ icon_state = "cardborg_h" flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE body_parts_covered = HEAD|FACE|EYES + drop_sound = 'sound/items/drop/box.ogg' /obj/item/clothing/head/justice name = "justice hat" @@ -420,6 +422,7 @@ desc = "A jeweled headpiece originating in India." icon_state = "maangtikka" body_parts_covered = 0 + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/clothing/head/jingasa name = "jingasa" @@ -427,7 +430,7 @@ icon_state = "jingasa" body_parts_covered = 0 item_state_slots = list(slot_r_hand_str = "taq", slot_l_hand_str = "taq") - + /obj/item/clothing/head/cowl name = "black cowl" desc = "A gold-lined black cowl. It gives off uncomfortable cult vibes, but fancy." diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 318a6687eb..a3da836d7c 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -28,6 +28,7 @@ var/base_state flash_protection = FLASH_PROTECTION_MAJOR tint = TINT_HEAVY + drop_sound = 'sound/items/drop/helm.ogg' /obj/item/clothing/head/welding/attack_self() toggle() @@ -167,6 +168,7 @@ brightness_on = 2 light_overlay = "helmet_light" w_class = ITEMSIZE_NORMAL + drop_sound = 'sound/items/drop/herb.ogg' /* * Kitty ears diff --git a/code/modules/clothing/rings/rings.dm b/code/modules/clothing/rings/rings.dm index 2838de0d2f..c04c757d9d 100644 --- a/code/modules/clothing/rings/rings.dm +++ b/code/modules/clothing/rings/rings.dm @@ -1,3 +1,11 @@ +//Generic Ring + +/obj/item/clothing/ring + name = "generic ring" + desc = "Torus shaped finger decoration." + icon_state = "material" + drop_sound = 'sound/items/drop/ring.ogg' + ///////////////////////////////////////// //Standard Rings /obj/item/clothing/gloves/ring/engagement diff --git a/code/modules/clothing/shoes/boots.dm b/code/modules/clothing/shoes/boots.dm index dd5e7956df..b0ccf41175 100644 --- a/code/modules/clothing/shoes/boots.dm +++ b/code/modules/clothing/shoes/boots.dm @@ -5,11 +5,13 @@ force = 3 can_hold_knife = 1 step_volume_mod = 1.2 + drop_sound = 'sound/items/drop/boots.ogg' /obj/item/clothing/shoes/boots/cowboy name = "cowboy boots" desc = "Lacking a durasteel horse to ride." icon_state = "cowboy" + drop_sound = 'sound/items/drop/leather.ogg' /obj/item/clothing/shoes/boots/cowboy/classic name = "classic cowboy boots" diff --git a/code/modules/clothing/shoes/colour.dm b/code/modules/clothing/shoes/colour.dm index 85ffb970b8..c1f970224e 100644 --- a/code/modules/clothing/shoes/colour.dm +++ b/code/modules/clothing/shoes/colour.dm @@ -1,3 +1,9 @@ +/obj/item/clothing/shoes + name = "shoes" + icon_state = "white" + desc = "A pair of shoes." + drop_sound = 'sound/items/drop/shoes.ogg' + /obj/item/clothing/shoes/black name = "black shoes" icon_state = "black" @@ -38,6 +44,7 @@ name = "leather shoes" desc = "A sturdy pair of leather shoes." icon_state = "leather" + drop_sound = 'sound/items/drop/leather.ogg' /obj/item/clothing/shoes/rainbow name = "rainbow shoes" diff --git a/code/modules/clothing/shoes/leg_guards.dm b/code/modules/clothing/shoes/leg_guards.dm index f90eebdc29..a6eefc1247 100644 --- a/code/modules/clothing/shoes/leg_guards.dm +++ b/code/modules/clothing/shoes/leg_guards.dm @@ -7,6 +7,7 @@ w_class = ITEMSIZE_NORMAL step_volume_mod = 1.3 can_hold_knife = TRUE + drop_sound = 'sound/items/drop/boots.ogg' /obj/item/clothing/shoes/leg_guard/mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) if(..()) //This will only run if no other problems occured when equiping. diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index bb4dd13fdb..4f10a56f9d 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -16,6 +16,7 @@ var/obj/item/clothing/shoes/shoes = null //Undershoes var/mob/living/carbon/human/wearer = null //For shoe procs step_volume_mod = 1.3 + drop_sound = 'sound/items/drop/metalboots.ogg' /obj/item/clothing/shoes/magboots/proc/set_slowdown() slowdown = shoes? max(SHOES_SLOWDOWN, shoes.slowdown): SHOES_SLOWDOWN //So you can't put on magboots to make you walk faster. @@ -36,6 +37,7 @@ set_slowdown() force = 5 if(icon_base) icon_state = "[icon_base]1" + playsound(get_turf(src), 'sound/effects/magnetclamp.ogg', 20) to_chat(user, "You enable the mag-pulse traction system.") user.update_inv_shoes() //so our mob-overlays update user.update_action_buttons() diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index e2a93f1dff..0e492c6d6c 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -24,6 +24,7 @@ item_flags = NOSLIP slowdown = SHOES_SLOWDOWN+1 species_restricted = null + drop_sound = 'sound/items/drop/rubber.ogg' /obj/item/clothing/shoes/dress name = "dress shoes" @@ -98,6 +99,7 @@ force = 0 species_restricted = null w_class = ITEMSIZE_SMALL + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/clothing/shoes/slippers_worn name = "worn bunny slippers" @@ -155,6 +157,7 @@ force = 0 w_class = ITEMSIZE_SMALL species_restricted = null + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/clothing/shoes/boots/ranger var/bootcolor = "white" diff --git a/code/modules/detectivework/tools/rag.dm b/code/modules/detectivework/tools/rag.dm index c7077f1b5e..2e5223420a 100644 --- a/code/modules/detectivework/tools/rag.dm +++ b/code/modules/detectivework/tools/rag.dm @@ -25,6 +25,7 @@ can_be_placed_into = null flags = OPENCONTAINER | NOBLUDGEON unacidable = 0 + drop_sound = 'sound/items/drop/clothing.ogg' var/on_fire = 0 var/burn_time = 20 //if the rag burns for too long it turns to ashes diff --git a/code/modules/economy/cash.dm b/code/modules/economy/cash.dm index 2c9e07361d..b5e4abd488 100644 --- a/code/modules/economy/cash.dm +++ b/code/modules/economy/cash.dm @@ -15,6 +15,7 @@ var/access = list() access = access_crate_cash var/worth = 0 + drop_sound = 'sound/items/drop/paper.ogg' /obj/item/weapon/spacecash/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/spacecash)) @@ -150,6 +151,7 @@ proc/spawn_money(var/sum, spawnloc, mob/living/carbon/human/human_user as mob) name = "charge card" icon_state = "efundcard" desc = "A card that holds an amount of money." + drop_sound = 'sound/items/drop/card.ogg' var/owner_name = "" //So the ATM can set it so the EFTPOS can put a valid name on transactions. attack_self() return //Don't act attackby() return //like actual diff --git a/code/modules/food/food.dm b/code/modules/food/food.dm index 6a0fa1f0ab..c33389ad15 100644 --- a/code/modules/food/food.dm +++ b/code/modules/food/food.dm @@ -8,6 +8,7 @@ possible_transfer_amounts = null volume = 50 //Sets the default container amount for all food items. var/filling_color = "#FFFFFF" //Used by sandwiches. + drop_sound = 'sound/items/drop/food.ogg' /obj/item/weapon/reagent_containers/food/Initialize() . = ..() diff --git a/code/modules/food/food/cans.dm b/code/modules/food/food/cans.dm index 22b2b31125..66a25d8dad 100644 --- a/code/modules/food/food/cans.dm +++ b/code/modules/food/food/cans.dm @@ -2,6 +2,7 @@ volume = 40 //just over one and a half cups amount_per_transfer_from_this = 5 flags = 0 //starts closed + drop_sound = 'sound/items/drop/soda.ogg' //DRINKS @@ -20,6 +21,7 @@ desc = "Introduced to the vending machines by Skrellian request, this water comes straight from the Martian poles." icon_state = "waterbottle" center_of_mass = list("x"=16, "y"=8) + drop_sound = 'sound/items/drop/food.ogg' /obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle/Initialize() . = ..() diff --git a/code/modules/food/food/drinks.dm b/code/modules/food/food/drinks.dm index 76a158a283..d8023dbedc 100644 --- a/code/modules/food/food/drinks.dm +++ b/code/modules/food/food/drinks.dm @@ -5,6 +5,7 @@ name = "drink" desc = "yummy" icon = 'icons/obj/drinks.dmi' + drop_sound = 'sound/items/drop/bottle.ogg' icon_state = null flags = OPENCONTAINER amount_per_transfer_from_this = 5 @@ -116,6 +117,7 @@ icon_state = "milk" item_state = "carton" center_of_mass = list("x"=16, "y"=9) + drop_sound = 'sound/items/drop/box.ogg' /obj/item/weapon/reagent_containers/food/drinks/milk/Initialize() . = ..() @@ -127,6 +129,8 @@ icon_state = "soymilk" item_state = "carton" center_of_mass = list("x"=16, "y"=9) + drop_sound = 'sound/items/drop/box.ogg' + /obj/item/weapon/reagent_containers/food/drinks/soymilk/Initialize() . = ..() reagents.add_reagent("soymilk", 50) @@ -138,6 +142,8 @@ icon_state = "mini-milk" item_state = "carton" center_of_mass = list("x"=16, "y"=9) + drop_sound = 'sound/items/drop/box.ogg' + /obj/item/weapon/reagent_containers/food/drinks/smallmilk/Initialize() . = ..() reagents.add_reagent("milk", 30) @@ -149,6 +155,8 @@ icon_state = "mini-milk_choco" item_state = "carton" center_of_mass = list("x"=16, "y"=9) + drop_sound = 'sound/items/drop/box.ogg' + /obj/item/weapon/reagent_containers/food/drinks/smallchocmilk/Initialize() . = ..() reagents.add_reagent("chocolate_milk", 30) @@ -158,6 +166,8 @@ desc = "Careful, the beverage you're about to enjoy is extremely hot." icon_state = "coffee" center_of_mass = list("x"=15, "y"=10) + drop_sound = 'sound/items/drop/box.ogg' + /obj/item/weapon/reagent_containers/food/drinks/coffee/Initialize() . = ..() reagents.add_reagent("coffee", 30) @@ -209,6 +219,7 @@ possible_transfer_amounts = null volume = 10 center_of_mass = list("x"=16, "y"=12) + drop_sound = 'sound/items/drop/paper.ogg' /obj/item/weapon/reagent_containers/food/drinks/sillycup/Initialize() . = ..() diff --git a/code/modules/food/food/drinks/bottle.dm b/code/modules/food/food/drinks/bottle.dm index 4836fe33b2..28915dff7e 100644 --- a/code/modules/food/food/drinks/bottle.dm +++ b/code/modules/food/food/drinks/bottle.dm @@ -16,7 +16,9 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/Initialize() . = ..() - if(isGlass) unacidable = 1 + if(isGlass) + unacidable = 1 + drop_sound = 'sound/items/drop/bottle.ogg' /obj/item/weapon/reagent_containers/food/drinks/bottle/Destroy() if(rag) diff --git a/code/modules/holodeck/HolodeckObjects.dm b/code/modules/holodeck/HolodeckObjects.dm index 4744693637..ca18f84d6f 100644 --- a/code/modules/holodeck/HolodeckObjects.dm +++ b/code/modules/holodeck/HolodeckObjects.dm @@ -345,6 +345,7 @@ datum/unarmed_attack/holopugilism/unarmed_override(var/mob/living/carbon/human/u name = "basketball" desc = "Here's your chance, do your dance at the Space Jam." w_class = ITEMSIZE_LARGE //Stops people from hiding it in their bags/pockets + drop_sound = 'sound/items/drop/basketball.ogg' /obj/structure/holohoop name = "basketball hoop" diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 1692de2f65..2058fc9e68 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -7,6 +7,7 @@ desc = "Nutritious! Probably." flags = NOCONDUCT slot_flags = SLOT_HOLSTER + drop_sound = 'sound/items/drop/herb.ogg' var/plantname var/datum/seed/seed @@ -361,6 +362,7 @@ var/list/fruit_icon_cache = list() name = "[S.seed_name] slice" desc = "A slice of \a [S.seed_name]. Tasty, probably." + drop_sound = 'sound/items/drop/herb.ogg' var/rind_colour = S.get_trait(TRAIT_PRODUCT_COLOUR) var/flesh_colour = S.get_trait(TRAIT_FLESH_COLOUR) diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 009980bec5..1eb05b7949 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -180,6 +180,7 @@ Book Cart End var/title // The real name of the book. var/carved = 0 // Has the book been hollowed out for use as a secret storage item? var/obj/item/store //What's in the book? + drop_sound = 'sound/bureaucracy/bookclose.ogg' /obj/item/weapon/book/attack_self(var/mob/user as mob) if(carved) @@ -194,7 +195,9 @@ Book Cart End if(src.dat) user << browse("Penned by [author].
" + "[dat]", "window=book") user.visible_message("[user] opens a book titled \"[src.title]\" and begins reading intently.") + playsound(loc, 'sound/bureaucracy/bookopen.ogg', 50, 1) onclose(user, "book") + playsound(loc, 'sound/bureaucracy/bookclose.ogg', 50, 1) else to_chat(user, "This book is completely blank!") @@ -277,6 +280,8 @@ Book Cart End to_chat(user, "You begin to carve out [title].") if(do_after(user, 30)) to_chat(user, "You carve out the pages from [title]! You didn't want to read it anyway.") + playsound(loc, 'sound/bureaucracy/papercrumple.ogg', 50, 1) + new /obj/item/weapon/shreddedp(get_turf(src)) carved = 1 return else diff --git a/code/modules/lore_codex/codex.dm b/code/modules/lore_codex/codex.dm index c1cf1b3200..1af8b128ba 100644 --- a/code/modules/lore_codex/codex.dm +++ b/code/modules/lore_codex/codex.dm @@ -40,8 +40,12 @@ w_class = ITEMSIZE_SMALL root_type = /datum/lore/codex/category/main_news libcategory = "Reference" +<<<<<<< HEAD /* //VORESTATION REMOVAL +======= + drop_sound = 'sound/items/drop/device.ogg' +>>>>>>> 22e28f2... Merge pull request #6804 from Cerebulon/bigsounds // Combines SOP/Regs/Law /obj/item/weapon/book/codex/corp_regs name = "NanoTrasen Regulatory Compendium" diff --git a/code/modules/materials/material_sheets.dm b/code/modules/materials/material_sheets.dm index aaf312e229..67fc816298 100644 --- a/code/modules/materials/material_sheets.dm +++ b/code/modules/materials/material_sheets.dm @@ -17,6 +17,7 @@ var/material/material var/perunit = SHEET_MATERIAL_AMOUNT var/apply_colour //temp pending icon rewrite + drop_sound = 'sound/items/drop/axe.ogg' /obj/item/stack/material/New() ..() @@ -106,17 +107,20 @@ icon_state = "sheet-sandstone" default_type = "sandstone" no_variants = FALSE + drop_sound = 'sound/items/drop/boots.ogg' /obj/item/stack/material/marble name = "marble brick" icon_state = "sheet-marble" default_type = "marble" no_variants = FALSE + drop_sound = 'sound/items/drop/boots.ogg' /obj/item/stack/material/diamond name = "diamond" icon_state = "sheet-diamond" default_type = "diamond" + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/stack/material/uranium name = "uranium" @@ -129,6 +133,7 @@ icon_state = "sheet-phoron" default_type = "phoron" no_variants = FALSE + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/stack/material/plastic name = "plastic" @@ -324,6 +329,7 @@ icon_state = "sheet-wood" default_type = MAT_WOOD strict_color_stacking = TRUE + drop_sound = 'sound/items/drop/wooden.ogg' /obj/item/stack/material/wood/sif name = "alien wooden plank" @@ -340,6 +346,7 @@ w_class = ITEMSIZE_HUGE description_info = "Use inhand to craft things, or use a sharp and edged object on this to convert it into two wooden planks." var/plank_type = /obj/item/stack/material/wood + drop_sound = 'sound/items/drop/wooden.ogg' /obj/item/stack/material/log/sif name = "alien log" @@ -377,6 +384,7 @@ no_variants = FALSE pass_color = TRUE strict_color_stacking = TRUE + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/stack/material/resin name = "resin" @@ -394,6 +402,7 @@ no_variants = FALSE pass_color = TRUE strict_color_stacking = TRUE + drop_sound = 'sound/items/drop/box.ogg' /obj/item/stack/material/snow name = "snow" @@ -415,12 +424,14 @@ no_variants = FALSE pass_color = TRUE strict_color_stacking = TRUE + drop_sound = 'sound/items/drop/clothing.ogg' /obj/item/stack/material/glass name = "glass" icon_state = "sheet-glass" default_type = "glass" no_variants = FALSE + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/stack/material/glass/reinforced name = "reinforced glass" diff --git a/code/modules/mining/coins.dm b/code/modules/mining/coins.dm index b5f0a92103..9da7e05148 100644 --- a/code/modules/mining/coins.dm +++ b/code/modules/mining/coins.dm @@ -12,6 +12,7 @@ slot_flags = SLOT_EARS var/string_attached var/sides = 2 + drop_sound = 'sound/items/drop/ring.ogg' /obj/item/weapon/coin/New() randpixel_xy() diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 404b3fb0d1..3a2f7044e2 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -23,7 +23,7 @@ var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO origin_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1) attack_verb = list("hit", "pierced", "sliced", "attacked") - var/drill_sound = 'sound/weapons/Genhit.ogg' + var/drill_sound = "pickaxe" var/drill_verb = "drilling" sharp = 1 diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index d7f83424ca..d788f9099e 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -156,7 +156,6 @@ var/list/slot_equipment_priority = list( \ //Drops the item in our active hand. TODO: rename this to drop_active_hand or something /mob/proc/drop_item(var/atom/Target) return - /* Removes the object from any slots the mob might have, calling the appropriate icon update proc. Does nothing else. diff --git a/code/modules/mob/living/inventory.dm b/code/modules/mob/living/inventory.dm index 4a651af999..22db034374 100644 --- a/code/modules/mob/living/inventory.dm +++ b/code/modules/mob/living/inventory.dm @@ -33,8 +33,25 @@ //Drops the item in our active hand. TODO: rename this to drop_active_hand or something /mob/living/drop_item(var/atom/Target) - if(hand) return drop_l_hand(Target) - else return drop_r_hand(Target) + var/obj/item/item_dropped = null + + if (hand) + item_dropped = l_hand + . = drop_l_hand(Target) + else + item_dropped = r_hand + . = drop_r_hand(Target) + + if (istype(item_dropped) && !QDELETED(item_dropped) && is_preference_enabled(/datum/client_preference/drop_sounds)) + addtimer(CALLBACK(src, .proc/make_item_drop_sound, item_dropped), 1) + +/mob/proc/make_item_drop_sound(obj/item/I) + if(QDELETED(I)) + return + + if(I.drop_sound) + playsound(I, I.drop_sound, 25, 0, preference = /datum/client_preference/drop_sounds) + //Drops the item in our left hand /mob/living/drop_l_hand(var/atom/Target) diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm index b167c7562b..41b7a0ba39 100644 --- a/code/modules/organs/organ.dm +++ b/code/modules/organs/organ.dm @@ -4,6 +4,7 @@ var/list/organ_cache = list() name = "organ" icon = 'icons/obj/surgery.dmi' germ_level = 0 + drop_sound = 'sound/items/drop/flesh.ogg' // Strings. var/organ_tag = "organ" // Unique identifier. diff --git a/code/modules/paperwork/filingcabinet.dm b/code/modules/paperwork/filingcabinet.dm index d1effe7492..374fb647c5 100644 --- a/code/modules/paperwork/filingcabinet.dm +++ b/code/modules/paperwork/filingcabinet.dm @@ -37,7 +37,9 @@ user.drop_item() P.loc = src icon_state = "[initial(icon_state)]-open" - sleep(5) + flick("[initial(icon_state)]-open",src) + playsound(loc, 'sound/bureaucracy/filingcabinet.ogg', 50, 1) + sleep(40) icon_state = initial(icon_state) updateUsrDialog() else if(P.is_wrench()) @@ -98,9 +100,10 @@ if(istype(P) && (P.loc == src) && src.Adjacent(usr)) usr.put_in_hands(P) updateUsrDialog() - icon_state = "[initial(icon_state)]-open" + flick("[initial(icon_state)]-open",src) + playsound(loc, 'sound/bureaucracy/filingcabinet.ogg', 50, 1) spawn(0) - sleep(5) + sleep(20) icon_state = initial(icon_state) /* diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index c0f4b60b9c..b0341871b9 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -5,6 +5,7 @@ icon_state = "folder" w_class = ITEMSIZE_SMALL pressure_resistance = 2 + drop_sound = 'sound/items/drop/paper.ogg' /obj/item/weapon/folder/blue desc = "A blue folder." diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 9719dca38e..8254c86b5c 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -19,6 +19,7 @@ slot_flags = SLOT_HEAD body_parts_covered = HEAD attack_verb = list("bapped") + drop_sound = 'sound/items/drop/paper.ogg' var/info //What's actually written on the paper. var/info_links //A different version of the paper which includes html links at fields and EOF @@ -183,6 +184,7 @@ //crumple dat paper info = stars(info,85) user.visible_message("\The [user] crumples \the [src] into a ball!") + playsound(src, 'sound/bureaucracy/papercrumple.ogg', 50, 1) icon_state = "scrap" return user.examinate(src) @@ -374,6 +376,7 @@ user.visible_message("[user] holds \the [P] up to \the [src], it looks like [TU.hes] trying to burn it!", \ "You hold \the [P] up to \the [src], burning it slowly.") + playsound(src.loc, 'sound/bureaucracy/paperburn.ogg', 50, 1) spawn(20) if(get_dist(src, user) < 2 && user.get_active_hand() == P && P.lit) @@ -467,6 +470,8 @@ usr << browse("[name][info_links][stamps]", "window=[name]") // Update the window + playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 10) + update_icon() /obj/item/weapon/paper/get_worn_icon_state(var/slot_name) @@ -579,6 +584,7 @@ stamped += P.type overlays += stampoverlay + playsound(src, 'sound/bureaucracy/stamp.ogg', 50, 1) to_chat(user, "You stamp the paper with your rubber stamp.") else if(istype(P, /obj/item/weapon/flame)) diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm index 8e0e4bff97..43b1a8c36d 100644 --- a/code/modules/paperwork/paper_bundle.dm +++ b/code/modules/paperwork/paper_bundle.dm @@ -12,6 +12,7 @@ layer = MOB_LAYER pressure_resistance = 1 attack_verb = list("bapped") + drop_sound = 'sound/items/drop/paper.ogg' var/page = 1 // current page var/list/pages = list() // Ordered list of pages as they are to be displayed. Can be different order than src.contents. diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index c657fcc44c..9ea7c5432d 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -23,6 +23,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 10) var/colour = "black" //what colour the ink is! pressure_resistance = 2 + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/weapon/pen/attack_self(var/mob/user) to_chat(user, "Click.") diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index d3bffc0c92..4b86bc9a9a 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -515,6 +515,7 @@ obj/structure/cable/proc/cableColor(var/colorC) item_state = "coil" attack_verb = list("whipped", "lashed", "disciplined", "flogged") stacktype = /obj/item/stack/cable_coil + drop_sound = 'sound/items/drop/accessory.ogg' /obj/item/stack/cable_coil/cyborg name = "cable coil synthesizer" diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm index 07b307090e..4ac7144069 100644 --- a/code/modules/projectiles/ammunition.dm +++ b/code/modules/projectiles/ammunition.dm @@ -8,6 +8,7 @@ throwforce = 1 w_class = ITEMSIZE_TINY preserve_item = 1 + drop_sound = 'sound/items/drop/ring.ogg' var/leaves_residue = 1 var/caliber = "" //Which kind of guns it can be loaded into diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 8f1c01be21..55b2b2844b 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -49,6 +49,7 @@ origin_tech = list(TECH_COMBAT = 1) attack_verb = list("struck", "hit", "bashed") zoomdevicename = "scope" + drop_sound = 'sound/items/drop/gun.ogg' var/automatic = 0 var/burst = 1 diff --git a/code/modules/reagents/dispenser/dispenser2.dm b/code/modules/reagents/dispenser/dispenser2.dm index b6dff6a3ea..17da8452de 100644 --- a/code/modules/reagents/dispenser/dispenser2.dm +++ b/code/modules/reagents/dispenser/dispenser2.dm @@ -160,6 +160,7 @@ var/label = href_list["dispense"] if(cartridges[label] && container && container.is_open_container()) var/obj/item/weapon/reagent_containers/chem_disp_cartridge/C = cartridges[label] + playsound(src.loc, 'sound/machines/reagent_dispense.ogg', 25, 1) C.reagents.trans_to(container, amount) else if(href_list["ejectBeaker"]) diff --git a/code/modules/reagents/reagent_containers/blood_pack.dm b/code/modules/reagents/reagent_containers/blood_pack.dm index fe6ddb87dc..9611460f21 100644 --- a/code/modules/reagents/reagent_containers/blood_pack.dm +++ b/code/modules/reagents/reagent_containers/blood_pack.dm @@ -21,6 +21,7 @@ icon = 'icons/obj/bloodpack.dmi' icon_state = "empty" item_state = "bloodpack_empty" + drop_sound = 'sound/items/drop/food.ogg' volume = 200 var/label_text = "" diff --git a/code/modules/reagents/reagent_containers/dropper.dm b/code/modules/reagents/reagent_containers/dropper.dm index ee551696cf..da0205f9ea 100644 --- a/code/modules/reagents/reagent_containers/dropper.dm +++ b/code/modules/reagents/reagent_containers/dropper.dm @@ -11,6 +11,7 @@ w_class = ITEMSIZE_TINY slot_flags = SLOT_EARS volume = 5 + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/weapon/reagent_containers/dropper/examine(var/mob/user) if(!..(user, 2)) diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 5ca47a6d3b..82a6f7b97a 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -7,6 +7,7 @@ icon = 'icons/obj/chemical.dmi' icon_state = null item_state = "pill" + drop_sound = 'sound/items/drop/food.ogg' var/base_state = "pill" diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index c5764ee8fe..6d9becfbc6 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -25,6 +25,7 @@ var/visible_name = "a syringe" var/time = 30 var/drawing = 0 + drop_sound = 'sound/items/drop/glass.ogg' /obj/item/weapon/reagent_containers/syringe/on_reagent_change() update_icon() diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm index 47adce6373..ee4285330f 100755 --- a/code/modules/recycling/sortingmachinery.dm +++ b/code/modules/recycling/sortingmachinery.dm @@ -18,6 +18,7 @@ unwrap() proc/unwrap() + playsound(loc, 'sound/items/package_unwrap.ogg', 50, 1) // Destroy will drop our wrapped object on the turf, so let it. qdel(src) @@ -48,6 +49,7 @@ user.visible_message("\The [user] titles \the [src] with \a [W], marking down: \"[str]\"",\ "You title \the [src]: \"[str]\"",\ "You hear someone scribbling a note.") + playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 20) name = "[name] ([str])" if(!examtext && !nameset) nameset = 1 @@ -67,6 +69,7 @@ user.visible_message("\The [user] labels \the [src] with \a [W], scribbling down: \"[examtext]\"",\ "You label \the [src]: \"[examtext]\"",\ "You hear someone scribbling a note.") + playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 20) return update_icon() @@ -111,6 +114,7 @@ name = "small parcel" icon = 'icons/obj/storage_vr.dmi' //VOREStation Edit icon_state = "deliverycrate3" + drop_sound = 'sound/items/drop/box.ogg' var/obj/item/wrapped = null var/sortTag = null var/examtext = null @@ -155,6 +159,7 @@ user.visible_message("\The [user] titles \the [src] with \a [W], marking down: \"[str]\"",\ "You title \the [src]: \"[str]\"",\ "You hear someone scribbling a note.") + playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 20) name = "[name] ([str])" if(!examtext && !nameset) nameset = 1 @@ -175,6 +180,7 @@ user.visible_message("\The [user] labels \the [src] with \a [W], scribbling down: \"[examtext]\"",\ "You label \the [src]: \"[examtext]\"",\ "You hear someone scribbling a note.") + playsound(src, pick('sound/bureaucracy/pen1.ogg','sound/bureaucracy/pen2.ogg'), 20) return update_icon() @@ -217,6 +223,7 @@ icon_state = "deliveryPaper" w_class = ITEMSIZE_NORMAL var/amount = 25.0 + drop_sound = 'sound/items/drop/wrapper.ogg' afterattack(var/obj/target as obj, mob/user as mob, proximity) @@ -267,6 +274,7 @@ user.visible_message("\The [user] wraps \a [target] with \a [src].",\ "You wrap \the [target], leaving [amount] units of paper on \the [src].",\ "You hear someone taping paper around a small object.") + playsound(loc, 'sound/items/package_wrap.ogg', 50, 1) else if (istype(target, /obj/structure/closet/crate)) var/obj/structure/closet/crate/O = target if (src.amount > 3 && !O.opened) @@ -278,6 +286,7 @@ user.visible_message("\The [user] wraps \a [target] with \a [src].",\ "You wrap \the [target], leaving [amount] units of paper on \the [src].",\ "You hear someone taping paper around a large object.") + playsound(loc, 'sound/items/package_wrap.ogg', 50, 1) else if(src.amount < 3) to_chat(user, "You need more paper.") else if (istype (target, /obj/structure/closet)) @@ -291,6 +300,7 @@ user.visible_message("\The [user] wraps \a [target] with \a [src].",\ "You wrap \the [target], leaving [amount] units of paper on \the [src].",\ "You hear someone taping paper around a large object.") + playsound(loc, 'sound/items/package_wrap.ogg', 50, 1) else if(src.amount < 3) to_chat(user, "You need more paper.") else diff --git a/html/changelogs/Cerebulon - bigsounds.yml b/html/changelogs/Cerebulon - bigsounds.yml new file mode 100644 index 0000000000..0120dce151 --- /dev/null +++ b/html/changelogs/Cerebulon - bigsounds.yml @@ -0,0 +1,37 @@ +################################ +# 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 sounds when dropping/throwing items. Toggleable in preferences." + - soundadd: "Added incidental sounds to several item interactions." diff --git a/sound/bureaucracy/bookclose.ogg b/sound/bureaucracy/bookclose.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b1c769c3d71246c425fb78d27b75ec34cce556ac GIT binary patch literal 21288 zcmb@ucUV(R_bwbo1+f64NG~E)iu4Ym(tGF~=@5!^=_nvdm)?;Q5NXn-D@gAILJ0u@ z>AeOBNzMkJ=l#9k`M&F%f4+Tf_BAtW&6=5et$SuN*+I?5MiX=u^v|`c_%~6zHa2sG z_KK&otGS)qMbVX)C4VJPi|{TJ->;}$)cntNQS%CrgLR9*NW^ge&ubj-ucaq|f}Y)L zTP`(M8+r#jbDc~3^a}L6PkDHs@;>FGXH|1_vU}}n%F1P#Y(gFwU}klAClyYbcvY|w-pR_~Mq`HNJ?(~l_$A3Mk`B6&LhebDn;J^+EP zfr40XM&~Un*bj=>kh4U)eipG)6)vR557+oDasXXE-!S%b8x&c|_~&u+avbzPU!LEfuq1v?aAE!fTS1B|VCwI%=s`iiFhO#k z?kiN>@2j957mi{9uuDa`YEA?-~IK!hZ;_X8lysA zk-z`vKJlMJUEG&Lr@sRF%qWty$d>zvGIv2F7cb;}$yJc$1tj!0;~ufaI`&m^^i|%zQ~{iN?V>lJ&vt1A|F7FxKgsI=`%1#hbzCF8-JIZIB?6kzwAj+9ynAc`qv2;ZU=#$@lbcTQ1<|6fH`5V z0=jMz6K*OK02CL9{GYG4m+=A&gdx*9$v%jHFZR_XEJ1)-@*IK}xBs>TD16BIL!UOB zb}%4vH*M*2(fxGT&yQN^EcHbx>6adK7^GMPe96|E+VMGcIL&QP;dUDIZ_4{#I(})< zC{RYRl5w|_;uWB0H=2fDG^GdB)gMk<{!)J*NPSF5XQ`>z`fKl>uqZOg82l+R57hWL zoertLX$+)JEi<+UZeEoA@8RwKzqri< zL@|c|5XDh7%UNz^BJvPu4cy=fGy$y02K~z@z^U|>vC=mvE=lq}#kH5M5MafBJ8t*! z5DCr5f89fS)Ef7gfO~|OQ_*g zfRR~g3L3)%tYF$!|im(cxOn9vC|C;rMrbtJ- z?xvb6im=uc4)Q=hd@?e8^6Am9S9e9VRoT8sufP=uIPrmL?;1!0pxg5gJio}zBc;3P zUqFtND^Uz0yXe+65_xR zXg(YexDP9=(I@e6?h zr<{iM2TEqa3cYL`3N&6*d(n8c7TE5hhJ9%#(0CCrKnPDQ+&+q@ zliFfH1bW}Xo~?7tAd<6|+M-0j>vH5|K(A^50cR%w$z`uNff~xC9h8cfrhvxb22rIo zl$wgb0PU5FfTgs*riR=NsBzIo4LM+{iyXoUEWbalfargO@T%K(D}v|=fyMa-LuUpb z0b2)oNGCm%JeZiRBgKvQ5tQ8R?(pfxCTQWU5QGzs8s0N4ZcpisE^#-$z;bj%=v zAq1?bzywV)kKh4PfL?+@1W%F{Sg{Dui>T-XD+2Q#94PBd1KI@~7Fp40ps9EP7f@yZ z0ro%mcY!U7?687tqRgaiTPXhL%aFYfAa&dPHqZMEH)39bPj0uL<1@Gdfsk(res0GA zRaTT|$|n;6;tb5omIGA>Gc)CD835a#O#t4_AJ19&Etx>E_`vFwe;?S?yiWjN=%jw3 z2%u~c3B)u|wvqq_hMeLCJg9;70@(Ke=uunr18})T16TlMT^E9t42!?3$xRT5{WY-o ze$%jYd-v%xK+mh7B4Cx^QM|;JGL#(9CV=wG^DG0MRxJ9PO#uJRvN2sq836BGNS_0= zyT}5dDP~?|a}pAs69CHufLtg5I5a`afE@}b15oMw#nrwP1lqlZ5BhwSN=HtZjq(=9 zz*9zZ|IFZ%g3=k|Td%6lMrU{`h<7(YJ1uFKd`RA9S^ii=3O z2(=66|C5CPeYwbzi(N_~Jn#QzEpA_Q9Kr)PxRgTrYyQbX6amITN(ELD0BXYx+y<|M z==p^~K{S)!MB5Zb^vrS?o?HnM2Z7|-E;p6{yDmV#@W#LUOrC=Or2ePuGPV4Vp#Q=- zks`~~7j-k-RDtk+iwAlZ6!j>bH1gVmi!l-au8w?l8UC?~c?p*QC+bi_GlK73L^Lo# zF+qXI=dA4)VPi`KhQjH256A*RT2cYbT#%v~GK(l0U^WZq?4)$t0-yoL1H>mV2~Gkk z@U$0f7b?I&jeu%^V4!B@0uUfoT3>i!1#aZFBXMD+W;w$bfFVU(81#&3Qn+1lRDa&~ z^(787AdoB@FoL`Pcq;KPP5(NM9bo)rNL*wsFZk>JSMa?1zXTz}7sS34s6S_e0yXe2 zoz4)VuK2Iuo+2wW;a^kG3ts-Ca_=Irz@mS{$-gy# z0KCx4`6~b`UdHW(sSA5R@G|@>02;b%{89jZPQdgZ0TeI*^y;qwXz1V6g%uEJ_|l&w ziDc%56uPu;83`$v|MF`dSpNRiwSW9?eMVrO`Nz_~z4-q>`~TSl=u6*i{2!|~sciHV zM4wRK;kx7?8Nj&q6pLtS7J$YEkd$}o&sX#FM-?3^1Qew&zybp_f%C3@Nr+QaEbSn( zh)fLzgV})@6qpa;cb_YA){q%SR4f}n@N@Ek8T2B+%9?{?6(OZdfzRN#TVJCG84y^R4JHyLn6obi0voa;fyxSY;sGLg_~(U+ z^mlT|kO+!8|DI)bH-swVv!>SiMLQRttA7J1Oo1Ndrlu~g?w){dl29Rn@^-|2aws3JSW^eFi*(g8m*B{Ghxn0$m&yTquSU zD1aZjx#Dn>INTc?&K`%e!r`27I0qc=d&a=#FNJCqZ{L>I(>l~THy2TB#o+fALy4@p z)6)U$+kyj3!0F6Pz&nI)5zFzUh-J%O~$ScKD?40R`henRh_r#U@N5Vznp?y>Ip8gE!xsA-f?jyX; zepj?wG$uB51qT{WbRZDnmSPAIF2{qhg6KgLGB*Q1h12wneI>7k#!rp{zK3vl<01pf zFs-9EOSFk=qfij@H1k-A=jXP94~AFXu<+phv`U6hb?cUst;F=MNbR33HIcHNX6N1o z9@rrncY;)Z@*668yR6)=`9z$Pl^-dX0=IJ`X6l!9WL_*rDxOT@COQQlbz503JcQj1 zZKcxMD|GrjX;O*>gLV4dGiZzndPui_`Ojive6!JyrnBC?OZ(lS0?Rv!ad?`-9l6sJ zzdsgxmor#c#vO4)QA&Trwp-)_MH2Mp?s&1!bzSl0JS~{Mzp_r<_L0cH+quR%10j9& zZc6mh;QY2>!9gojxa>TLf-6^hmLXFo%#f|4K4i+)0#EMzD+%`HAFWv769Vheu9ksu z%?B`Kr<386Dn>GGTb5GtA(wkY3u*!%T&T*erVeY^1efCDl~J@6%2Gmz#}M!nbU7x& z$09uYJm9Rv6GEBfnX|nq(L`}h$zfl8wuD|K{tXuz^X!T8GQ5Muc7ABo^zJ*irGfex znuiURD}KJ`d#>SG<)>Fys;jEYLbuf^$9(!Ujn`P;b6vEL)3fw3i_TW4TE#f;V$6!% zp2QPVzk3#elZAV~v`Ymafgh1tF^4>>8;q2HHhkk-jj3EpEk88;ji$x3E3|?Zz2tEq zvc-J~mE=xv$AV=n?fWiYp_0Dh(^pFEa(AwvlLZSA-wAb7UuCwtvk-eV>{zDu#|zz9 z7!R8e>00wiN{3ZrNE-?r1*VYI9?Ejlf^s`j)z!)mP$MQ1- zsxhu|O-3dAT6~*M4k56n;Z5fEgK%%|^0_V}FGw_bIGJaOUyERPX<ji*lhUd8`0_ z-}Z5Nu_)rrN8aYf49vVUy-c_tGvi)Qm&g-3@z|K5?KEZGSpB+GmOEu-I;MLvmJx0* z?AxhnZ%%MAL36wUmf8`=jZcLLI)3=7#_nK$&+UxvA1Z^XAyKqSDKj!Zvftbn)N|(& zEdRYE#lRFA*C%d;pfNgE4Jy;iZ`T+Z-CvxWE~e*mEXj_zYuQ&UgNKX}%w=)RUxI&X zsmb6jmw#xJja;^%mS;k3f!~zaSJD{OH~Mo+&~9Z!3we9*I(XY;%vt7z&S)~BUah4C zNN%PD&SR1_-gR!u3kb@Sa{7`m-)6aIBB2t|@Zlk^EHw%XcggK?!&7J^7KF)c`4+?nLlZMTJr zlXHJ?xxmdwFn6P9s@J&j_o4&Nnas`6+Q68}Ttl0c2sGEvFhLtOO*b+9;QD@GZ z+-rJG`=r;GPE0zo-q+cVoSM6(A%;aKa#toL2Q3fL=+L#gp$ zTF)klY%xBb_F>LecvWEo?S^B%P|lm=Ulr)XBs(s$QA+(rMBK3AP)kDWB1pA12HAzm#oP$o8Di|B5_iKw?XN#5y%o_$h2E)8qn=F`c3ybqi8AC!Y1^cjO4~{cHDwt{I9<=(n`!>pyY)(Yw2#ix);fCUzI8`)Ydi zd?)`+427GIVD{Z;exHEBr4TY^Z6Vd~lS2IAUSVT!h|8$)iM_%M!(78P-*cgXff!i` z9$niJEg?-%Rwd^o48xVHI9G*E%=KDicjU}b>Tk2I`>J?1@Sz+cY&?(-$ua5r;jEO` zyyiOsg^((odmi-c^(T&c3ax#j#Ot}APPxkxTARfP7I(&CogS1is##+3Qf#itF1{SGV%g@4uzU@_Ds3l6)Ji_HLIGp$t(s}tnnqqhyCre?of&yoTj1tHSLZY1l-FAC7Bt=Z;TPu z-rfE=EhX^ItfIx@7i{C$)Mr=F+0pP*yN;qx;rJmkCP8HRa6QgD?Yu}+gD7f*7gz`x6GR&%+A3mTQsAuTpgsCDI@(=&7{^JE@hLt0VyvXyo`k zXIrM0NdMdB9CTQLw<@u(NLaH^(RR-{iCBc}vWCJ>qj}9g@(FCFTsP9>^UNDO{!D%A zox7J>xXBR_G(TGnxsiGX?diV1AhaZe#65`mb7adk$_xo4!1Qb!#nPGvHcQU2x4!2* z8!u0;V-PtX+ougyDo}l@qu*>C$UHdotz?+FQp3rs;(T&6#WthcEGWI4)vvwz_UU}- z;@PM@pE^1tuz_(Nzc{KwwlE&^huXi2cKXwe$S1$d=0Ya>#0~pVvS~ps2Al=($u0?l zbAQt@B5b{#tvVa$#}dme*}Dh+R0EO~rI_SEF*+Q6U6%BBNu|DUIUSd@?gkCxd~!?0 zpJ4sMoI4&ZHmZHon*CL9{M8~(bFa5^f>YoH7AsN?`YR@aq#??L1YdTYj?iBla&?eS z;^z)xeR~~iqupjU#0|4EY4sKG=C3vWr>f1=-~B2O4*j*;N6T-17c;c)Cb{rB7yRs| zpJ92aIB=%q$oRxsB{LINn^GQ%=2;B+wBeaW1(_IA*eT9XG2^LGopD%yBU-v`5FD}0 z>ZtWOPOz&~!lYU>DbL$LdLchLvxWQ~4{2KjJayS!fh7!f%;`3L)PG1lq`Umo*NjWG zwy=?`m}ijF8=(__Lrm%PoBu(IrtJR9sYyrG{omMMU26CtQGHcmr%}n((|1*pejPQU zV=}Q{6yWYKctRR!l!;fC>M`{LH_UtGEC>BN_N$tBx|Y441Ho`;{21F#VWR>+oq^GcqsK}&CQ<8g_|+ky&dOSW3qbe{p2Gb>Y|2Ufr z=CEzOxn=KB&eK|*p8a!0jJh+jsEjtc@6ajO<7Hm03FN< zGGr*Tbog0Yp{JSR0qjh z&&|Vju5_NF{ub1?{%(<3^_q&#M0PIs)anB#&8DC$v&W-p44db~(%Q>4YR$%_vbR@$ z+xi%>$f9jOxFi>l@SMdTXq6;&fW3B}01>#)Pb6EI4|P81b2oc=objT|yKyL>xsWl* z15;@Biy85iL=l_vLU0ZG*(ysUNyZ+^sUj~JpA+`;SKf?XXV&WLK7NVQZzK{@J3^S* z82Q)Sc4^ipAHQvV?ySAxTkp<+lnAM=5cASM0P9Cv;tME6SZW?CPx@GKj@aA za#X(|t3U#|(~)JY>M=9etQQ5N;^viuy=vh

cU8IZcFrrcx1GTg~dZ-YJE+l~Ef5 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 R0Du^pZb=b#OZJGHg9sswhHd}= literal 0 HcmV?d00001 diff --git a/sound/bureaucracy/bookopen.ogg b/sound/bureaucracy/bookopen.ogg new file mode 100644 index 0000000000000000000000000000000000000000..1ce2a8a7b5cd14a7ebffa81362ec461eb889f809 GIT binary patch literal 44310 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 literal 0 HcmV?d00001 diff --git a/sound/bureaucracy/paperburn.ogg b/sound/bureaucracy/paperburn.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7fdec2e8c1beec838e51aa920efc7796d14f4ec2 GIT binary patch literal 86176 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