[Effigy Port] Converts Bloopers/Vocal Barks to a config sided thing (#5288)

## About The Pull Request
Does as the title suggests, I also put the files into proper folders
while I was in there per where they would be on base /tg/ based on where
they were in the Effigy PRs. This is a port of all three of these PRs:
https://github.com/effigy-se/effigy/pulls?q=is%3Apr+is%3Amerged+blooper
## Why It's Good For The Game
This lets us change vocal barks easier, as well as letting us have more
control over how easily and quickly we can remove and add specific ones
if necessary.
## Proof Of Testing
It compiled and ran without any runtimes. I would still highly recommend
test merging this for a few weeks to get everything transferred over.
## Changelog
🆑 xPokee, LT3, TealSeer
refactor: Refactored vocal bloopers to be a config based subsystem.
config: Added all the previous vocal bloopers to the new config, as well
as some new ones, look for them!
/🆑

---------

Co-authored-by: gavla <96078776+shayoki@users.noreply.github.com>
This commit is contained in:
Alexis
2026-03-08 17:39:25 +01:00
committed by GitHub
co-authored by gavla
parent 8ad8af15ff
commit f357393f4e
87 changed files with 384 additions and 853 deletions
-6
View File
@@ -22,12 +22,6 @@
// Snowflake for Ethereals
human.updatehealth()
human.updateappearance(mutcolor_update = TRUE)
// BUBBER EDIT ADDITION BEGIN - Bloopers
human.set_blooper(pick(GLOB.blooper_list))
human.blooper_pitch = BLOOPER_PITCH_RAND(human.gender)
human.blooper_pitch_range = BLOOPER_VARIANCE_RAND
human.blooper_speed = rand(BLOOPER_DEFAULT_MINSPEED, BLOOPER_DEFAULT_MAXSPEED)
// BUBBER EDIT ADDITION END - Bloopers
/**
* Randomizes a human, but produces someone who looks exceedingly average (by most standards).
@@ -575,6 +575,10 @@
new_profile.undershirt_color = target.undershirt_color
new_profile.socks_color = target.socks_color
new_profile.bra_color = target.bra_color
new_profile.blooper = target.blooper
new_profile.blooper_speed = target.blooper_speed
new_profile.blooper_pitch = target.blooper_pitch
new_profile.blooper_pitch_range = target.blooper_pitch_range
new_profile.eye_color_left = target.eye_color_left
new_profile.eye_color_right = target.eye_color_right
new_profile.emissive_eyes = target.emissive_eyes
@@ -584,12 +588,6 @@
new_profile.target_size = target.mob_size
//SKYRAT EDIT ADDITION END
// Hair and facial hair gradients, alongside their colours.
//THE BUBBER EDIT ADDITION BEGIN - Voice Bark
new_profile.blooper_id = target.blooper_id
new_profile.blooper_pitch = target.blooper_pitch
new_profile.blooper_speed = target.blooper_speed
new_profile.blooper_pitch_range = target.blooper_pitch_range
//THE BUBBER EDIT END
// Grab skillchips they have
new_profile.skillchips = target.clone_skillchip_list(TRUE)
@@ -829,6 +827,10 @@
user.undershirt_color = chosen_profile.undershirt_color
user.socks_color = chosen_profile.socks_color
user.bra_color = chosen_profile.bra_color
user.blooper = chosen_profile.blooper
user.blooper_speed = chosen_profile.blooper_speed
user.blooper_pitch = chosen_profile.blooper_pitch
user.blooper_pitch_range = chosen_profile.blooper_pitch_range
user.emissive_eyes = chosen_profile.emissive_eyes
user.dna.mutant_bodyparts = chosen_dna.mutant_bodyparts.Copy()
user.dna.body_markings = chosen_dna.body_markings.Copy()
@@ -970,13 +972,6 @@
//this has to be at the end of the proc or it breaks everything below it, womp womp
user.set_mob_height(chosen_profile.target_body_scaling)
// SKYRAT EDIT END
//THE BUBBER EDIT ADDITION BEGIN - Voice Bark
user.blooper = null
user.blooper_id = chosen_profile.blooper_id
user.blooper_pitch = chosen_profile.blooper_pitch
user.blooper_speed = chosen_profile.blooper_speed
user.blooper_pitch_range = chosen_profile.blooper_pitch_range
//THE BUBBER EDIT END
// Changeling profile themselves. Store a data to store what every DNA instance looked like.
/datum/changeling_profile
/// The name of the profile / the name of whoever this profile source.
@@ -1075,6 +1070,10 @@
new_profile.socks_color = socks_color
new_profile.bra = bra
new_profile.bra_color = bra_color
new_profile.blooper = blooper
new_profile.blooper_speed = blooper_speed
new_profile.blooper_pitch = blooper_pitch
new_profile.blooper_pitch_range = blooper_pitch_range
new_profile.eye_color_left = eye_color_left
new_profile.eye_color_right = eye_color_right
new_profile.emissive_eyes = emissive_eyes