diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index 176bea47fbc..e8421f7c95f 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -20,6 +20,7 @@ Contains: w_class = ITEMSIZE_SMALL throw_speed = 4 throw_range = 20 + surgerysound = 'sound/items/surgery/bonegel.ogg' var/heal_brute = 0 var/heal_burn = 0 var/automatic_charge_overlays = FALSE //Do we handle overlays with base update_icon()? | Stolen from TG egun code diff --git a/code/game/objects/items/stacks/nanopaste.dm b/code/game/objects/items/stacks/nanopaste.dm index 2071cbb49b7..4c11d0aefc0 100644 --- a/code/game/objects/items/stacks/nanopaste.dm +++ b/code/game/objects/items/stacks/nanopaste.dm @@ -10,6 +10,7 @@ icon_state = "tube" origin_tech = list(TECH_MATERIAL = 4, TECH_ENGINEERING = 3) amount = 10 + surgerysound = 'sound/items/surgery/bonegel.ogg' var/list/construction_cost = list(DEFAULT_WALL_MATERIAL = 7000, MATERIAL_GLASS = 7000) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index a89e74ec100..23b05ad3cdd 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -306,6 +306,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM type_butt = /obj/item/trash/cigbutt chem_volume = 30 burn_rate = 0.006 //Lasts ~166 seconds) + surgerysound = 'sound/items/surgery/cautery.ogg' matchmes = "USER lights their NAME with their FLAME." lightermes = "USER manages to light their NAME with FLAME." zippomes = "With a flick of their wrist, USER lights their NAME with their FLAME." @@ -686,6 +687,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/deactivation_sound = 'sound/items/cigs_lighters/cheap_off.ogg' drop_sound = 'sound/items/drop/card.ogg' pickup_sound = 'sound/items/pickup/card.ogg' + surgerysound = 'sound/items/surgery/cautery.ogg' var/last_open = 0 //prevent message spamming. var/last_close = 0 var/flame_light_range = 1 diff --git a/code/game/objects/items/weapons/material/kitchen.dm b/code/game/objects/items/weapons/material/kitchen.dm index f77f7f5915e..ffc87b56bdc 100644 --- a/code/game/objects/items/weapons/material/kitchen.dm +++ b/code/game/objects/items/weapons/material/kitchen.dm @@ -95,6 +95,7 @@ desc = "It's a fork. Sure is pointy." icon_state = "fork" sharp = TRUE + surgerysound = 'sound/items/surgery/hemostat.ogg' /obj/item/material/kitchen/utensil/fork/plastic icon_state = "plastic_fork" diff --git a/code/game/objects/items/weapons/material/knives.dm b/code/game/objects/items/weapons/material/knives.dm index 049a1bdf1ab..194d260729e 100644 --- a/code/game/objects/items/weapons/material/knives.dm +++ b/code/game/objects/items/weapons/material/knives.dm @@ -19,6 +19,7 @@ drop_sound = 'sound/items/drop/knife.ogg' pickup_sound = 'sound/items/pickup/knife.ogg' hitsound = 'sound/weapons/bladeslice.ogg' + surgerysound = 'sound/items/surgery/scalpel.ogg' /obj/item/material/knife/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob, var/target_zone) if(active == 1) diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index ff81e320121..2fc39c6bb69 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -44,6 +44,7 @@ applies_material_colour = 0 drop_sound = 'sound/items/drop/axe.ogg' pickup_sound = 'sound/items/pickup/axe.ogg' + surgerysound = 'sound/items/surgery/hatchet.ogg' /obj/item/material/hatchet/can_woodcut() return TRUE diff --git a/code/game/objects/items/weapons/material/shards.dm b/code/game/objects/items/weapons/material/shards.dm index 15646bf9937..5d5bfca4c94 100644 --- a/code/game/objects/items/weapons/material/shards.dm +++ b/code/game/objects/items/weapons/material/shards.dm @@ -18,6 +18,7 @@ unbreakable = 1 //It's already broken. drops_debris = FALSE drop_sound = 'sound/effects/glass_step.ogg' + surgerysound = 'sound/items/surgery/scalpel.ogg' /obj/item/material/shard/set_material(var/new_material) ..(new_material) diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index 026b9985a6a..e314c1dc624 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -37,6 +37,7 @@ origin_tech = list(TECH_COMBAT = 5) attack_verb = list("chopped", "sliced", "shredded", "slashed", "cut", "ripped") hitsound = 'sound/weapons/bladeslice.ogg' + surgerysound = 'sound/weapons/saw/chainsword.ogg' var/active = 0 can_embed = 0//A chainsword can slice through flesh and bone, and the direction can be reversed if it ever did get stuck diff --git a/code/game/objects/items/weapons/surgery_tools.dm b/code/game/objects/items/weapons/surgery_tools.dm index fdb49e6c00a..5a95dd378bd 100644 --- a/code/game/objects/items/weapons/surgery_tools.dm +++ b/code/game/objects/items/weapons/surgery_tools.dm @@ -26,6 +26,7 @@ desc = "A pair of retractor forceps. Allows careful opening of incisions to reach inside someone." icon_state = "retractor" item_state = "retractor" + surgerysound = 'sound/items/surgery/retractor.ogg' matter = list(DEFAULT_WALL_MATERIAL = 10000, MATERIAL_GLASS = 5000) flags = CONDUCT origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) @@ -38,6 +39,7 @@ desc = "A pair of hemostatic forceps, able to clamp blood vessels shut to stop bleeding during surgery. Its narrow tip also lets it double as a tool for removing things from surgical sites." icon_state = "hemostat" item_state = "hemostat" + surgerysound = 'sound/items/surgery/hemostat.ogg' matter = list(DEFAULT_WALL_MATERIAL = 5000, MATERIAL_GLASS = 2500) flags = CONDUCT origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) @@ -51,6 +53,7 @@ desc = "An electrocautery pen. Uses electrical currents to burn tissue closed, useful for quickly sealing wounds or incisions." icon_state = "cautery" item_state = "cautery" + surgerysound = 'sound/items/surgery/cautery.ogg' matter = list(DEFAULT_WALL_MATERIAL = 5000, MATERIAL_GLASS = 2500) flags = CONDUCT origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 1) @@ -64,6 +67,7 @@ desc = "A drill specialized for surgical use. Capable of creating surgical cavities and safely breaching through Vaurcae carapace for initial incisions." icon_state = "drill" item_state = "drill" + surgerysound = 'sound/items/surgery/surgicaldrill.ogg' hitsound = /singleton/sound_category/drillhit_sound matter = list(DEFAULT_WALL_MATERIAL = 15000, MATERIAL_GLASS = 10000) flags = CONDUCT @@ -82,6 +86,7 @@ desc = "A surgical-grade scalpel with an incredibly sharp blade that keeps its edge. Used in a variety of surgical situations from incisions, to transplants, to debridements." icon_state = "scalpel" item_state = "scalpel" + surgerysound = 'sound/items/surgery/scalpel.ogg' flags = CONDUCT force = 10 sharp = 1 @@ -104,12 +109,14 @@ name = "laser scalpel" desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks basic and could be improved." icon_state = "scalpel_laser1" + surgerysound = 'sound/items/surgery/cautery.ogg' damtype = "fire" /obj/item/surgery/scalpel/laser2 name = "laser scalpel" desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks somewhat advanced." icon_state = "scalpel_laser2" + surgerysound = 'sound/items/surgery/cautery.ogg' damtype = "fire" force = 12 @@ -117,6 +124,7 @@ name = "laser scalpel" desc = "A scalpel augmented with a directed laser, for more precise cutting without blood entering the field. This one looks to be the pinnacle of precision energy cutlery!" icon_state = "scalpel_laser3" + surgerysound = 'sound/items/surgery/cautery.ogg' damtype = "fire" force = 15 @@ -124,6 +132,7 @@ name = "incision management system" desc = "A true extension of the surgeon's body, this marvel instantly and completely prepares an incision allowing for the immediate commencement of therapeutic steps." icon_state = "scalpel_manager" + surgerysound = 'sound/items/surgery/cautery.ogg' force = 7.5 /* @@ -134,6 +143,7 @@ desc = "A reciprocating electric bonesaw. While designed to cut through bone, it's powerful enough to cut limbs and even hardsuits if necessary. Watch your fingers." icon_state = "saw" item_state = "saw" + surgerysound = 'sound/items/surgery/circularsaw.ogg' hitsound = 'sound/weapons/saw/circsawhit.ogg' flags = CONDUCT force = 15 @@ -155,6 +165,7 @@ desc = "A bottle-and-nozzle applicator containing a specialized gel. When applied to bone tissue, it can reinforce and repair breakages and act as a glue to keep bones in place while they heal." icon_state = "bone-gel" item_state = "bone-gel" + surgerysound = 'sound/items/surgery/bonegel.ogg' force = 2 throwforce = 5 drop_sound = 'sound/items/drop/bottle.ogg' @@ -165,6 +176,7 @@ desc = "An advanced automatic surgical instrument that operates with extreme finesse. It can quickly and safely repair and recouple ruptured blood vessels and ligaments using highly elaborate, biodegradable microsutures. It can also be used for transplantations to attach organs to the body." icon_state = "fixovein" item_state = "fixovein" + surgerysound = 'sound/items/surgery/fixovein.ogg' force = 2 throwforce = 5 origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 3) @@ -177,6 +189,7 @@ desc = "A pair of forceps with a screw. It's designed to manipulate bones and hold them together, and is best paired with a bottle of bone gel for mending fractures." icon_state = "bonesetter" item_state = "bonesetter" + surgerysound = 'sound/items/surgery/bonesetter.ogg' force = 8 throwforce = 9 throw_speed = 3 diff --git a/code/game/objects/items/weapons/tape.dm b/code/game/objects/items/weapons/tape.dm index ea25e0eaa66..00be71d4843 100644 --- a/code/game/objects/items/weapons/tape.dm +++ b/code/game/objects/items/weapons/tape.dm @@ -6,6 +6,7 @@ w_class = ITEMSIZE_TINY drop_sound = 'sound/items/drop/cardboardbox.ogg' pickup_sound = 'sound/items/pickup/cardboardbox.ogg' + surgerysound = /singleton/sound_category/rip_sound /obj/item/tape_roll/attack(var/mob/living/carbon/human/H, var/mob/user, var/target_zone) if(istype(H)) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index dab6908db12..e78a7e062a1 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -34,6 +34,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 150) attack_verb = list("bashed", "battered", "bludgeoned", "whacked") usesound = 'sound/items/wrench.ogg' + surgerysound = 'sound/items/surgery/bonesetter.ogg' drop_sound = 'sound/items/drop/wrench.ogg' pickup_sound = 'sound/items/pickup/wrench.ogg' @@ -63,6 +64,7 @@ matter = list(DEFAULT_WALL_MATERIAL = 75) attack_verb = list("stabbed") usesound = 'sound/items/Screwdriver.ogg' + surgerysound = 'sound/items/Screwdriver.ogg' drop_sound = 'sound/items/drop/screwdriver.ogg' pickup_sound = 'sound/items/pickup/screwdriver.ogg' lock_picking_level = 5 @@ -138,6 +140,7 @@ sharp = TRUE edge = TRUE usesound = 'sound/items/Wirecutter.ogg' + surgerysound = 'sound/items/surgery/hemostat.ogg' drop_sound = 'sound/items/drop/wirecutter.ogg' pickup_sound = 'sound/items/pickup/wirecutter.ogg' var/bomb_defusal_chance = 30 // 30% chance to safely defuse a bomb @@ -220,6 +223,7 @@ drop_sound = 'sound/items/drop/weldingtool.ogg' pickup_sound = 'sound/items/pickup/weldingtool.ogg' usesound = 'sound/items/Welder.ogg' + surgerysound = 'sound/items/surgery/cautery.ogg' attack_verb = list("hit", "bludgeoned", "whacked") @@ -692,6 +696,7 @@ drop_sound = 'sound/items/drop/crowbar.ogg' pickup_sound = 'sound/items/pickup/crowbar.ogg' usesound = /singleton/sound_category/crowbar_sound + surgerysound = 'sound/items/surgery/retractor.ogg' origin_tech = list(TECH_ENGINEERING = 1) matter = list(DEFAULT_WALL_MATERIAL = 50) attack_verb = list("attacked", "bashed", "battered", "bludgeoned", "whacked") diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 4b2ae5cc610..e754c5be6d1 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -30,6 +30,8 @@ var/usesound var/toolspeed = 1 + var/surgerysound + /obj/Destroy() STOP_PROCESSING(SSprocessing, src) return ..() diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index 9f666521ccf..1ebfc9c17b4 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -8,6 +8,7 @@ icon_state = "mousetrap" drop_sound = 'sound/items/drop/component.ogg' pickup_sound = 'sound/items/pickup/component.ogg' + surgerysound = 'sound/items/surgery/fixovein.ogg' origin_tech = list(TECH_COMBAT = 1) matter = list(DEFAULT_WALL_MATERIAL = 100) var/armed = FALSE diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 1046bbecfcd..ecc9d49350e 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -20,6 +20,7 @@ origin_tech = list(TECH_MATERIAL = 1, TECH_ENGINEERING = 1) attack_verb = list("hit", "pierced", "sliced", "attacked") hitsound = 'sound/weapons/rapidslice.ogg' + surgerysound = 'sound/weapons/rapidslice.ogg' var/drill_sound = /singleton/sound_category/pickaxe_sound var/drill_verb = "excavating" var/autodrill = 0 //pickaxes must be manually swung to mine, drills can mine rocks via bump diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 0bae312eb55..a9816552464 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -488,6 +488,7 @@ By design, d1 is the smallest direction and d2 is the highest stacktype = /obj/item/stack/cable_coil drop_sound = 'sound/items/drop/accessory.ogg' pickup_sound = 'sound/items/pickup/accessory.ogg' + surgerysound = 'sound/items/surgery/fixovein.ogg' var/static/list/possible_cable_coil_colours = list( "Yellow" = COLOR_YELLOW, "Green" = COLOR_LIME, diff --git a/code/modules/surgery/implant.dm b/code/modules/surgery/implant.dm index 15089f651d9..3ba80101e73 100644 --- a/code/modules/surgery/implant.dm +++ b/code/modules/surgery/implant.dm @@ -62,7 +62,6 @@ "You start making some space inside [target]'s [get_cavity(affected)] cavity with \the [tool]." ) target.custom_pain("The pain in your chest is living hell!",1) affected.cavity = CAVITY_OPEN - playsound(target.loc, 'sound/effects/squelch1.ogg', 25, 1) ..() /singleton/surgery_step/cavity/make_space/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) diff --git a/code/modules/surgery/limb_reattach.dm b/code/modules/surgery/limb_reattach.dm index dd69dfa951e..d0f913ade77 100644 --- a/code/modules/surgery/limb_reattach.dm +++ b/code/modules/surgery/limb_reattach.dm @@ -72,6 +72,7 @@ var/obj/item/organ/external/E = target.get_organ(target_zone) user.visible_message("[user] starts connecting tendons and muscles in [target]'s [E.amputation_point] with [tool].", \ "You start connecting tendons and muscle in [target]'s [E.amputation_point].") + ..() /singleton/surgery_step/limb/connect/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/obj/item/organ/external/E = target.get_organ(target_zone) diff --git a/code/modules/surgery/organs_internal.dm b/code/modules/surgery/organs_internal.dm index a187b880767..35310f5ba52 100644 --- a/code/modules/surgery/organs_internal.dm +++ b/code/modules/surgery/organs_internal.dm @@ -58,6 +58,7 @@ user.visible_message("[user] starts treating damage to [target]'s [I.name] with [tool_name].", \ "You start treating damage to [target]'s [I.name] with [tool_name]." ) target.custom_pain("The pain in your [affected.name] is living hell!",100, affecting = affected) + ..() /singleton/surgery_step/internal/fix_organ/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool) var/tool_name = "\the [tool]" diff --git a/code/modules/surgery/slimes.dm b/code/modules/surgery/slimes.dm index f27ce81525d..5d214c4d7a0 100644 --- a/code/modules/surgery/slimes.dm +++ b/code/modules/surgery/slimes.dm @@ -26,6 +26,7 @@ /singleton/surgery_step/slime/cut_flesh/begin_step(mob/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) user.visible_message("[user] starts cutting through [target]'s flesh with \the [tool].", \ "You start cutting through [target]'s flesh with \the [tool].") + ..() /singleton/surgery_step/slime/cut_flesh/end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) user.visible_message(SPAN_NOTICE("[user] cuts through [target]'s flesh with \the [tool]."), \ @@ -53,6 +54,7 @@ /singleton/surgery_step/slime/cut_innards/begin_step(mob/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) user.visible_message("[user] starts cutting [target]'s silky innards apart with \the [tool].", \ "You start cutting [target]'s silky innards apart with \the [tool].") + ..() /singleton/surgery_step/slime/cut_innards/end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) user.visible_message(SPAN_NOTICE("[user] cuts [target]'s innards apart with \the [tool], exposing the cores."), \ @@ -79,6 +81,7 @@ /singleton/surgery_step/slime/saw_core/begin_step(mob/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) user.visible_message("[user] starts cutting out one of [target]'s cores with \the [tool].", \ "You start cutting out one of [target]'s cores with \the [tool].") + ..() /singleton/surgery_step/slime/saw_core/end_step(mob/living/user, mob/living/carbon/slime/target, target_zone, obj/item/tool) target.cores-- diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index fc1e639f10d..694b470ac06 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -66,6 +66,7 @@ H.bloody_hands(target,0) if(blood_level > 1) H.bloody_body(target,0) + playsound(target.loc, tool.surgerysound, 50, TRUE) return TRUE // does stuff to end the step, which is normally print a message + do whatever this step changes diff --git a/html/changelogs/surgerysound.yml b/html/changelogs/surgerysound.yml new file mode 100644 index 00000000000..d7ceb587300 --- /dev/null +++ b/html/changelogs/surgerysound.yml @@ -0,0 +1,6 @@ +author: Pirouette + +delete-after: True + +changes: + - soundadd: "Added sounds for using tools in surgery, ported from /vg/station." diff --git a/sound/items/surgery/bonegel.ogg b/sound/items/surgery/bonegel.ogg new file mode 100644 index 00000000000..aee49d46ff9 Binary files /dev/null and b/sound/items/surgery/bonegel.ogg differ diff --git a/sound/items/surgery/bonesetter.ogg b/sound/items/surgery/bonesetter.ogg new file mode 100644 index 00000000000..7872f647af8 Binary files /dev/null and b/sound/items/surgery/bonesetter.ogg differ diff --git a/sound/items/surgery/cautery.ogg b/sound/items/surgery/cautery.ogg new file mode 100644 index 00000000000..dccace1cc70 Binary files /dev/null and b/sound/items/surgery/cautery.ogg differ diff --git a/sound/items/surgery/circularsaw.ogg b/sound/items/surgery/circularsaw.ogg new file mode 100644 index 00000000000..ef3ed685d82 Binary files /dev/null and b/sound/items/surgery/circularsaw.ogg differ diff --git a/sound/items/surgery/fixovein.ogg b/sound/items/surgery/fixovein.ogg new file mode 100644 index 00000000000..e0adf10f747 Binary files /dev/null and b/sound/items/surgery/fixovein.ogg differ diff --git a/sound/items/surgery/hatchet.ogg b/sound/items/surgery/hatchet.ogg new file mode 100644 index 00000000000..6e954487f8c Binary files /dev/null and b/sound/items/surgery/hatchet.ogg differ diff --git a/sound/items/surgery/hemostat.ogg b/sound/items/surgery/hemostat.ogg new file mode 100644 index 00000000000..ede98674d7d Binary files /dev/null and b/sound/items/surgery/hemostat.ogg differ diff --git a/sound/items/surgery/retractor.ogg b/sound/items/surgery/retractor.ogg new file mode 100644 index 00000000000..3ea330376b2 Binary files /dev/null and b/sound/items/surgery/retractor.ogg differ diff --git a/sound/items/surgery/scalpel.ogg b/sound/items/surgery/scalpel.ogg new file mode 100644 index 00000000000..4411b700a9a Binary files /dev/null and b/sound/items/surgery/scalpel.ogg differ diff --git a/sound/items/surgery/surgicaldrill.ogg b/sound/items/surgery/surgicaldrill.ogg new file mode 100644 index 00000000000..26e43a9800e Binary files /dev/null and b/sound/items/surgery/surgicaldrill.ogg differ