Merge pull request #6001 from Rykka-Stormheart/shep-dev-spec-fix-2

Species Sounds Hotfix 2
This commit is contained in:
Razgriz
2023-04-01 18:59:39 -07:00
committed by GitHub
6 changed files with 26 additions and 5 deletions

View File

@@ -402,7 +402,9 @@ var/list/species_sound_map = list(
* get_species_sound(H.species.species_sounds_male)["emote"] // If we're male, and want an emote sound gendered correctly. * get_species_sound(H.species.species_sounds_male)["emote"] // If we're male, and want an emote sound gendered correctly.
*/ */
/proc/get_species_sound(var/sounds) /proc/get_species_sound(var/sounds)
return species_sound_map[sounds] if(!islist(species_sound_map[sounds])) // We check here if this list actually has anything in it, or if we're about to return a null index
return null // Shitty failsafe but better than rewriting an entire litany of procs rn when I'm low on time - Rykka // list('modular_chomp/sound/voice/silence.ogg')
return species_sound_map[sounds] // Otherwise, successfully return our sound
/* /*
* The following helper proc will select a species' default sounds - useful for if we're set to "Unset" * The following helper proc will select a species' default sounds - useful for if we're set to "Unset"

View File

@@ -19,8 +19,14 @@
if(ishuman(user) && !check_synthetic(user)) if(ishuman(user) && !check_synthetic(user))
var/mob/living/carbon/human/H = user var/mob/living/carbon/human/H = user
var/vol = H.species.cough_volume var/vol = H.species.cough_volume
var/s = get_species_sound(get_gendered_sound(H))["cough"]
if(!s && !(get_species_sound(H.species.species_sounds) == "None")) // Failsafe, so we always use the default cough/etc sounds. None will cancel out anyways.
if(H.identifying_gender == FEMALE)
s = get_species_sound("Human Female")["cough"]
else // Update this if we ever get herm/etc sounds.
s = get_species_sound("Human Male")["cough"]
return list( return list(
"sound" = get_species_sound(get_gendered_sound(H))["cough"], "sound" = s,
"vol" = vol, "vol" = vol,
"volchannel" = VOLUME_CHANNEL_SPECIES_SOUNDS "volchannel" = VOLUME_CHANNEL_SPECIES_SOUNDS
) )

View File

@@ -12,8 +12,14 @@
var/mob/living/carbon/human/H = user var/mob/living/carbon/human/H = user
// CHOMPEdit Start: Standardize Species Sounds // CHOMPEdit Start: Standardize Species Sounds
var/vol = H.species.sneeze_volume var/vol = H.species.sneeze_volume
var/s = get_species_sound(get_gendered_sound(H))["sneeze"]
if(!s && !(get_species_sound(H.species.species_sounds) == "None")) // Failsafe, so we always use the default sneeze/etc sounds. None will cancel out anyways.
if(H.identifying_gender == FEMALE)
s = get_species_sound("Human Female")["sneeze"]
else // Update this if we ever get herm/etc sounds.
s = get_species_sound("Human Male")["sneeze"]
return list( return list(
"sound" = get_species_sound(get_gendered_sound(H))["sneeze"], "sound" = s,
"vol" = vol, "vol" = vol,
"exr" = 20, "exr" = 20,
"volchannel" = VOLUME_CHANNEL_SPECIES_SOUNDS "volchannel" = VOLUME_CHANNEL_SPECIES_SOUNDS

View File

@@ -31,7 +31,8 @@
if(src.death_sound_override) // Do we override the death sounds from our species list - used by only a few specific mobs. If we do, do the next one instead if(src.death_sound_override) // Do we override the death sounds from our species list - used by only a few specific mobs. If we do, do the next one instead
playsound(src, death_sound_override, 50, 1, 20, volume_channel = VOLUME_CHANNEL_SPECIES_SOUNDS) playsound(src, death_sound_override, 50, 1, 20, volume_channel = VOLUME_CHANNEL_SPECIES_SOUNDS)
else else
playsound(src, pick(get_species_sound(get_gendered_sound(src))["death"]), 50, 1, 20, volume_channel = VOLUME_CHANNEL_SPECIES_SOUNDS) if(!ishuman(src)) // Safety, we're not going to double up on death noises if we're not human.
playsound(src, pick(get_species_sound(get_gendered_sound(src))["death"]), 50, 1, 20, volume_channel = VOLUME_CHANNEL_SPECIES_SOUNDS)
// CHOMPStation Add End // CHOMPStation Add End
. = ..() . = ..()

View File

@@ -14,8 +14,14 @@
var/mob/living/carbon/human/H = user var/mob/living/carbon/human/H = user
// CHOMPEdit: Standardize Species Sounds Getters // CHOMPEdit: Standardize Species Sounds Getters
var/vol = H.species.gasp_volume var/vol = H.species.gasp_volume
var/s = get_species_sound(get_gendered_sound(H))["gasp"]
if(!s && !(get_species_sound(H.species.species_sounds) == "None")) // Failsafe, so we always use the default gasp/etc sounds. None will cancel out anyways.
if(H.identifying_gender == FEMALE)
s = get_species_sound("Human Female")["gasp"]
else // Update this if we ever get herm/etc sounds.
s = get_species_sound("Human Male")["gasp"]
return list( return list(
"sound" = get_species_sound(get_gendered_sound(H))["gasp"], "sound" = s,
"vol" = vol, "vol" = vol,
"volchannel" = VOLUME_CHANNEL_SPECIES_SOUNDS "volchannel" = VOLUME_CHANNEL_SPECIES_SOUNDS
) )

Binary file not shown.