mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-17 10:03:50 +01:00
Surgery sounds 2: Now with volume mixer! (#26884)
* fuck it * these too * ooops * i did it again * moved some vars around * updates generics * rematch * oh shit i think this needs a break * agh * wall * updates comment * compile after 2 years * this might break things * typo fix * restores surgery sound to default * Misplaced thingy * support for some new ghetto surgery changes * organ2 * Update code/modules/surgery/bones.dm Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Signed-off-by: Bm0n <92271472+Bm0n@users.noreply.github.com> * Update code/modules/surgery/surgery.dm Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Signed-off-by: Bm0n <92271472+Bm0n@users.noreply.github.com> * review change --------- Signed-off-by: Bm0n <92271472+Bm0n@users.noreply.github.com> Co-authored-by: Bmon <no@email.com> Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
This commit is contained in:
@@ -12,13 +12,14 @@
|
||||
#define CHANNEL_RADIO_NOISE 1014 // radio headset noise
|
||||
#define CHANNEL_BOSS_MUSIC 1013
|
||||
#define CHANNEL_GENERAL 1012
|
||||
#define CHANNEL_SURGERY_SOUNDS 1011
|
||||
|
||||
#define USER_VOLUME(M, C) M?.client?.prefs.get_channel_volume(C)
|
||||
|
||||
//THIS SHOULD ALWAYS BE THE LOWEST ONE!
|
||||
//KEEP IT UPDATED
|
||||
|
||||
#define CHANNEL_HIGHEST_AVAILABLE 1011
|
||||
#define CHANNEL_HIGHEST_AVAILABLE 1010
|
||||
|
||||
#define MAX_INSTRUMENT_CHANNELS (128 * 6)
|
||||
|
||||
|
||||
@@ -1971,6 +1971,8 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new)
|
||||
return "Radio Noise"
|
||||
if(CHANNEL_BOSS_MUSIC)
|
||||
return "Boss Music"
|
||||
if(CHANNEL_SURGERY_SOUNDS)
|
||||
return "Surgery Sounds"
|
||||
|
||||
/proc/slot_bitfield_to_slot(input_slot_flags) // Kill off this garbage ASAP; slot flags and clothing flags should be IDENTICAL. GOSH DARN IT. Doesn't work with ears or pockets, either.
|
||||
switch(input_slot_flags)
|
||||
|
||||
@@ -53,6 +53,8 @@
|
||||
/datum/surgery_step/internal/extract_organ
|
||||
name = "remove heart"
|
||||
accept_hand = 1
|
||||
preop_sound = 'sound/surgery/organ1.ogg'
|
||||
success_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 32
|
||||
var/obj/item/organ/internal/IC = null
|
||||
|
||||
@@ -86,6 +88,8 @@
|
||||
/datum/surgery_step/internal/gland_insert
|
||||
name = "insert gland"
|
||||
allowed_tools = list(/obj/item/organ/internal/heart/gland = 100)
|
||||
preop_sound = 'sound/surgery/organ2.ogg'
|
||||
success_sound = 'sound/surgery/organ1.ogg'
|
||||
time = 32
|
||||
|
||||
/datum/surgery_step/internal/gland_insert/begin_step(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
|
||||
@@ -87,7 +87,8 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts
|
||||
"1016" = 100, // CHANNEL_FIREALARM
|
||||
"1015" = 100, // CHANNEL_ASH_STORM
|
||||
"1014" = 100, // CHANNEL_RADIO_NOISE
|
||||
"1013" = 100 // CHANNEL_BOSS_MUSIC
|
||||
"1013" = 100, // CHANNEL_BOSS_MUSIC
|
||||
"1011" = 100 // CHANNEL_SURGERY_SOUNDS
|
||||
)
|
||||
/// The volume mixer save timer handle. Used to debounce the DB call to save, to avoid spamming.
|
||||
var/volume_mixer_saving = null
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
/datum/surgery_step/extract_bio_chip
|
||||
name = "extract bio-chip"
|
||||
allowed_tools = list(TOOL_HEMOSTAT = 100, TOOL_CROWBAR = 65)
|
||||
preop_sound = 'sound/surgery/hemostat1.ogg'
|
||||
time = 6.4 SECONDS
|
||||
repeatable = TRUE
|
||||
var/obj/item/bio_chip/I = null
|
||||
|
||||
@@ -51,6 +51,13 @@
|
||||
TOOL_BONEGEL = 100,
|
||||
TOOL_SCREWDRIVER = 90
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_BONEGEL = 'sound/surgery/organ1.ogg',
|
||||
/obj/item/screwdriver/power = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/screwdriver = 'sound/items/screwdriver.ogg'
|
||||
)
|
||||
|
||||
can_infect = TRUE
|
||||
blood_level = SURGERY_BLOODSPREAD_HANDS
|
||||
|
||||
@@ -93,6 +100,7 @@
|
||||
TOOL_WRENCH = 90
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/hemostat1.ogg'
|
||||
time = 3.2 SECONDS
|
||||
|
||||
/datum/surgery_step/set_bone/begin_step(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
@@ -164,6 +172,13 @@
|
||||
TOOL_BONEGEL = 100,
|
||||
TOOL_SCREWDRIVER = 90
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_BONEGEL = 'sound/surgery/organ1.ogg',
|
||||
/obj/item/screwdriver/power = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/screwdriver = 'sound/items/screwdriver.ogg'
|
||||
)
|
||||
|
||||
can_infect = TRUE
|
||||
blood_level = SURGERY_BLOODSPREAD_HANDS
|
||||
|
||||
|
||||
@@ -151,6 +151,12 @@
|
||||
/obj/item/stack/rods = 60
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_DRILL = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/screwdriver/power = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/pen = 'sound/surgery/organ2.ogg',
|
||||
/obj/item/stack/rods = 'sound/surgery/organ2.ogg'
|
||||
)
|
||||
time = 5.4 SECONDS
|
||||
|
||||
/datum/surgery_step/cavity/make_space/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -183,6 +189,9 @@
|
||||
TOOL_WELDER = 30
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/cautery1.ogg'
|
||||
success_sound = 'sound/surgery/cautery2.ogg'
|
||||
failure_sound = 'sound/items/welder.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/cavity/close_space/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
|
||||
@@ -19,6 +19,10 @@
|
||||
/obj/item/kitchen/knife = 65,
|
||||
/obj/item/shard = 45
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/scalpel1.ogg'
|
||||
success_sound = 'sound/surgery/scalpel2.ogg'
|
||||
failure_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 1.6 SECONDS
|
||||
|
||||
/datum/surgery_step/slime/cut_flesh/begin_step(mob/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
|
||||
@@ -38,6 +42,8 @@
|
||||
/datum/surgery_step/slime/extract_core
|
||||
name = "extract core"
|
||||
allowed_tools = list(TOOL_HEMOSTAT = 100, TOOL_CROWBAR = 100)
|
||||
preop_sound = 'sound/surgery/organ1.ogg'
|
||||
success_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 1.6 SECONDS
|
||||
|
||||
/datum/surgery_step/slime/extract_core/begin_step(mob/user, mob/living/simple_animal/slime/target, target_zone, obj/item/tool)
|
||||
|
||||
@@ -16,6 +16,15 @@
|
||||
TOOL_WIRECUTTER = 35 // Silly goose!
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_SAW = 'sound/surgery/saw.ogg',
|
||||
/obj/item/hatchet = 'sound/surgery/scalpel1.ogg',
|
||||
/obj/item/chainsaw = 'sound/weapons/chainsaw.ogg',
|
||||
/obj/item/butcher_chainsaw = 'sound/weapons/chainsaw.ogg',
|
||||
TOOL_WIRECUTTER = 'sound/surgery/scalpel1.ogg'
|
||||
)
|
||||
|
||||
success_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 5.4 SECONDS
|
||||
|
||||
/datum/surgery_step/open_encased/saw/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -64,6 +73,8 @@
|
||||
TOOL_CROWBAR = 90
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/retractor1.ogg'
|
||||
success_sound = 'sound/surgery/retractor2.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/open_encased/retract/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -113,6 +124,8 @@
|
||||
TOOL_CROWBAR = 90
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/retractor1.ogg'
|
||||
success_sound = 'sound/surgery/retractor2.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/open_encased/close/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -158,6 +171,12 @@
|
||||
TOOL_SCREWDRIVER = 90
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_BONEGEL = 'sound/surgery/organ1.ogg',
|
||||
/obj/item/screwdriver/power = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/screwdriver = 'sound/items/screwdriver.ogg'
|
||||
)
|
||||
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/open_encased/mend/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
|
||||
@@ -23,6 +23,9 @@
|
||||
/obj/item/butcher_chainsaw = 1
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/scalpel1.ogg'
|
||||
success_sound = 'sound/surgery/scalpel2.ogg'
|
||||
failure_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 1.6 SECONDS
|
||||
|
||||
/datum/surgery_step/generic/cut_open/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -67,6 +70,7 @@
|
||||
/obj/item/assembly/mousetrap = 25
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/hemostat1.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
|
||||
@@ -111,6 +115,9 @@
|
||||
/obj/item/kitchen/utensil/fork = 60
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/retractor1.ogg'
|
||||
success_sound = 'sound/surgery/retractor2.ogg'
|
||||
failure_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/generic/retract_skin/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -168,6 +175,9 @@
|
||||
/obj/item/flamethrower = 1 // You make do with what ya got...
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/cautery1.ogg'
|
||||
success_sound = 'sound/surgery/cautery2.ogg'
|
||||
failure_sound = 'sound/items/welder.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/generic/cauterize/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -226,6 +236,15 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/drill = 60,
|
||||
/obj/item/screwdriver = 20
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_DRILL = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/screwdriver/power = 'sound/items/drill_hit.ogg',
|
||||
/obj/item/pickaxe/drill = 'sound/weapons/drill.ogg',
|
||||
/obj/item/mecha_parts/mecha_equipment/drill = 'sound/weapons/drill.ogg',
|
||||
/obj/item/screwdriver = 'sound/items/screwdriver.ogg'
|
||||
)
|
||||
|
||||
time = 3 SECONDS
|
||||
|
||||
/datum/surgery_step/generic/drill/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -264,6 +283,13 @@
|
||||
/obj/item/melee/energy = 75
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_SAW = 'sound/surgery/saw.ogg',
|
||||
/obj/item/hatchet = 'sound/surgery/scalpel1.ogg',
|
||||
/obj/item/melee/arm_blade = 'sound/surgery/scalpel1.ogg'
|
||||
)
|
||||
|
||||
success_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 10 SECONDS
|
||||
|
||||
/datum/surgery_step/generic/amputate/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
|
||||
@@ -182,6 +182,8 @@
|
||||
/obj/item/stack/nanopaste = 100
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/organ1.ogg'
|
||||
|
||||
/datum/surgery_step/internal/manipulate_organs/mend/proc/get_tool_name(obj/item/tool)
|
||||
var/tool_name = "[tool]"
|
||||
if(istype(tool, /obj/item/stack/medical/bruise_pack))
|
||||
@@ -296,6 +298,8 @@
|
||||
/obj/item/kitchen/utensil/fork = 70
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/organ1.ogg'
|
||||
success_sound = 'sound/surgery/organ2.ogg'
|
||||
var/obj/item/organ/internal/extracting = null
|
||||
|
||||
/datum/surgery_step/internal/manipulate_organs/extract/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -390,6 +394,9 @@
|
||||
/obj/item/food/organ = 0 // there for the flavor text
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/organ2.ogg'
|
||||
success_sound = 'sound/surgery/organ1.ogg'
|
||||
|
||||
/datum/surgery_step/internal/manipulate_organs/implant/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
if(istype(tool, /obj/item/food/organ))
|
||||
to_chat(user, "<span class='warning'>[tool] was bitten by someone! It's too damaged to use!</span>")
|
||||
@@ -643,6 +650,9 @@
|
||||
TOOL_CROWBAR = 90
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/retractor1.ogg'
|
||||
success_sound = 'sound/surgery/retractor2.ogg'
|
||||
|
||||
/datum/surgery_step/internal/manipulate_organs/finish/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
var/mob/living/carbon/human/H = target
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
@@ -707,6 +717,15 @@
|
||||
TOOL_WIRECUTTER = 35
|
||||
)
|
||||
|
||||
preop_sound = list(
|
||||
TOOL_SAW = 'sound/surgery/saw.ogg',
|
||||
/obj/item/hatchet = 'sound/surgery/scalpel1.ogg',
|
||||
/obj/item/chainsaw = 'sound/weapons/chainsaw.ogg',
|
||||
/obj/item/butcher_chainsaw = 'sound/weapons/chainsaw.ogg',
|
||||
TOOL_WIRECUTTER = 'sound/surgery/scalpel1.ogg'
|
||||
)
|
||||
|
||||
success_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 5.4 SECONDS
|
||||
|
||||
|
||||
@@ -750,6 +769,9 @@
|
||||
/obj/item/butcher_chainsaw = 1
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/scalpel1.ogg'
|
||||
success_sound = 'sound/surgery/scalpel2.ogg'
|
||||
failure_sound = 'sound/surgery/organ2.ogg'
|
||||
time = 1.6 SECONDS
|
||||
|
||||
/datum/surgery_step/cut_carapace/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -787,6 +809,8 @@
|
||||
/obj/item/kitchen/utensil/fork = 60
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/retractor1.ogg'
|
||||
success_sound = 'sound/surgery/retractor2.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/retract_carapace/begin_step(mob/living/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -838,6 +862,9 @@
|
||||
/obj/item/flamethrower = 1
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/cautery1.ogg'
|
||||
success_sound = 'sound/surgery/cautery2.ogg'
|
||||
failure_sound = 'sound/items/welder.ogg'
|
||||
time = 2.4 SECONDS
|
||||
|
||||
/datum/surgery_step/generic/seal_carapace/proc/zone_name(target_zone)
|
||||
|
||||
@@ -81,6 +81,7 @@
|
||||
can_infect = TRUE
|
||||
blood_level = SURGERY_BLOODSPREAD_HANDS
|
||||
|
||||
preop_sound = 'sound/surgery/organ1.ogg'
|
||||
time = 3.2 SECONDS
|
||||
|
||||
/datum/surgery_step/fix_vein/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -133,6 +134,7 @@
|
||||
can_infect = TRUE
|
||||
blood_level = SURGERY_BLOODSPREAD_HANDS
|
||||
|
||||
preop_sound = 'sound/surgery/organ1.ogg'
|
||||
time = 3.2 SECONDS
|
||||
|
||||
/datum/surgery_step/treat_burns/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
@@ -190,6 +192,9 @@
|
||||
/obj/item/shard = 60
|
||||
)
|
||||
|
||||
preop_sound = 'sound/surgery/scalpel1.ogg'
|
||||
success_sound = 'sound/surgery/retractor2.ogg'
|
||||
failure_sound = 'sound/surgery/organ1.ogg'
|
||||
can_infect = TRUE
|
||||
blood_level = SURGERY_BLOODSPREAD_HANDS
|
||||
|
||||
|
||||
@@ -15,6 +15,10 @@
|
||||
allowed_tools = list(TOOL_SCALPEL = 100, /obj/item/kitchen/knife = 50, /obj/item/wirecutters = 35)
|
||||
time = 6.4 SECONDS
|
||||
|
||||
preop_sound = 'sound/surgery/scalpel1.ogg'
|
||||
success_sound = 'sound/surgery/scalpel2.ogg'
|
||||
failure_sound = 'sound/surgery/organ2.ogg'
|
||||
|
||||
/datum/surgery_step/reshape_face/begin_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
user.visible_message(
|
||||
"[user] begins to alter [target]'s appearance.",
|
||||
|
||||
@@ -197,6 +197,12 @@
|
||||
var/silicons_ignore_prob = FALSE
|
||||
/// How many times this step has been automatically repeated.
|
||||
var/times_repeated = 0
|
||||
/// Sound played when the step is started. Lists or single value can be used for this var as well as tool defines
|
||||
var/preop_sound
|
||||
/// Sound played if the step succeeded. Single value only
|
||||
var/success_sound
|
||||
/// Sound played if the step fails. Single value only
|
||||
var/failure_sound
|
||||
|
||||
// evil infection stuff that will make everyone hate me
|
||||
|
||||
@@ -331,6 +337,8 @@
|
||||
surgery.step_in_progress = FALSE
|
||||
return SURGERY_INITIATE_SUCCESS
|
||||
|
||||
play_preop_sound(user, target, target_zone, tool, surgery)
|
||||
|
||||
if(tool)
|
||||
speed_mod = tool.toolspeed
|
||||
|
||||
@@ -386,8 +394,10 @@
|
||||
|
||||
surgery.step_in_progress = FALSE
|
||||
if(advance)
|
||||
play_success_sound(user, target, target_zone, tool, surgery)
|
||||
return SURGERY_INITIATE_SUCCESS
|
||||
else
|
||||
play_failure_sound(user, target, target_zone, tool, surgery)
|
||||
return SURGERY_INITIATE_FAILURE
|
||||
|
||||
/**
|
||||
@@ -553,3 +563,26 @@
|
||||
for(var/reagent in chems_needed)
|
||||
if(target.reagents.has_reagent(reagent))
|
||||
return TRUE
|
||||
|
||||
/datum/surgery_step/proc/play_preop_sound(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
if(!preop_sound || (islist(preop_sound) && !length(preop_sound)) || ismachineperson(target))
|
||||
return
|
||||
var/sound_file_use
|
||||
if(islist(preop_sound))
|
||||
for(var/typepath in preop_sound)
|
||||
if((ispath(typepath) && istype(tool, typepath)) || ((typepath in GLOB.surgery_tool_behaviors) && istype(tool) && tool.tool_behaviour == typepath))
|
||||
sound_file_use = preop_sound[typepath]
|
||||
break
|
||||
else
|
||||
sound_file_use = preop_sound
|
||||
playsound(get_turf(target), sound_file_use, 75, TRUE, falloff_exponent = 12, falloff_distance = 1, channel = CHANNEL_SURGERY_SOUNDS)
|
||||
|
||||
/datum/surgery_step/proc/play_success_sound(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
if(!success_sound || ismachineperson(target))
|
||||
return
|
||||
playsound(get_turf(target), success_sound, 75, TRUE, falloff_exponent = 12, falloff_distance = 1, channel = CHANNEL_SURGERY_SOUNDS)
|
||||
|
||||
/datum/surgery_step/proc/play_failure_sound(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
||||
if(!failure_sound || ismachineperson(target))
|
||||
return
|
||||
playsound(get_turf(target), failure_sound, 75, TRUE, falloff_exponent = 12, falloff_distance = 1, channel = CHANNEL_SURGERY_SOUNDS)
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user