mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-15 10:04:30 +01:00
Random Name Generation refactor, generate random names based on languages (for species without name lists, like Felinids and Podpeople) (#83021)
## About The Pull Request This PR moves random name generation for species onto their languages. What does this mean? - For species with a predefined name list, such as Lizards and Moths, nothing. - For species without predefined name lists, such as Felinids, their names will now be randomly generated from their language's syllables.   (In the prefs menu:)  Why? - Well, we actually had some dead code that did this. All I did was fix it up and re-enable it. - Generates some pretty believable in-universe names for various languages that are lacking name lists. Obviously defined lists would be preferred, but until they are added, at least. - Moves some stuff off of species, which is always nice. - Also hopefully makes it a tad easier to work with name generation. There's now a standard framework for getting a random name for a mob, and for getting a random name based on a species. Misc: - Adds a generic `species_prototype` global, uses it in a lot of places in prefs code. - Makes `GLOB.species_list` init via the global defines - Deletes Language SS - Alphabetizes some instances of admin tooling using the list of all species IDs - Docs language stuff - Deletes random_skin_tone, it does pretty much nothin ## Changelog 🆑 Melbert refactor: Random Name Generation has been refactored. Report any instances of people having weird (or "Unknown") names. qol: Felinids, Slimepeople, Podpeople, and some other species without defined namelists now automatically generate names based on their primary language(s). qol: More non-human names can be generated in codewords (and other misc. areas) than just lizard names. /🆑
This commit is contained in:
@@ -36,8 +36,7 @@
|
||||
if(forced_name || !iscarbon(spawned_mob))
|
||||
return ..()
|
||||
|
||||
var/datum/species/golem/golem_species = new()
|
||||
forced_name = golem_species.random_name()
|
||||
forced_name = generate_random_name_species_based(spawned_mob.gender, TRUE, species_type = /datum/species/golem)
|
||||
return ..()
|
||||
|
||||
/obj/effect/mob_spawn/ghost_role/human/golem/special(mob/living/new_spawn, mob/mob_possessor)
|
||||
|
||||
@@ -194,9 +194,9 @@
|
||||
/obj/structure/ash_walker_eggshell/Destroy()
|
||||
if(!egg)
|
||||
return ..()
|
||||
var/mob/living/carbon/human/yolk = new /mob/living/carbon/human/(get_turf(src))
|
||||
yolk.fully_replace_character_name(null,random_unique_lizard_name(gender))
|
||||
var/mob/living/carbon/human/yolk = new(get_turf(src))
|
||||
yolk.set_species(/datum/species/lizard/ashwalker)
|
||||
yolk.fully_replace_character_name(null, yolk.generate_random_mob_name(TRUE))
|
||||
yolk.underwear = "Nude"
|
||||
yolk.equipOutfit(/datum/outfit/ashwalker)//this is an authentic mess we're making
|
||||
yolk.update_body()
|
||||
@@ -235,7 +235,7 @@
|
||||
|
||||
/obj/effect/mob_spawn/ghost_role/human/ash_walker/special(mob/living/carbon/human/spawned_human)
|
||||
. = ..()
|
||||
spawned_human.fully_replace_character_name(null,random_unique_lizard_name(gender))
|
||||
spawned_human.fully_replace_character_name(null, spawned_human.generate_random_mob_name(TRUE))
|
||||
to_chat(spawned_human, "<b>Drag the corpses of men and beasts to your nest. It will absorb them to create more of your kind. Invade the strange structure of the outsiders if you must. Do not cause unnecessary destruction, as littering the wastes with ugly wreckage is certain to not gain you favor. Glory to the Necropolis!</b>")
|
||||
|
||||
spawned_human.mind.add_antag_datum(/datum/antagonist/ashwalker, team)
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
if(skin_tone)
|
||||
spawned_human.skin_tone = skin_tone
|
||||
else
|
||||
spawned_human.skin_tone = random_skin_tone()
|
||||
spawned_human.skin_tone = pick(GLOB.skin_tones)
|
||||
spawned_human.update_body(is_creating = TRUE)
|
||||
|
||||
/obj/effect/mob_spawn/proc/name_mob(mob/living/spawned_mob, forced_name)
|
||||
|
||||
Reference in New Issue
Block a user