diff --git a/Content.Shared/Humanoid/NamingSystem.cs b/Content.Shared/Humanoid/NamingSystem.cs index 76487ff5228b08..badc6f0d3c21c8 100644 --- a/Content.Shared/Humanoid/NamingSystem.cs +++ b/Content.Shared/Humanoid/NamingSystem.cs @@ -35,6 +35,9 @@ public string GetName(string species, Gender? gender = null) case SpeciesNaming.FirstDashFirst: return Loc.GetString("namepreset-firstdashfirst", ("first1", GetFirstName(speciesProto, gender)), ("first2", GetFirstName(speciesProto, gender))); + case SpeciesNaming.FirstMiddleLast: + return Loc.GetString("namepreset-firstmiddlelast", + ("first", GetFirstName(speciesProto, gender)), ("middle", GetMiddleName(speciesProto)), ("last", GetLastName(speciesProto))); case SpeciesNaming.FirstLast: default: return Loc.GetString("namepreset-firstlast", @@ -58,6 +61,11 @@ public string GetFirstName(SpeciesPrototype speciesProto, Gender? gender = null) } } + public string GetMiddleName(SpeciesPrototype speciesProto) + { + return _random.Pick(_prototypeManager.Index(speciesProto.MiddleNames).Values); + } + public string GetLastName(SpeciesPrototype speciesProto) { return _random.Pick(_prototypeManager.Index(speciesProto.LastNames).Values); diff --git a/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs b/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs index 4c1483ac485bcf..0cd84677830e57 100644 --- a/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs +++ b/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs @@ -87,6 +87,9 @@ public sealed partial class SpeciesPrototype : IPrototype [DataField] public string FemaleFirstNames { get; private set; } = "names_first_female"; + [DataField] + public string MiddleNames { get; private set; } = "names_middle"; + [DataField] public string LastNames { get; private set; } = "names_last"; @@ -127,5 +130,6 @@ public enum SpeciesNaming : byte First, FirstLast, FirstDashFirst, + FirstMiddleLast, TheFirstofLast, } diff --git a/Resources/Audio/Voice/Snail/snail_cough.ogg b/Resources/Audio/Voice/Snail/snail_cough.ogg index 52c436d1daedc3..46ff5cd306912b 100644 Binary files a/Resources/Audio/Voice/Snail/snail_cough.ogg and b/Resources/Audio/Voice/Snail/snail_cough.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_cry.ogg b/Resources/Audio/Voice/Snail/snail_cry.ogg index 2742d12892acc9..aeda1020c33cd8 100644 Binary files a/Resources/Audio/Voice/Snail/snail_cry.ogg and b/Resources/Audio/Voice/Snail/snail_cry.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_deathgasp.ogg b/Resources/Audio/Voice/Snail/snail_deathgasp.ogg index c41ce108c13386..0cbc5d7ed75b7b 100644 Binary files a/Resources/Audio/Voice/Snail/snail_deathgasp.ogg and b/Resources/Audio/Voice/Snail/snail_deathgasp.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_gasp.ogg b/Resources/Audio/Voice/Snail/snail_gasp.ogg index 2291c55d07a13d..63acf451a2e129 100644 Binary files a/Resources/Audio/Voice/Snail/snail_gasp.ogg and b/Resources/Audio/Voice/Snail/snail_gasp.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_laugh.ogg b/Resources/Audio/Voice/Snail/snail_laugh.ogg index 037476a396f09f..a3fceda6626e14 100644 Binary files a/Resources/Audio/Voice/Snail/snail_laugh.ogg and b/Resources/Audio/Voice/Snail/snail_laugh.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_scream.ogg b/Resources/Audio/Voice/Snail/snail_scream.ogg index 1d2a896160a22b..224cfab9713825 100644 Binary files a/Resources/Audio/Voice/Snail/snail_scream.ogg and b/Resources/Audio/Voice/Snail/snail_scream.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_sigh.ogg b/Resources/Audio/Voice/Snail/snail_sigh.ogg index 19a15afeb15e8d..6217be652eabbd 100644 Binary files a/Resources/Audio/Voice/Snail/snail_sigh.ogg and b/Resources/Audio/Voice/Snail/snail_sigh.ogg differ diff --git a/Resources/Audio/Voice/Snail/snail_yawn.ogg b/Resources/Audio/Voice/Snail/snail_yawn.ogg index 76346df3ad382b..9b2c99d7b59110 100644 Binary files a/Resources/Audio/Voice/Snail/snail_yawn.ogg and b/Resources/Audio/Voice/Snail/snail_yawn.ogg differ diff --git a/Resources/Audio/Voice/Talk/snail.ogg b/Resources/Audio/Voice/Talk/snail.ogg index 93e414f5002a8b..b3bf4ee3352165 100644 Binary files a/Resources/Audio/Voice/Talk/snail.ogg and b/Resources/Audio/Voice/Talk/snail.ogg differ diff --git a/Resources/Audio/Voice/Talk/snail_ask.ogg b/Resources/Audio/Voice/Talk/snail_ask.ogg index 3e3b6dc6a9c1a8..f25a7f5c250879 100644 Binary files a/Resources/Audio/Voice/Talk/snail_ask.ogg and b/Resources/Audio/Voice/Talk/snail_ask.ogg differ diff --git a/Resources/Audio/Voice/Talk/snail_exclaim.ogg b/Resources/Audio/Voice/Talk/snail_exclaim.ogg index 118b0be93f84da..0103b0ce9d7cb5 100644 Binary files a/Resources/Audio/Voice/Talk/snail_exclaim.ogg and b/Resources/Audio/Voice/Talk/snail_exclaim.ogg differ diff --git a/Resources/Locale/en-US/species/namepreset.ftl b/Resources/Locale/en-US/species/namepreset.ftl index 5a42c87b78e890..8ba682df6d67f8 100644 --- a/Resources/Locale/en-US/species/namepreset.ftl +++ b/Resources/Locale/en-US/species/namepreset.ftl @@ -2,3 +2,4 @@ namepreset-first = {$first} namepreset-firstlast = {$first} {$last} namepreset-firstdashfirst = {$first1}-{$first2} namepreset-thefirstoflast = The {$first} of {$last} +namepreset-firstmiddlelast = {$first} {$middle}{$last} diff --git a/Resources/Prototypes/Datasets/Names/dwarf.yml b/Resources/Prototypes/Datasets/Names/dwarf.yml new file mode 100644 index 00000000000000..d1e2de0c937f96 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/dwarf.yml @@ -0,0 +1,283 @@ +- type: dataset + id: DwarfFirst + values: + - Kilrud + - Ingiz + - Udil + - Ushrir + - Ushat + - Erith + - Doren + - Sarvesh + - Akrul + - Stukos + - Rakust + - Konos + - Kogan + - Sazir + - Morul + - Thob + - Dobar + - Asen + - Uvash + - Kubuk + - Monom + - Athel + - Kel + - Besmar + - Kosoth + - Uzol + - Inod + - Cerol + - Likot + - Ezum + - Fikod + - Edem + - Alath + - Tosid + - Ilral + - Rovod + - Sibrek + - Cog + - Asob + - Urist + - Bim + +- type: dataset + id: DwarfMiddle + values: + - Tin + - Relic + - Book + - Lens + - Even + - Mechanical + - Mountainous + - Cuck + - Arch + - Coal + - Inken + - Iron + - Razor + - Volcano + - Furnace + - Created + - Made + - Gem + - Canyon + - Earthen + - Golden + - Copper + - Cobalt + - Silvery + - Basement + - Crafted + - Flag + - Dagger + - Rim + - Avalanche + - Boat + - Armor + - Boot + - Girdle + - Stone + - Vestibular + - Axe + - Paddle + - Seal + - Fear + - Song + - Strange + - Quiet + - Sorry + - Sorrow + - Weapon + - Grave + - Forest + - Fire + - Water + - River + - Spin + - Rough + - Decent + - Speak + - Wind + - Intent + - Knife + - Quake + - Dune + - Bread + - Bake + - Drag + - Sword + - Citrus + - Gloom + - Wing + - Priority + - Frost + - Ferry + - Man + - Real + - Dinner + - Supper + - Big + - Right + - 'True' + - Fat + - Shielded + - Mined + - Gravel + - Sling + - Soft + - Hand + - Aluminum + - Inky + - Manufactured + - Made-of- + - Diamond + - Bronze + - Leaden + +- type: dataset + id: DwarfLast + values: + - bodice + - tongs + - gear + - galley + - hammer + - tomb + - town + - portal + - figure + - bodice + - mountain + - fountain + - iron + - razor + - deer + - bear + - wolf + - raven + - fish + - manor + - furnace + - anvil + - work + - treasury + - tour + - crystal + - gem + - halls + - city + - basement + - craft + - roof + - treaty + - hall + - net + - flag + - carrier + - maker + - lifter + - wright + - smith + - er + - dagger + - rack + - rope + - rim + - avalanche + - manor + - ceiling + - boot + - armor + - boat + - lancer + - cudgel + - iron + - even + - girdle + - stone + - post + - salve + - banner + - dye + - ship + - armory + - gorge + - vault + - axe + - creation + - gate + - paddle + - seal + - pallisade + - fear + - message + - sorry + - away + - weapon + - grave + - song + - reflection + - forest + - fire + - water + - river + - rise + - spin + - detail + - rough + - speaker + - wind + - sight + - knife + - quake + - wire + - dune + - bread + - baker + - dragger + - sword + - gloom + - wing + - priority + - frost + - fortress + - ferry + - man + - real + - like + - supper + - dinner + - big + - mercy + - 'true' + - voyage + - fat + - sack + - oil + - urn + - gravel + - sling + - rampart + - anvil + - cobalt + - soft + - silver + - hand + - cannon + - aluminum + - can + - made + - diamond + - bronze + - copper + - smith + - trumpet + - mountain + - oar + - passage + - guild + - silver \ No newline at end of file diff --git a/Resources/Prototypes/Species/dwarf.yml b/Resources/Prototypes/Species/dwarf.yml index fc800213c19f96..2a778915060ed9 100644 --- a/Resources/Prototypes/Species/dwarf.yml +++ b/Resources/Prototypes/Species/dwarf.yml @@ -7,3 +7,8 @@ markingLimits: MobHumanMarkingLimits dollPrototype: MobDwarfDummy skinColoration: HumanToned + maleFirstNames: DwarfFirst + femaleFirstNames: DwarfFirst + middleNames: DwarfMiddle + lastNames: DwarfLast + naming: FirstMiddleLast