From 5a9ab3b315c90ddd054f2e2524af023d909e2a9e Mon Sep 17 00:00:00 2001 From: Errant <35878406+Errant-4@users.noreply.github.com> Date: Wed, 14 Feb 2024 04:08:45 +0100 Subject: [PATCH] Vox names, species prototype cleanup, some cosmetic changes (#24994) * voxnames * New generator parameters, names are more readable * bunch of missing vox stuff * more names * sad --- Content.Shared/Humanoid/NamingSystem.cs | 3 + .../Humanoid/Prototypes/SpeciesPrototype.cs | 1 + Resources/Audio/Voice/Talk/attributions.yml | 5 + Resources/Audio/Voice/Talk/vox.ogg | Bin 0 -> 9591 bytes Resources/Audio/Voice/Talk/vox_ask.ogg | Bin 0 -> 11520 bytes Resources/Audio/Voice/Talk/vox_exclaim.ogg | Bin 0 -> 9091 bytes Resources/Audio/Voice/Vox/vox_laugh.ogg | Bin 0 -> 10872 bytes .../en-US/chat/managers/chat-manager.ftl | 4 + .../Locale/en-US/reagents/meta/biological.ftl | 5 +- Resources/Locale/en-US/species/namepreset.ftl | 3 +- Resources/Locale/en-US/species/species.ftl | 1 + Resources/Prototypes/Damage/modifier_sets.yml | 7 +- Resources/Prototypes/Datasets/Names/vox.yml | 2765 +++++++++++++++++ .../Prototypes/Entities/Mobs/Species/vox.yml | 118 +- Resources/Prototypes/Reagents/biological.yml | 14 +- Resources/Prototypes/Species/vox.yml | 8 +- .../Prototypes/Voice/speech_emote_sounds.yml | 12 +- Resources/Prototypes/Voice/speech_sounds.yml | 13 +- Resources/Prototypes/Voice/speech_verbs.yml | 7 + Resources/Prototypes/typing_indicator.yml | 5 + .../Textures/Effects/speech.rsi/meta.json | 11 + .../Textures/Effects/speech.rsi/vox0.png | Bin 0 -> 411 bytes 22 files changed, 2882 insertions(+), 100 deletions(-) create mode 100644 Resources/Audio/Voice/Talk/vox.ogg create mode 100644 Resources/Audio/Voice/Talk/vox_ask.ogg create mode 100644 Resources/Audio/Voice/Talk/vox_exclaim.ogg create mode 100644 Resources/Audio/Voice/Vox/vox_laugh.ogg create mode 100644 Resources/Prototypes/Datasets/Names/vox.yml create mode 100644 Resources/Textures/Effects/speech.rsi/vox0.png diff --git a/Content.Shared/Humanoid/NamingSystem.cs b/Content.Shared/Humanoid/NamingSystem.cs index 5e9ebdbf23c9be..76487ff5228b08 100644 --- a/Content.Shared/Humanoid/NamingSystem.cs +++ b/Content.Shared/Humanoid/NamingSystem.cs @@ -26,6 +26,9 @@ public string GetName(string species, Gender? gender = null) switch (speciesProto.Naming) { + case SpeciesNaming.First: + return Loc.GetString("namepreset-first", + ("first", GetFirstName(speciesProto, gender))); case SpeciesNaming.TheFirstofLast: return Loc.GetString("namepreset-thefirstoflast", ("first", GetFirstName(speciesProto, gender)), ("last", GetLastName(speciesProto))); diff --git a/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs b/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs index a8dcea36f1b0f3..da8d7c75cdf27f 100644 --- a/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs +++ b/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs @@ -124,6 +124,7 @@ public sealed partial class SpeciesPrototype : IPrototype public enum SpeciesNaming : byte { + First, FirstLast, FirstDashFirst, TheFirstofLast, diff --git a/Resources/Audio/Voice/Talk/attributions.yml b/Resources/Audio/Voice/Talk/attributions.yml index d55b9737d0e39e..19b0b66b9cceca 100644 --- a/Resources/Audio/Voice/Talk/attributions.yml +++ b/Resources/Audio/Voice/Talk/attributions.yml @@ -31,3 +31,8 @@ license: "CC-BY-NC-SA-3.0" copyright: "Goonstation, Modified by Whisper" source: "https://github.com/goonstation/goonstation/tree/eb3e7df6292d23f6af2f18b4372d3a8ba4b0fda7/sound/misc/talk" + +- files: ["vox.ogg","vox_ask.ogg","vox_exclaim.ogg" ] + license: "CC-BY-NC-SA-3.0" + copyright: "Derived from shriek1.ogg by Errant" + source: "https://github.com/goonstation/goonstation/tree/eb3e7df6292d23f6af2f18b4372d3a8ba4b0fda7/sound/misc/talk" diff --git a/Resources/Audio/Voice/Talk/vox.ogg b/Resources/Audio/Voice/Talk/vox.ogg new file mode 100644 index 0000000000000000000000000000000000000000..c3b2a268ac2b178fc9d57c0354054f55df3e74a1 GIT binary patch literal 9591 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 literal 0 HcmV?d00001 diff --git a/Resources/Audio/Voice/Vox/vox_laugh.ogg b/Resources/Audio/Voice/Vox/vox_laugh.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8c356045c361cf76c6b6f4ad96b85bb68e09859c GIT binary patch literal 10872 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 x+!ZX*8GlA=0E~~{{!dc(Gmav literal 0 HcmV?d00001 diff --git a/Resources/Locale/en-US/chat/managers/chat-manager.ftl b/Resources/Locale/en-US/chat/managers/chat-manager.ftl index a165a02f9d8d8d..e5ef61701a8285 100644 --- a/Resources/Locale/en-US/chat/managers/chat-manager.ftl +++ b/Resources/Locale/en-US/chat/managers/chat-manager.ftl @@ -92,6 +92,10 @@ chat-speech-verb-skeleton-1 = rattles chat-speech-verb-skeleton-2 = clacks chat-speech-verb-skeleton-3 = gnashes +chat-speech-verb-vox-1 = screeches +chat-speech-verb-vox-2 = shrieks +chat-speech-verb-vox-3 = croaks + chat-speech-verb-canine-1 = barks chat-speech-verb-canine-2 = woofs chat-speech-verb-canine-3 = howls diff --git a/Resources/Locale/en-US/reagents/meta/biological.ftl b/Resources/Locale/en-US/reagents/meta/biological.ftl index 9078397a73c056..10a9a07e08a670 100644 --- a/Resources/Locale/en-US/reagents/meta/biological.ftl +++ b/Resources/Locale/en-US/reagents/meta/biological.ftl @@ -10,6 +10,9 @@ reagent-desc-slime = You thought this was gradient blood at first, but you were reagent-name-hemocyanin-blood = blue blood reagent-desc-hemocyanin-blood = Contains copper as opposed to iron which gives it a distinct blue color. +reagent-name-ammonia-blood = anaerobic blood +reagent-desc-ammonia-blood = Nothing else in the entire galaxy smells quite so appalling. + reagent-name-zombie-blood = zombie blood reagent-desc-zombie-blood = Would not advise eating. Can be used to create an inoculation against the infection. @@ -20,4 +23,4 @@ reagent-name-fat = fat reagent-desc-fat = No matter how it was obtained, its application is important. reagent-name-vomit = vomit -reagent-desc-vomit = You can see a few chunks of someone's last meal in it. \ No newline at end of file +reagent-desc-vomit = You can see a few chunks of someone's last meal in it. diff --git a/Resources/Locale/en-US/species/namepreset.ftl b/Resources/Locale/en-US/species/namepreset.ftl index 2d43b5f00d1fd4..5a42c87b78e890 100644 --- a/Resources/Locale/en-US/species/namepreset.ftl +++ b/Resources/Locale/en-US/species/namepreset.ftl @@ -1,3 +1,4 @@ +namepreset-first = {$first} namepreset-firstlast = {$first} {$last} namepreset-firstdashfirst = {$first1}-{$first2} -namepreset-thefirstoflast = The {$first} of {$last} \ No newline at end of file +namepreset-thefirstoflast = The {$first} of {$last} diff --git a/Resources/Locale/en-US/species/species.ftl b/Resources/Locale/en-US/species/species.ftl index 081b626d452296..f31b1fa0f00d71 100644 --- a/Resources/Locale/en-US/species/species.ftl +++ b/Resources/Locale/en-US/species/species.ftl @@ -8,3 +8,4 @@ species-name-diona = Diona species-name-arachnid = Arachnid species-name-moth = Moth Person species-name-skeleton = Skeleton +species-name-vox = Vox diff --git a/Resources/Prototypes/Damage/modifier_sets.yml b/Resources/Prototypes/Damage/modifier_sets.yml index 8a7b84ff1a7716..31dd47a9e16be6 100644 --- a/Resources/Prototypes/Damage/modifier_sets.yml +++ b/Resources/Prototypes/Damage/modifier_sets.yml @@ -66,7 +66,7 @@ Piercing: 0.7 Shock: 2 Heat: 3 - + # Like metallic, but without flat reduction so it can be damaged with fists. - type: damageModifierSet id: FlimsyMetallic @@ -190,6 +190,11 @@ Cold: 0.7 Heat: 1.3 +- type: damageModifierSet + id: Vox + coefficients: # To be decided + Poison: 1 + - type: damageModifierSet id: Zombie #Blunt resistant and immune to biological threats, but can be hacked apart and burned coefficients: diff --git a/Resources/Prototypes/Datasets/Names/vox.yml b/Resources/Prototypes/Datasets/Names/vox.yml new file mode 100644 index 00000000000000..891094d95b2916 --- /dev/null +++ b/Resources/Prototypes/Datasets/Names/vox.yml @@ -0,0 +1,2765 @@ +- type: dataset + id: names_vox + values: + - Bakabepa + - Babapir + - Babasri + - Babepipit + - Bachakehi + - Bacheska + - Bachishesher + - Bacrapri + - Bacreska + - Bahepra + - Bahicrecrek + - Bahikravre + - Bakabepa + - Bakehahak + - Bakeki + - Bapechichik + - Bapekikik + - Baperi + - Bapravavar + - Bapreba + - Bapretritrir + - Baracreber + - Barahri + - Baraskahrita + - Baraxixik + - Bashiskir + - Baskaskakre + - Baskivihi + - Basreba + - Batapriri + - Batasrecrar + - Batehrahrat + - Batrakiha + - Batravika + - Batrepriski + - Batresri + - Batriska + - Batritra + - Bavasha + - Bavebebek + - Bavraskikaka + - Bavricriski + - Baxahehrer + - Baxeve + - Bebebapa + - Bebeterara + - Bebipaska + - Bechetapeka + - Becrerisre + - Becretretrer + - Beheka + - Behivresha + - Behrechechek + - Behrekri + - Behreyayat + - Behricririri + - Behritixaxa + - Bekapesresre + - Bekashishik + - Beketatratra + - Bekrechaxe + - Bekresrare + - Bekribe + - Bepararakrit + - Bepatricher + - Bepehisrepra + - Bepihar + - Bepitrashi + - Bepresri + - Berabi + - Beraka + - Berecricrir + - Berisre + - Beshachari + - Besheskexexe + - Beshesre + - Beshesretre + - Beskayavrer + - Beskisrasrak + - Beskitre + - Besravivit + - Besrivir + - Betababatrat + - Betere + - Beticreche + - Bevekakat + - Bevihichabi + - Bevihraki + - Bevrasheshet + - Bibaba + - Bibabir + - Bibati + - Bibekricha + - Bibexa + - Bibibabat + - Bibiya + - Bichechir + - Bicrakipepe + - Bicrevrite + - Bihrapivra + - Bihraxibebe + - Bihrishicha + - Bihrivriski + - Bikivri + - Bikraskixexe + - Bikrivrivrit + - Bipekisri + - Bipiritecre + - Bipratraxi + - Biprexi + - Biprivar + - Birachi + - Bisheba + - Bishehri + - Bishevrivra + - Bishiki + - Biskeskavra + - Bisrahresha + - Bisrepipit + - Bitavi + - Bitehatiti + - Bivacri + - Bivape + - Bivihachakre + - Bivitikiva + - Bivrapri + - Bivraske + - Bivrehaski + - Bivrihra + - Bixachetra + - Bixapetra + - Bixapriprik + - Bixexir + - Biyakir + - Chabaha + - Chabakrekrer + - Chabebache + - Chabepebe + - Chabikrahihi + - Chachahe + - Chachevra + - Chacrerehra + - Chahekre + - Chahixe + - Chahravrer + - Chahrixehra + - Chakakiva + - Chakapraprar + - Chakehashe + - Chakiprihi + - Chakivre + - Chakricrivi + - Chapachichit + - Chaparachi + - Chapehresha + - Chapeshiski + - Chapixahi + - Chaprahebibi + - Chaprecraha + - Chaprecrevi + - Charaprehiki + - Charapriska + - Charara + - Charate + - Charatraki + - Charekreski + - Charesribe + - Charichechet + - Charisha + - Chashaber + - Chashereska + - Chaskeke + - Chasraskaska + - Chasrechata + - Chasrevravi + - Chasrihiprer + - Chatrexixe + - Chavicreshi + - Chavrikre + - Chaxakrahehe + - Chaxeskehre + - Chaxevrahi + - Chaxivre + - Chebabebet + - Chebavi + - Chebebibivar + - Chebehecri + - Chebehrihrit + - Chebihihit + - Chebiretete + - Chebisra + - Chechapraver + - Checraxa + - Checrera + - Checretasre + - Checretrisre + - Checrisre + - Chehashababa + - Chehebicri + - Chehepre + - Chehisker + - Chehraxashir + - Chekrahraka + - Chekravixa + - Chekretitit + - Chepakakatat + - Chepekakak + - Chepipracra + - Chepitipe + - Chepraskavri + - Cheshirikra + - Cheshive + - Cheskapra + - Cheskavre + - Chesrakeyaya + - Chesravre + - Chesrevi + - Chesrevratra + - Chesrirititi + - Chetaxapa + - Chetaxapre + - Cheterarat + - Chetiska + - Chetritreti + - Chetriya + - Chevasrasrak + - Chevrepre + - Chevrivir + - Chexararahir + - Chexecraski + - Chexepraprar + - Chexexaxapa + - Chexisreka + - Chexitre + - Cheyaverere + - Chibakre + - Chibihra + - Chichabikaka + - Chichavrehre + - Chicrikishi + - Chicrirake + - Chicrivivit + - Chihahrehrek + - Chihasre + - Chihatrachi + - Chihayayabik + - Chiheche + - Chihehreba + - Chihreratri + - Chihriveka + - Chikakre + - Chikaskitre + - Chikate + - Chikiprecri + - Chikraki + - Chikraskiska + - Chikrekra + - Chikrekre + - Chipabeske + - Chipererer + - Chipicracrak + - Chiprexexet + - Chipriprisre + - Chiprivrecha + - Chishakepi + - Chishipepri + - Chisrashi + - Chisretri + - Chisriher + - Chisriva + - Chisrivevri + - Chitisrevre + - Chitixahra + - Chitrechicra + - Chitresravri + - Chivechachat + - Chiveprepret + - Chiveprikri + - Chiviki + - Chivikiya + - Chivishir + - Chivrakakak + - Chivrakri + - Chivrasher + - Chivrepapar + - Chixacra + - Chixihebakra + - Crabecrapapa + - Crachikrisre + - Cracrahravri + - Cracratiya + - Cracretipi + - Cracrihe + - Cracritri + - Crahayayak + - Craheki + - Crahrashi + - Crahrehi + - Crahretetek + - Crakapeper + - Crakaskeba + - Crakavravrat + - Crakehri + - Crakirer + - Crakrashiski + - Crakrehra + - Crakriskipir + - Crapipaka + - Crapiriyaya + - Craprati + - Crapresker + - Craresraxe + - Crarevexa + - Crashahresri + - Crashehihik + - Craskahraske + - Craskatrapra + - Craskicrete + - Craskivi + - Cratatrihi + - Cratikre + - Cratikrekrek + - Cratiprar + - Cratrehra + - Cravehri + - Cravrikra + - Cravrisrere + - Cravritiriri + - Cravriyayak + - Crayahrehret + - Crayakrer + - Crayapraprar + - Crayaripipi + - Crayayaricri + - Crebaxa + - Crebehrita + - Crechavre + - Crechesrehar + - Crechichevre + - Crecrabibik + - Crecriri + - Crehepapepe + - Creheriki + - Crehexi + - Crehipavava + - Crehraver + - Crekatri + - Crekavexa + - Crekeki + - Creketri + - Crekiskeya + - Crekitati + - Crekrepreki + - Crekrivavak + - Crepahripa + - Crepekecre + - Crepekrekret + - Crepiba + - Crepihri + - Creprepravri + - Creraxi + - Crerehihit + - Creshekrapa + - Creskekri + - Cresketita + - Creskihre + - Cresripepet + - Cretarevripa + - Cretebe + - Cretehra + - Creterarar + - Cretibehihi + - Cretrapi + - Cretrekerara + - Cretrepepet + - Crevapir + - Crevixesra + - Crexahava + - Crexepapacre + - Cribavribibi + - Cribitratrat + - Crichecrite + - Crichipi + - Cricraprehre + - Cricrirar + - Cricrisre + - Cricritika + - Crihevar + - Crihitehre + - Crikatrikre + - Crikebepapa + - Crikekakat + - Crikeshivra + - Crikisheski + - Crikrahrata + - Crikretevabi + - Crikricretri + - Cripichahi + - Criprishapa + - Crirachi + - Crirakratra + - Crishave + - Criskahe + - Crisrehapahi + - Critachatri + - Critrabibir + - Critresrir + - Critrikracri + - Crivacriti + - Crivacrive + - Crivayasra + - Crivrakre + - Crivrecri + - Crixixaske + - Habavavak + - Habepa + - Habikikaka + - Habikrihita + - Hachabe + - Hachehekre + - Hacheske + - Hacreha + - Hacrere + - Hahebapapa + - Hahecrecha + - Haheha + - Hahetasrike + - Hahihahatrar + - Hahihasreche + - Hahripraxaxa + - Hakepa + - Hakirer + - Hakraxixit + - Hakrekikik + - Hakrixexeret + - Hapacharepri + - Hapacre + - Hapahri + - Hapeti + - Hapitahri + - Hapreska + - Haprihrisha + - Harebabi + - Harexiveve + - Haricracre + - Haririsheska + - Harishi + - Hashakrakrak + - Hashehracri + - Hashepracha + - Haskaritepra + - Hasketer + - Haskibebeyat + - Haskikretete + - Hasrabake + - Hasracritehe + - Hasrekitra + - Hasrekrer + - Hasrihaxa + - Hasripeshar + - Hatabibivet + - Havavresra + - Havixe + - Havreki + - Havrepekre + - Havretri + - Havrichatata + - Haxikeker + - Hayahriyaxa + - Hebahrevrir + - Hebapri + - Hebihihichit + - Hebikratahe + - Hecheshehixi + - Hechetra + - Hechevakrer + - Hecraba + - Hecrabi + - Hecrevrivrik + - Hecrirecha + - Hehere + - Hehiskitri + - Hehrapike + - Hehrepri + - Hehreskaskat + - Hehrikra + - Hekikrexa + - Hekrasre + - Hekrekicre + - Hekreracre + - Hekriheti + - Hepevivikrik + - Hepraskibebe + - Heprivresker + - Heprixasheri + - Herecrerivi + - Hereririket + - Heriheyacri + - Heripa + - Heripreka + - Heshahraveti + - Heshepepevik + - Heskashachi + - Heskaxixe + - Heskererepet + - Heskeshishit + - Heskisker + - Hesrepahri + - Hesreski + - Hetahetritri + - Hetiheheprit + - Hetrare + - Hetrevihra + - Hetrihahri + - Hetrirebibi + - Hevababaker + - Hevetihre + - Hevexixik + - Heviricrecre + - Hevrevipa + - Hevrexir + - Hevrichar + - Hevriraravit + - Hevrivrivre + - Hexasrichi + - Hexaxipri + - Heyashipre + - Hibasher + - Hiberarakrar + - Hibesrache + - Hicrapre + - Hicrecrahera + - Hicreteba + - Hicriba + - Hihacha + - Hihepapak + - Hihichitre + - Hihireret + - Hihrevra + - Hikikri + - Hikitritrir + - Hikrakre + - Hikrepa + - Hipavi + - Hipitratrak + - Hirepabe + - Hirichachar + - Hiricheya + - Hiricrabakri + - Hiricraske + - Hiricrevitri + - Hirihrachi + - Hirihraski + - Hirihraxaxat + - Hirikachi + - Hirikretetet + - Hirikrikra + - Hiripebahre + - Hiripehixixi + - Hiriper + - Hiripesri + - Hiripeta + - Hiripevivik + - Hirirahehet + - Hirirecrevre + - Hirishihra + - Hiriskeva + - Hiritapatiti + - Hiriteker + - Hiritrari + - Hiritraxe + - Hiritricri + - Hirivavavri + - Hiriviske + - Hirivivre + - Hirivra + - Hirivrari + - Hirivrexita + - Hirivrivri + - Hirixashahre + - Hirixicraya + - Hishave + - Hishesritra + - Hishiskahra + - Hishivrevrek + - Hiskakecra + - Hiskatetek + - Hiskekreche + - Hiskeva + - Hiskisrare + - Hisrakikit + - Hisratrepepe + - Hitava + - Hiterehaha + - Hitratra + - Hivacracrat + - Hivatritrik + - Hivayayar + - Hivrababar + - Hivrahrir + - Hixacre + - Hixashape + - Hixashetiti + - Hixekrasra + - Hixepi + - Hixeripe + - Hiyacrakra + - Hrabatitit + - Hrabaxa + - Hrabike + - Hrabipre + - Hracrabixi + - Hracrehra + - Hrahepivivi + - Hraherikrexi + - Hrahikrer + - Hrahrakahre + - Hrahraska + - Hrahrasrebe + - Hrahrehehek + - Hrahritra + - Hrakachabexi + - Hrakarerek + - Hrakeshi + - Hrakiski + - Hrakretri + - Hrakrichapri + - Hrakrishi + - Hrapavevek + - Hrapicra + - Hrapraber + - Hraprapreche + - Hrarachihi + - Hrarahrahrar + - Hrarecri + - Hrarikrixabi + - Hrarishesher + - Hrashepa + - Hrashibisra + - Hrashihir + - Hrashikavexa + - Hrasketre + - Hraskibe + - Hraskikexaxa + - Hrasrecrixi + - Hrasrevraxi + - Hrasrevrehra + - Hratatrasre + - Hratayati + - Hratere + - Hratrachari + - Hratreki + - Hravahiche + - Hravapeki + - Hravaskeki + - Hraveska + - Hravihre + - Hravrahaheya + - Hravrekra + - Hraxehrehiri + - Hraxekrebe + - Hraxichebar + - Hraxivivivet + - Hrayacha + - Hrayavrar + - Hrebavihra + - Hrebetra + - Hrechaxer + - Hrecreti + - Hrecrihahar + - Hrehikrekrer + - Hrehresra + - Hreketra + - Hrekrativi + - Hrepihepre + - Hrepipake + - Hrerasri + - Hreravexe + - Hrereprehir + - Hreriba + - Hreshahetiti + - Hreshehakake + - Hreskapahre + - Hresrakakre + - Hresrechike + - Hresrekasha + - Hretite + - Hretrecre + - Hretreski + - Hretrevri + - Hrevrehe + - Hrexakekek + - Hrexatika + - Hrexebe + - Hribahar + - Hribehrati + - Hribipe + - Hrichiski + - Hrihevrivrir + - Hrihitra + - Hrihrakihri + - Hrihrechar + - Hrikichecra + - Hrikiskate + - Hripricrahra + - Hrirehrikra + - Hriresri + - Hrishabar + - Hrishaxeyar + - Hrishehrahi + - Hrishexixik + - Hrisheyakra + - Hrishipete + - Hriskacrecra + - Hriskaheba + - Hriskari + - Hriskevetabi + - Hriskexa + - Hriskihete + - Hriskihri + - Hrisrechi + - Hrisrera + - Hrisriri + - Hrisrishapa + - Hrisrivavar + - Hritachecri + - Hritexa + - Hritihihri + - Hritihra + - Hritiker + - Hritisrasrat + - Hrivaxa + - Hrivripira + - Hrixebabatir + - Hrixebi + - Hrixihri + - Hrixiva + - Hriyahriya + - Kabavi + - Kabaxesha + - Kachaske + - Kachaya + - Kachihe + - Kacrahesha + - Kahakichi + - Kahaxipa + - Kahepapatret + - Kahiki + - Kahishe + - Kahrakrekret + - Kahratrer + - Kahriche + - Kahricrikra + - Kakatahrare + - Kakebi + - Kakihrasri + - Kapakriska + - Kapracre + - Kaprashesher + - Kaprehrakaka + - Kapreri + - Karakahre + - Karapihehe + - Kashaya + - Kashipri + - Kaskachekeke + - Kaskivrer + - Kasrabacre + - Kasrakapre + - Kasraxar + - Kasresreyaya + - Kasrivrata + - Katasker + - Katehreyaya + - Katetrike + - Katexaxak + - Katrehre + - Kavababat + - Kavashishit + - Kavihrahrat + - Kavitratrak + - Kavratevriya + - Kaxecri + - Kaxetavre + - Kaxetretret + - Kayararat + - Kayavrivrik + - Kayaxi + - Kebasrevikri + - Kechatra + - Kechavrepri + - Kecresra + - Kecrevrir + - Kecriha + - Kecrikra + - Kecrixa + - Kehave + - Kehitichacha + - Kehivehrihri + - Kehrachechek + - Kehrehi + - Kekabibit + - Kekahi + - Kekahrexi + - Kekarar + - Kekasritri + - Kekebapisra + - Kekebibivrer + - Kekekahihi + - Kekrishe + - Kepetre + - Kepevra + - Kepraki + - Keprepara + - Kerahacheche + - Keratra + - Kerihi + - Keriskehisri + - Keshevaskiva + - Keshika + - Keshiti + - Keskarahita + - Keteskesket + - Ketesketa + - Ketribabar + - Ketribipi + - Kevatra + - Kevatre + - Keveki + - Keveshatra + - Keveshexiki + - Kevesraxe + - Kevexa + - Kevikaxe + - Kevivri + - Kevrahreri + - Kevrahrihrit + - Kexapriprik + - Kexerava + - Kexeshacha + - Kexisrepe + - Keyararak + - Kibevavacrak + - Kibeyachichi + - Kibipavava + - Kichitra + - Kicricreva + - Kicrikrikrik + - Kiharesra + - Kihiya + - Kihrexexevek + - Kihriprira + - Kikeke + - Kikexitretre + - Kikrabikichi + - Kikrehi + - Kikrekrakrat + - Kikreri + - Kikretrapa + - Kikrevavak + - Kikrivikar + - Kipivaxe + - Kipreya + - Kireche + - Kiresrisrir + - Kirevi + - Kiribapra + - Kiribaprive + - Kirichaketra + - Kirichiska + - Kiricrakakri + - Kirihererek + - Kirihrepi + - Kirihreviche + - Kirikachicha + - Kirikatriki + - Kirikivrivri + - Kirikrakra + - Kiripabi + - Kiripahritri + - Kiriprihri + - Kirirahixera + - Kirireti + - Kirirevri + - Kirishavavar + - Kirishekeket + - Kiriteska + - Kiritracha + - Kiritrepeper + - Kiritreyapri + - Kirivipe + - Kirivrivepi + - Kirixaticher + - Kirixepepek + - Kirixicra + - Kishahapatre + - Kishehakaka + - Kiskashapra + - Kiskekehra + - Kiskekicre + - Kiskipri + - Kitraka + - Kitrevevri + - Kivraheherat + - Kivrahi + - Kivrashe + - Kivrera + - Kivretrakeke + - Kixatritrit + - Kixichetiti + - Kixichicrar + - Kixivra + - Krabareyaya + - Krabeherere + - Krachehre + - Kracheyaba + - Kracrirarak + - Krahebikaba + - Krahechikri + - Krahiha + - Krahrakri + - Krahraririk + - Krahrepexi + - Krahrepri + - Krahrerar + - Krakahra + - Krakrekiski + - Krakrepapat + - Krapari + - Krapibi + - Krapitahri + - Krapreve + - Kraprisrisre + - Kraprivrarar + - Krarakrikrit + - Krarekri + - Kraricri + - Krashatatahi + - Krashavecra + - Kraskisretra + - Krasrarevi + - Krasripapat + - Kratachavri + - Kratare + - Kratikepi + - Kraveke + - Kravraxeveve + - Kravrepachi + - Kravricrahra + - Kraxabi + - Kraxasrir + - Krayakrikrit + - Krebekri + - Krebibikre + - Krebivi + - Krechahe + - Krechepraxa + - Krechititik + - Krecrashepra + - Krecravicha + - Krecreri + - Krehekikihit + - Krehrakakre + - Krehrita + - Krehrixa + - Krekacrechi + - Krekebeta + - Krekracri + - Krekrapri + - Krekrishaski + - Krepeviske + - Krepitir + - Krepiya + - Kreprahetaya + - Krepretasha + - Kreprivreski + - Krererisri + - Krerexeskeva + - Kreskaviha + - Kresrepaxexe + - Kretahre + - Kretavi + - Kretepapatir + - Krevavikeke + - Krevesher + - Krevesrisrit + - Krevrexer + - Krevrivriske + - Krexaya + - Kreyacrepe + - Kreyatriri + - Kreyavi + - Kribeshi + - Kribetibi + - Kribexixik + - Kribirecri + - Kribivra + - Krichakehra + - Kricrava + - Kricrirepe + - Kricritaka + - Krihaprir + - Krihesre + - Krihexarava + - Krihreskekre + - Krikapepek + - Krikatitixer + - Krikesrixixi + - Krikrashar + - Krikrikesre + - Kripahri + - Kripritri + - Kriripriprit + - Kririve + - Krishebiriba + - Krishebite + - Krishecrapi + - Kriskexer + - Krisribariri + - Krisrisher + - Kritahe + - Kritarerek + - Kritechihihi + - Kritiha + - Kritixa + - Kritresra + - Kritrivrevra + - Krivaxixipak + - Krivripri + - Krixehraski + - Krixesrepri + - Krixirar + - Pabaskare + - Pabecrechi + - Pabixashaha + - Pachatatak + - Pachetra + - Pachikri + - Pachisra + - Pacrachisri + - Pacraheha + - Pahrecrahati + - Pahrixeke + - Pakaririhrek + - Pakashexa + - Pakaskesha + - Pakavrevaha + - Pakihechacha + - Pakishi + - Pakivrapapa + - Pakrakrasra + - Pakrasrer + - Pakrava + - Pakresra + - Pakrexetihe + - Pakrika + - Papaskaxa + - Papavivivrik + - Papesheher + - Papivahre + - Papratrakiki + - Parerakre + - Pashaskaskak + - Pashevravrat + - Paskasretiti + - Paskiske + - Paskixexek + - Pasrabicra + - Pasraprikepa + - Pasrehe + - Pasrepratri + - Pataprivra + - Patesrateke + - Patexexet + - Patreshe + - Pavaba + - Pavrapishi + - Paxarerechak + - Paxecri + - Paxitirechi + - Payahreshi + - Pebakrikrik + - Pebate + - Pebeskahepre + - Pebevravi + - Pebibebek + - Pechaka + - Pechekripi + - Pechetraya + - Pechikreke + - Pechivrar + - Pecracha + - Pecritrasre + - Pehasra + - Pehecha + - Pehisresrer + - Pehrakresha + - Pehrihivreya + - Pehriva + - Pekecricrik + - Pekrava + - Pekraya + - Pekrepitri + - Pepehri + - Pepexekaka + - Pepirer + - Pepiska + - Pepitre + - Pepreba + - Pepreha + - Peprerar + - Pepresri + - Pepresrikeke + - Peprevahe + - Peraxatrikri + - Perebecrate + - Peribi + - Perisrehri + - Peshipaha + - Peskavavaxek + - Peskehihik + - Peskikikitir + - Pesraski + - Pesratra + - Pesravre + - Pesraya + - Pesretetetat + - Pesrikre + - Pesritra + - Petevrivrit + - Petihri + - Petivrate + - Petripetete + - Pevekriska + - Pevera + - Pevetiska + - Pevetrepri + - Pevikixi + - Pevipraprak + - Pevitetecrak + - Pevixihre + - Pevracher + - Pevrakrakrat + - Pevrehita + - Pexepraprat + - Pexihibe + - Pibehra + - Pibekrite + - Pibetiskiski + - Pibibipa + - Pibikekek + - Pichehi + - Pichetreta + - Pichicreve + - Pichikrarar + - Picreprecha + - Pihasresret + - Piheki + - Pihepa + - Pihibeskaska + - Pihichar + - Pihitetek + - Pihrebi + - Pihreshapibe + - Pihretitir + - Pikaskaskar + - Pikaxer + - Pikrehreka + - Pikripreprer + - Pipasha + - Pipaxacricri + - Pipesresri + - Pipribepri + - Piprishixi + - Piraxiprar + - Pirekrehi + - Pireveverik + - Piribaxa + - Piribipriski + - Pirichivapi + - Piricrahra + - Piricrakra + - Pirihepre + - Pirihichati + - Pirikretra + - Pirikritere + - Pirikrivra + - Piripaba + - Piripacripri + - Piripihrishe + - Piripite + - Piripitri + - Piriprabepa + - Pirireprishe + - Piriririke + - Piriskateke + - Piriskiki + - Pirisretiva + - Piritavre + - Piritihre + - Piritratavri + - Piritrecrara + - Piritreke + - Pirivakixaxa + - Pirivikrar + - Pirixaxa + - Pirixaxevre + - Piriyakribi + - Piriyapesra + - Pishakakaxet + - Pishashetepi + - Pishavraska + - Pishevra + - Piskipre + - Pisrasheshek + - Pisripre + - Pisrixekete + - Pitibi + - Pitraprivre + - Pitraskeche + - Pitratebi + - Pitrevreyaya + - Pitriprivra + - Pitriske + - Pivaka + - Pivatatakir + - Pivekrixehri + - Piveyashi + - Pivrakevi + - Pivrakipre + - Pivrakitibe + - Pivrashir + - Pivrirater + - Pivritatabet + - Pixeriti + - Pixicha + - Prabibiprepi + - Prabichixaxa + - Prabixite + - Pracheteter + - Prachiba + - Pracrahrive + - Prahihrahrak + - Prahisresrek + - Prahitrivi + - Prahrebesra + - Prahripebaba + - Prahrivapapa + - Prakiskesket + - Prakrehrahri + - Prakripi + - Prapicresri + - Praprexexek + - Prarachaxi + - Prarecrahi + - Prarikra + - Praripraka + - Prashicribi + - Prashivepapa + - Prashixitata + - Pratakra + - Praterahira + - Pratreki + - Pravashipebe + - Pravesrisrit + - Pravixihehe + - Pravrashi + - Pravrepi + - Pravricrir + - Pravritrer + - Praxahihir + - Praxechaxere + - Praxekrakrat + - Praxevitetra + - Praxexe + - Praxichi + - Prayaraxir + - Prebavre + - Prechakavra + - Prechavre + - Precratetet + - Preherihra + - Prehiviveve + - Prehrakriska + - Prehribi + - Prekakra + - Prekaya + - Prekiprever + - Prekirar + - Prepahihibar + - Prepetratrat + - Prepixihrapa + - Preprete + - Preretetre + - Prerexike + - Presharesre + - Presravi + - Presrere + - Presriskipre + - Pretere + - Pretetisrir + - Pretexiprar + - Pretihre + - Pretrakre + - Pretrike + - Pretrisra + - Prevakre + - Prevecrere + - Prevesriti + - Preveti + - Previkrahihi + - Previkri + - Prevritrare + - Prevrivi + - Prexatrar + - Prexeshe + - Prexicracrak + - Preyatra + - Pribatretrek + - Pribavibache + - Pribirivava + - Pribivrivrit + - Pricheyayat + - Pricrapapat + - Pricrihi + - Prihavri + - Prihetiya + - Prihrechabi + - Prikebixi + - Prikricha + - Prikripi + - Prikripikiki + - Prikrishi + - Pripachiya + - Pripavrepri + - Pripixixik + - Pripraske + - Priprecheha + - Pripripepek + - Prirakre + - Prirasher + - Priraske + - Prireprehar + - Pririhi + - Prishehe + - Prishepaxixi + - Prishitarabe + - Priskake + - Prisraxi + - Pritabaski + - Pritakir + - Pritecra + - Pritehavivi + - Pritepa + - Pritichahi + - Privayayak + - Privipecre + - Privrihareya + - Prixarake + - Prixepa + - Prixetre + - Prixivrekri + - Priyaprar + - Rabehiya + - Rabeparere + - Rabereshebe + - Rabichechet + - Rachare + - Racraba + - Racrakeka + - Racrakreheri + - Rahavevahi + - Rahevripeshi + - Rahibebetat + - Rahihratata + - Rahipe + - Rahraba + - Rahrecri + - Rahreyavri + - Rahritretrek + - Rakekikitrir + - Rakicrecrek + - Rakipipihrat + - Rakreprikri + - Rapivrivrere + - Rarahaka + - Raretriya + - Rasheshashat + - Rasheshevri + - Rashihretra + - Rashikrehre + - Rasriber + - Ratabibihet + - Ratesraprar + - Ratitritrik + - Ratravi + - Ratrebi + - Ratreyayak + - Ratrihrikri + - Ravecher + - Ravepexi + - Ravihrahrak + - Ravixexebet + - Ravrisheke + - Ravrivrikri + - Raxahehet + - Raxetapa + - Raxete + - Raxevahre + - Rayachesheta + - Rebakre + - Rebebikiki + - Rebicracrak + - Rebipi + - Rebisriyaya + - Rebitetebit + - Recheper + - Recraskehe + - Recrekariri + - Rehepipibet + - Rehresheshet + - Rehrikrikrik + - Rehrire + - Rekaskaskak + - Rekracha + - Rekripreprek + - Repeche + - Repetrir + - Repexishe + - Repivesheri + - Repivrasra + - Reprihri + - Reprishishik + - Rerahahat + - Rereba + - Rerirevra + - Reskebexexe + - Reskehahat + - Reskivavak + - Reskixibira + - Resrecracrat + - Resretra + - Resrihrepeke + - Resriske + - Resrixiha + - Retaskahri + - Retavavatet + - Retaveche + - Retecha + - Retevravrak + - Retrete + - Retrexehehri + - Retripritri + - Revasri + - Revetitipret + - Revikrebiya + - Revripra + - Revritrer + - Rexabaska + - Rexataxa + - Ribatre + - Ribebahihi + - Ribehashishi + - Ribiheva + - Ricrehaska + - Rihava + - Rihaxicre + - Rihekrekrek + - Rihipapar + - Rihrachepi + - Rihravatir + - Rikevra + - Rikipa + - Rikiskapipi + - Rikivrevra + - Rikrachi + - Rikrepa + - Rikreravribe + - Ripibivrir + - Ripihrepapa + - Ripreshikre + - Rirevi + - Riribebe + - Riribeska + - Riricheshe + - Riricrehra + - Riricriti + - Ririhari + - Ririhepreski + - Ririhite + - Ririhixir + - Ririkavrire + - Ririkeve + - Ririkrekaska + - Ririkrexeti + - Riripasha + - Riripraprapi + - Ririrarerera + - Riririhacha + - Ririshihi + - Ririskatre + - Ririskihe + - Ririskiri + - Ririsravra + - Riritihihit + - Riritiskaba + - Rirititahi + - Riritrebi + - Riritrexexek + - Ririvihrar + - Ririvreshiya + - Ririvretra + - Ririyaskihe + - Rishacriker + - Rishaskar + - Rishepi + - Riskavrer + - Riskekar + - Riskepriba + - Riskesre + - Riskirasre + - Riskiskeha + - Risratretete + - Risratrihihi + - Risrevre + - Risritracre + - Risrivire + - Ritaha + - Ritahrecra + - Ritekrakapre + - Riteva + - Ritresrakri + - Ritrihe + - Ritrirecra + - Ritrishixi + - Rivretripapa + - Rivrivrishi + - Rixahritri + - Rixaterete + - Rixecrekre + - Rixepapat + - Rixeti + - Rixibihrihri + - Rixiskirepri + - Rixixaxavrat + - Riyahrahrat + - Riyapare + - Riyasri + - Shabirivri + - Shachikir + - Shacrevavak + - Shacrevrake + - Shahaprahri + - Shahaxaxak + - Shahekeket + - Shaheskate + - Shahexer + - Shahrasher + - Shahrati + - Shahripracri + - Shakekrirabe + - Shakrichar + - Shapesrikaka + - Shapibi + - Shapretra + - Sharapire + - Sharesrasrat + - Sharihesrehi + - Sharihre + - Sharipiva + - Sharitrihri + - Shashishibe + - Shashisravi + - Shaskehepre + - Shaskepahre + - Shaskitra + - Shatretaxi + - Shavaprika + - Shavashakri + - Shavexexati + - Shavisha + - Shavrivre + - Shaxepachi + - Shayakrakrak + - Shebevrirere + - Shebipeskixa + - Shebiva + - Shecheyababa + - Shecrapricre + - Shehibe + - Shehrayashar + - Shehrebite + - Shehreha + - Shehreske + - Shehreyayar + - Shehriskar + - Shekake + - Shekakesri + - Shekapiski + - Shekeska + - Shekikakat + - Shekrira + - Shepechichik + - Shepeshesra + - Shepeskiskik + - Shepetrati + - Shepevrevrer + - Shepikitepa + - Sheprekritri + - Shepreskete + - Sherati + - Sherikre + - Sheriskahe + - Sheshasri + - Sheshihesha + - Shesrabibik + - Shesrachiski + - Shesrihihit + - Shetachavre + - Shetasre + - Shetikitata + - Shetracrar + - Shetriha + - Shevabi + - Shevecrepi + - Shevrahe + - Shevrevri + - Shevriya + - Shexachi + - Shexahrehret + - Shexecra + - Shexishishit + - Shexivir + - Sheyasha + - Shibatra + - Shibecreka + - Shibekrekret + - Shibivribe + - Shichebebet + - Shichecha + - Shicheririt + - Shichikrakre + - Shicrachi + - Shihebihre + - Shihecricrik + - Shihishar + - Shihiska + - Shihrapikra + - Shihrehepri + - Shihrerebe + - Shihrevihre + - Shikechachat + - Shikeshecra + - Shikikivri + - Shikraxi + - Shikrehre + - Shikreprer + - Shipehabaske + - Shipicreki + - Shipipapaxak + - Shipratate + - Shipriki + - Shipritraha + - Shiribebepit + - Shisrisheri + - Shitehechi + - Shitexihre + - Shitibibik + - Shitravrekra + - Shivababat + - Shivexehra + - Shivive + - Shivraheki + - Shivrayayak + - Shivrebapra + - Shivrepa + - Shixaya + - Sikibavipa + - Sikibisriche + - Sikichape + - Sikichapi + - Sikichekasha + - Sikichiyaski + - Sikicracre + - Sikicrexa + - Sikicrixi + - Sikiketraya + - Sikikrasre + - Sikikreke + - Sikipecripre + - Sikipetre + - Sikiprasrake + - Sikiprira + - Sikirehivre + - Sikirepreri + - Sikiskacra + - Sikiskevavak + - Sikiskite + - Sikisraber + - Sikisrekakat + - Sikisresha + - Sikitaski + - Sikitevre + - Sikiticre + - Sikitrashate + - Sikitrihrepi + - Sikitrirepre + - Sikivate + - Sikiveskar + - Sikivrahra + - Sikivrisrita + - Sikivritiri + - Sikixicrebar + - Siribacrache + - Siribetraska + - Siribikra + - Siricharabe + - Sirihaxer + - Sirihicripa + - Sirihihahat + - Sirihihapa + - Sirikaski + - Sirikatatat + - Siripepahe + - Siriprahra + - Siriprehavi + - Siripreteske + - Siriraki + - Siriraski + - Sirirekeba + - Sirireter + - Sirishatache + - Sirishehevre + - Siriskesrave + - Siriskihipe + - Sirisrekivi + - Sirisretre + - Siriteche + - Siritrahe + - Siritrixexet + - Sirivrekehri + - Sirivretatre + - Skabaresre + - Skabehricra + - Skabipre + - Skachabeta + - Skachibi + - Skachihive + - Skachishaha + - Skacraxaxak + - Skacrehrapre + - Skacrichisre + - Skacrixiche + - Skahipevra + - Skahixahehe + - Skahracha + - Skahravrive + - Skahreve + - Skahrivrepra + - Skakasha + - Skakava + - Skakavevet + - Skakeskaskat + - Skakevravrak + - Skapape + - Skapapriprit + - Skarebihira + - Skarechachak + - Skarepishi + - Skarexapreti + - Skashihrir + - Skaterarar + - Skatetasre + - Skatrichebe + - Skavarerahri + - Skavicrecrer + - Skavitetexi + - Skavrekreti + - Skavritre + - Skaxisrakre + - Skayabere + - Skayatepra + - Skebaprara + - Skechikreba + - Skecracheker + - Skecraprir + - Skecrita + - Skehevreshe + - Skehichitra + - Skehipe + - Skekapra + - Skekekritra + - Skeketir + - Skekrababe + - Skekraxer + - Skekretake + - Skepare + - Skepitetexik + - Skerepepehit + - Skereri + - Skeripribihe + - Skeriska + - Skeshikite + - Skeskahe + - Skeskibishi + - Skesrisrer + - Sketaha + - Sketahevra + - Sketashakra + - Sketatretrek + - Sketavri + - Sketepechi + - Sketivapapa + - Sketivre + - Sketrarivava + - Sketrekrepe + - Skevaskiskik + - Skevaxi + - Skevrabari + - Skevrahrepa + - Skevrecra + - Skevrehraki + - Skevrihrave + - Skexipi + - Skexixeska + - Skibacricrit + - Skibapraxe + - Skibevravrat + - Skibiravri + - Skibita + - Skichabi + - Skichapipit + - Skichebir + - Skichiske + - Skicreraskar + - Skicrihihe + - Skihekar + - Skiheyaskir + - Skihricher + - Skikeskesket + - Skikrahre + - Skikraprara + - Skikrisha + - Skipashihre + - Skipechishi + - Skiprapra + - Skipraripi + - Skipreve + - Skiprevivik + - Skiripipik + - Skishachi + - Skishapehehe + - Skiskevaski + - Skiskevririr + - Skisrekecra + - Skitraki + - Skitrepi + - Skitreske + - Skivekri + - Skivibibik + - Skiviska + - Skivrihri + - Skivrivreki + - Skixara + - Skixareter + - Skixetihechi + - Skixiha + - Skixisrapre + - Srabavrechi + - Srabisreveke + - Srachavicha + - Sracrare + - Srahahihir + - Srahihripra + - Srahriyar + - Srakipahehe + - Srakireret + - Srakrakrishi + - Srapahre + - Srapikretra + - Srapribekehi + - Srarekepar + - Sraribeski + - Srariprer + - Srarisha + - Srashacha + - Srashakri + - Srashaxata + - Srashikirir + - Sraskabikri + - Sraskechipe + - Sraskehreri + - Sraskekepiva + - Sraskekisra + - Sraskiba + - Sraskishar + - Srasrivate + - Sratepre + - Srateve + - Sraticre + - Sratihi + - Sratiki + - Sratraxixir + - Sratrike + - Sravechachar + - Sravrapapat + - Sraxape + - Sraxepipir + - Sraxeskicri + - Srebaskaskar + - Srebecrir + - Srebekrabi + - Srebikrir + - Srechepe + - Srecravra + - Srecravre + - Srecrisre + - Srehetahi + - Srehikrar + - Srehivavri + - Srehrehiske + - Srekacrexeve + - Srekreprexe + - Srekrikra + - Srekrititit + - Srepesrexi + - Srepipritri + - Srepisrasre + - Sreprekra + - Srepreshe + - Sreracricrar + - Srerevre + - Srerihra + - Sreshebakiki + - Sresheskixi + - Sreshiprari + - Sreskichi + - Sreskicre + - Sresrahapi + - Sresrekikit + - Sresrikre + - Sretasresri + - Sretishashak + - Sretraticrir + - Srevesra + - Srevesrixari + - Srevivre + - Srevraxipi + - Srevreyayak + - Srexatreva + - Srexikrata + - Srexiskahehe + - Sribavar + - Sribebe + - Sribireke + - Srichepi + - Srichivekaka + - Sricrevepa + - Sriheshexi + - Srihrahevrir + - Srihrakratri + - Srihrekexi + - Srikasresha + - Srikiriki + - Srikratra + - Sripaba + - Sripahebevri + - Sripahre + - Sriprikacha + - Sriracricrit + - Sririhre + - Sriripre + - Srisheyaxexe + - Srishibicri + - Srishikatre + - Sriskicrixi + - Sriskihra + - Sriskisha + - Srisratreba + - Srisrebepi + - Srisrete + - Sritasker + - Sritekrikrir + - Sriteskabe + - Sritiprebe + - Sritiske + - Sritrapashe + - Sritricha + - Sritripipir + - Srivake + - Srivaxa + - Srivekater + - Srivisra + - Srivrasrer + - Srivratre + - Srivrihrir + - Srixakrabebe + - Srixiveyaya + - Sriyapir + - Taabavrivrir + - Taabexitaski + - Taabiprete + - Taachabe + - Taacrahre + - Taacrecrasra + - Taacripi + - Taacrisretri + - Taahahre + - Taahecreta + - Taaherarak + - Taahiha + - Taahiska + - Taahivri + - Taahreke + - Taahrishepri + - Taakahevava + - Taakapa + - Taakexisker + - Taakraba + - Taapavevekik + - Taapecra + - Taapikashi + - Taapipihare + - Taapishi + - Taaprachikri + - Taaprivrapre + - Taarecra + - Taareshekra + - Taashaxikir + - Taashebititi + - Taaskatir + - Taaskevevava + - Taaskiteki + - Taasrebicre + - Taasrehrira + - Taasrikikit + - Taasritar + - Taataxe + - Taatevasre + - Taatihra + - Taatrate + - Taatrivivit + - Taavape + - Taavavrexi + - Taavrerapava + - Taavretri + - Taavrivi + - Taaxekakat + - Taaxesrite + - Taaxikra + - Taayarashe + - Teebapresri + - Teebechiya + - Teebivrichi + - Teechacraha + - Teechexe + - Teechihakri + - Teecrekrihre + - Teecrepeski + - Teecretri + - Teecrevretre + - Teehapraprar + - Teeheri + - Teehrahar + - Teehrepeskir + - Teehrirepipi + - Teekahicravi + - Teekepraxahe + - Teekipra + - Teepracrivri + - Teeprikexixi + - Teeraheher + - Teerecritri + - Teeriviyara + - Teeskapesri + - Teeskebecrar + - Teesrasraxa + - Teesrecha + - Teesretrir + - Teesribiba + - Teetahra + - Teetixi + - Teetrasrer + - Teetreskapri + - Teevahihivik + - Teevapriprar + - Teevepa + - Teevravreske + - Teexaketiti + - Teexera + - Teexihrir + - Teeyakra + - Tibaskaskak + - Tibasravava + - Tibihi + - Tibixita + - Ticheskivre + - Tichetritrir + - Tichiber + - Ticratevipe + - Tihichisketi + - Tihitre + - Tihresrevivi + - Tihrikakar + - Tikara + - Tikecribe + - Tikekitata + - Tikrasra + - Tikrevrihre + - Tipape + - Tipekrihripa + - Tipetripe + - Tipicre + - Tipreritaha + - Tipresrita + - Tiprititik + - Tireper + - Tiribavre + - Tiriberihehe + - Tiribikehe + - Tiribirakeke + - Tirichera + - Tirihayaya + - Tirihi + - Tirihra + - Tirihretrir + - Tirihriririk + - Tiriketeche + - Tirikeviha + - Tirikihrer + - Tirikrachir + - Tirikrasri + - Tiripechapre + - Tiripratra + - Tiriprexer + - Tirirahi + - Tirirapahre + - Tirirarat + - Tirirexiprer + - Tirisrehihit + - Tirisribe + - Tiritetasra + - Tiritrexi + - Tiritrivever + - Tiriveshi + - Tirivihachi + - Tirivrebire + - Tirixahiri + - Tirixebayar + - Tirixetatak + - Tirixishiski + - Tiriyaskacha + - Tishetrakaka + - Tiskasheske + - Tiskevritre + - Tiskicrar + - Tisraprepret + - Tisrasheshet + - Tisreshishit + - Tisreska + - Tisricre + - Tisriskiskir + - Tisrivexa + - Titeskeskek + - Titrabetiti + - Titretepeka + - Tivarahi + - Tivecra + - Tivecri + - Tivepa + - Tivevipe + - Tivexa + - Tiviskaskak + - Tixapipripri + - Tixetritrik + - Tixikekra + - Tixititik + - Tixixesrer + - Tiyapraprak + - Tiyaskaskat + - Trabari + - Trabisrer + - Tracrecrehri + - Tracreprake + - Trahahehetir + - Trahekehe + - Trahevreske + - Trahrepa + - Trahrevrava + - Trakehre + - Trakrapra + - Trakritevrer + - Trapavrivrir + - Trareskire + - Trashete + - Trasheve + - Trashevepri + - Trashipaxe + - Trasraveski + - Trasreve + - Tratibekaka + - Tratihrer + - Tratravi + - Tratraxixik + - Tratribi + - Travaxeski + - Travetretrek + - Travraripepe + - Travribesre + - Traxipi + - Traxiprer + - Trebahe + - Trebirerever + - Trebishivava + - Trebitratrak + - Trechacra + - Trechekrasri + - Trechesre + - Trechesrecre + - Trecrehehek + - Trehixapri + - Trehrakrepre + - Trehripra + - Trekatri + - Trekatricre + - Trekavixixi + - Trekavriki + - Trekebeti + - Trekeski + - Treketibita + - Treketra + - Trekibabat + - Trepake + - Treprabiveve + - Treprahrepi + - Treprebekra + - Treprehehet + - Trerevivipek + - Treshepra + - Treshibar + - Treshipeska + - Treskari + - Tresketara + - Treskiskakir + - Tresracrir + - Tresrasker + - Tresratracre + - Tresravritre + - Tresreba + - Tresrihivri + - Tretapra + - Tretrahri + - Tretreske + - Tretrikicha + - Trevabihra + - Trevepa + - Trevetretrek + - Trevicra + - Trexatri + - Trexavra + - Trexetri + - Trexiricrara + - Treyakracra + - Treyaxihehe + - Tribexexet + - Tribirekri + - Trichakripre + - Trichiski + - Tricracri + - Tricrekapa + - Tricripe + - Trihavever + - Trihera + - Trihexisra + - Trihicrecrek + - Trihitrar + - Tripesrishe + - Tripever + - Triprakraxi + - Triprakri + - Trirahecri + - Trirapraxar + - Trireche + - Trishakretra + - Trishecrexir + - Trishepi + - Trishisrar + - Triskavri + - Trisketir + - Triskiyayat + - Trisrachiri + - Trisrevre + - Trisrisri + - Trisrisriper + - Trisrite + - Tritetre + - Tritrakepre + - Tritrichatri + - Tritriskari + - Trivriskeki + - Trivritipipi + - Trivriyayak + - Trixihahar + - Trixitri + - Triyashekiki + - Vabahecre + - Vabahrabebe + - Vabebir + - Vabehetre + - Vabetrahacha + - Vabivri + - Vachahrirere + - Vachavri + - Vachekihri + - Vachicratata + - Vachiske + - Vacracreki + - Vacrebihi + - Vacripra + - Vahapapashek + - Vahapraxe + - Vahasker + - Vaherekiki + - Vahibebeprek + - Vahivihahe + - Vakaheva + - Vakecha + - Vakevixixi + - Vakikepripra + - Vapeyayak + - Vapikevra + - Vapipribe + - Vaprakakak + - Vaprisra + - Vapritasha + - Varebitacre + - Varekricreki + - Vashakrikrik + - Vaskexititi + - Vaskiprexi + - Vaskivri + - Vaskiyahi + - Vasraprikre + - Vasrevi + - Vatracraxixi + - Vatrevi + - Vatriva + - Vavehihisrek + - Vavrisrasri + - Vaxeki + - Vaxeraskeske + - Vebexaxat + - Vebicheta + - Vechecricrik + - Vecraxicra + - Vecriche + - Vecritrika + - Vehevrer + - Vehratrir + - Vehraxexek + - Vehritrexe + - Vekarasra + - Vekaxivivi + - Vekehribaba + - Vekirevi + - Vekracri + - Vekreka + - Vekrekrikrit + - Vekrerikra + - Vekrishar + - Vekrishicha + - Vepekre + - Veprahahat + - Veprechahri + - Veprecrar + - Veprecrecrek + - Vepreritare + - Veretitishit + - Vericharihra + - Verikisresre + - Veshacricrik + - Veshebixexe + - Veshecrihapi + - Veshehe + - Veshepreprek + - Veshishakra + - Veskapi + - Veskepayaya + - Veskepevra + - Vesrihiska + - Vetepeti + - Vetracripi + - Vetreshashat + - Vetriskira + - Vevatre + - Vevevre + - Vevivesha + - Vevreshir + - Vevricrecrek + - Vevrisrasrat + - Vexachebashi + - Vexavever + - Vexikar + - Vexisrecri + - Vibepraxaba + - Vibeta + - Vichehiriri + - Vichitribihe + - Vicrahrehrek + - Vicrevevre + - Vicrikre + - Vicripasre + - Vicritebaba + - Vicriviriki + - Viheche + - Vihecracheki + - Vihepra + - Vihratekra + - Vihrexahihi + - Vihribihiska + - Vihricra + - Vihriher + - Vihriprar + - Vihrisreher + - Vikahrekri + - Vikakehreri + - Vikavebari + - Vikekiski + - Vikihahre + - Vikitrexa + - Vikrebibit + - Vikrihi + - Vikritahahe + - Vipeskixa + - Vipravrakrar + - Viprevrar + - Virabebevrek + - Viratrerera + - Virepri + - Viriprixiche + - Virirevrare + - Viritritrik + - Viskeski + - Visrecrecret + - Visriskir + - Vitexexet + - Vitibibihrik + - Vitika + - Vitracrevi + - Vitrasheshek + - Vitraviketa + - Vitravrire + - Vitreskaskak + - Vitrisrasha + - Vitrivechere + - Vivashate + - Vivecrixexe + - Viveprehehe + - Viveprepe + - Vivixixihir + - Vivrashaya + - Vixiticrixi + - Vrabaprakaka + - Vrabikape + - Vracharitri + - Vrachishachi + - Vrachitasre + - Vracrebihehe + - Vraheska + - Vrahrehripre + - Vrakasrahi + - Vrakayasraxi + - Vrakebibit + - Vrakriperi + - Vrakritatat + - Vrapaheke + - Vrapresriki + - Vraprexave + - Vrarekikik + - Vrarihritete + - Vraripechi + - Vrashexa + - Vraskekaki + - Vraskevexar + - Vrasrehahar + - Vrasreshahi + - Vratavivit + - Vratevretra + - Vratrakere + - Vratreskevi + - Vratrite + - Vratrivar + - Vravabepra + - Vravacrahri + - Vravavra + - Vravexe + - Vraviveya + - Vravrache + - Vraxihihit + - Vrayavri + - Vrebehrihrik + - Vrebisra + - Vrecrarake + - Vrecrihri + - Vrehabi + - Vrehacre + - Vrehakatar + - Vrehasker + - Vrehecreri + - Vrehibehe + - Vrehibibipik + - Vrehipe + - Vrehipraprak + - Vrehriviche + - Vrekahrichi + - Vrekihrer + - Vrekipepet + - Vrekrixa + - Vrepate + - Vrepexexer + - Vreprehapre + - Vreprihrite + - Vrererikra + - Vrerikriskir + - Vreshabar + - Vreshihishar + - Vreshike + - Vreskatre + - Vresrasre + - Vresretatra + - Vretesravi + - Vretixixir + - Vretrapapar + - Vretrehivivi + - Vretricre + - Vrevahrir + - Vrevashixexe + - Vrevrekrer + - Vrexacracrat + - Vrexaker + - Vribetretret + - Vribipita + - Vribiprevite + - Vricrehakra + - Vricrihi + - Vricriskeche + - Vrihehra + - Vriheski + - Vrihrakre + - Vrihrekrepi + - Vrikayaba + - Vrikivresker + - Vrikrake + - Vrikrebacre + - Vrikresrasri + - Vripere + - Vripexavri + - Vripitikeske + - Vriprivra + - Vrirachesri + - Vririsha + - Vrisketaske + - Vriskiraxe + - Vriskire + - Vrisracrakri + - Vrisrekari + - Vrisreviki + - Vritasre + - Vriterepi + - Vritetrexa + - Vritika + - Vritiske + - Vritivraki + - Vritrihrar + - Vritrisre + - Vrivahi + - Vrivahishaya + - Vrivehatri + - Vrivitri + - Vrixashashar + - Vrixavribape + - Vrixeprir + - Vrixiprehre + - Vrixitreveki + - Vrixivraxe + - Xabishetra + - Xachivrivrit + - Xacripikar + - Xacriprixi + - Xacrivir + - Xahatavri + - Xahesketivri + - Xahrapaba + - Xahraprer + - Xahrebave + - Xahripavava + - Xakahri + - Xakayayakat + - Xakrevaratra + - Xapakra + - Xapikrikrik + - Xapipevrevre + - Xapraskapika + - Xaprate + - Xapravri + - Xapripraprar + - Xaracrivri + - Xaratripepe + - Xarebiya + - Xareva + - Xariheheprat + - Xashihapa + - Xaskakaba + - Xaskararater + - Xasrapipik + - Xasreskihibi + - Xatachasri + - Xatereret + - Xatiriskiski + - Xatrexixik + - Xavasrarihi + - Xaveshi + - Xavicrari + - Xavrahavri + - Xavricri + - Xavrire + - Xavrixecre + - Xaxikaxexe + - Xaxikresha + - Xaxiska + - Xayaskihri + - Xebechi + - Xebetetet + - Xebitretrek + - Xechacrecrek + - Xechibare + - Xecrixaxitre + - Xehekikir + - Xehetipe + - Xehichatavra + - Xehiprishe + - Xehiteche + - Xehrevrakre + - Xehrishe + - Xekerarivra + - Xekicra + - Xekrecri + - Xekrevri + - Xekrevripa + - Xepavikeba + - Xepehati + - Xepeter + - Xepetitipet + - Xeprasre + - Xeprekivra + - Xeprihehek + - Xeshachikaha + - Xeskapakre + - Xeskehrabe + - Xesribar + - Xetekir + - Xetraskesket + - Xetravivik + - Xetrexahihi + - Xetribirer + - Xetripi + - Xevetaske + - Xevratikepa + - Xevriya + - Xexapra + - Xexavi + - Xexibir + - Xexiski + - Xeyapre + - Xeyaribe + - Xeyaskapibe + - Xibecracrak + - Xibeha + - Xibepribe + - Xibitratrar + - Xihechevar + - Xihrahehete + - Xihrashehihi + - Xihrecreve + - Xihresra + - Xihrivever + - Xikabebet + - Xikahihi + - Xikashaxe + - Xikaske + - Xikepehrahra + - Xikicha + - Xikrahrihrik + - Xikrakipi + - Xikreshe + - Xikreska + - Xikrexiva + - Xikrihe + - Xikripar + - Xipahihik + - Xipita + - Xiprahahatek + - Xirechiske + - Xireshishit + - Xiribakrivi + - Xirichare + - Xirichebacra + - Xirichiter + - Xiricraki + - Xirihacrir + - Xirihiske + - Xirihiyatape + - Xirihrekakar + - Xirihretecre + - Xirihriti + - Xirikesrirer + - Xiriketi + - Xiripape + - Xiririhecher + - Xiririke + - Xiriripatibe + - Xirishepivre + - Xirishexi + - Xiriskapa + - Xirisketa + - Xiriskicreha + - Xirisrevre + - Xirisricreva + - Xiritracre + - Xiritreprer + - Xiritretrar + - Xirivetrikra + - Xirivexicri + - Xirivre + - Xirivrehra + - Xirixekrari + - Xishahrixixi + - Xishatre + - Xishehraxaxa + - Xishikra + - Xiskatreka + - Xiskeche + - Xiskehrahar + - Xiskicratake + - Xiskiririr + - Xisrecracrak + - Xisreva + - Xisritetet + - Xitachabibi + - Xitachixaxa + - Xitariritak + - Xitebehrer + - Xitreprecri + - Xivavraxexe + - Xiveski + - Xivivri + - Xivrahrare + - Xivrakrakrak + - Xivrihihicra + - Xixaxekaka + - Xixecra + - Xixiche diff --git a/Resources/Prototypes/Entities/Mobs/Species/vox.yml b/Resources/Prototypes/Entities/Mobs/Species/vox.yml index e17b2f70805c13..184711ec1e5129 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/vox.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/vox.yml @@ -8,105 +8,45 @@ - type: Icon sprite: Mobs/Species/Vox/parts.rsi state: vox_m - - type: Sprite - layers: - - map: [ "enum.HumanoidVisualLayers.Chest" ] - sprite: Mobs/Species/Vox/parts.rsi - state: torso_m - - map: [ "enum.HumanoidVisualLayers.Head" ] - sprite: Mobs/Species/Vox/parts.rsi - state: head_m - - map: [ "enum.HumanoidVisualLayers.Eyes" ] - color: "#008800" - sprite: Mobs/Customization/eyes.rsi - state: vox_eyes_s - - map: [ "enum.HumanoidVisualLayers.RArm" ] - sprite: Mobs/Species/Vox/parts.rsi - state: r_arm - - map: [ "enum.HumanoidVisualLayers.LArm" ] - sprite: Mobs/Species/Vox/parts.rsi - state: l_arm - - map: [ "enum.HumanoidVisualLayers.RLeg" ] - sprite: Mobs/Species/Vox/parts.rsi - state: r_leg - - map: [ "enum.HumanoidVisualLayers.LLeg" ] - sprite: Mobs/Species/Vox/parts.rsi - state: l_leg - # Vox don't have female clothing masks. - #- shader: StencilClear - # sprite: Mobs/Species/Vox/parts.rsi - # state: l_leg - #- shader: StencilMask - # map: [ "enum.HumanoidVisualLayers.FemaleStencilMask" ] - # sprite: Mobs/Customization/masking_helpers.rsi - # state: female_full - # visible: false - #- map: [ "jumpsuit" ] - # shader: StencilDraw - - map: [ "enum.HumanoidVisualLayers.LHand" ] - sprite: Mobs/Species/Vox/parts.rsi - state: l_hand - - map: [ "enum.HumanoidVisualLayers.RHand" ] - sprite: Mobs/Species/Vox/parts.rsi - state: r_hand - - map: [ "enum.HumanoidVisualLayers.LFoot" ] - sprite: Mobs/Species/Vox/parts.rsi - state: l_foot - - map: [ "enum.HumanoidVisualLayers.RFoot" ] - sprite: Mobs/Species/Vox/parts.rsi - state: r_foot - - map: [ "enum.HumanoidVisualLayers.Handcuffs" ] - color: "#ffffff" - sprite: Objects/Misc/handcuffs.rsi - state: body-overlay-2 - visible: false - - map: [ "gloves" ] - - map: [ "shoes" ] - - map: [ "ears" ] - - map: [ "outerClothing" ] - - map: [ "eyes" ] - - map: [ "belt" ] - - map: [ "id" ] - - map: [ "neck" ] - - map: [ "back" ] - - map: [ "enum.HumanoidVisualLayers.FacialHair" ] - state: shaved - sprite: Mobs/Customization/human_facial_hair.rsi - - map: [ "enum.HumanoidVisualLayers.Hair" ] - state: bald - sprite: Mobs/Customization/human_hair.rsi - - map: [ "mask" ] - - map: [ "head" ] - - map: [ "pocket1" ] - - map: [ "pocket2" ] - type: Body prototype: Vox requiredLegs: 2 - # Vox nitrogen stuff is handled in their metabolism - - type: Respirator - damage: - types: - Asphyxiation: 2 - damageRecovery: - types: - Asphyxiation: -1.0 - type: HumanoidAppearance species: Vox - # canColorHair: false - # canColorFacialHair: false - - type: Inventory - speciesId: vox - - type: InventorySlots - - type: Butcherable - butcheringType: Spike - spawned: - - id: FoodMeatChicken - amount: 5 + #- type: VoxAccent # Not yet coded + - type: Speech + speechVerb: Vox + speechSounds: Vox + - type: TypingIndicator + proto: vox - type: Vocal sounds: Male: UnisexVox Female: UnisexVox Unsexed: UnisexVox + - type: Butcherable + butcheringType: Spike + spawned: + - id: FoodMeatChicken + amount: 5 + - type: Damageable + damageContainer: Biological + damageModifierSet: Vox + - type: DamageVisuals + damageOverlayGroups: + Brute: + sprite: Mobs/Effects/brute_damage.rsi + color: "#7a8bf2" + - type: Bloodstream + bloodReagent: AmmoniaBlood + - type: MeleeWeapon + soundHit: + path: /Audio/Weapons/pierce.ogg + angle: 30 + animation: WeaponArcClaw + damage: + types: + Slash: 5 # Reduce? - type: entity parent: BaseSpeciesDummy diff --git a/Resources/Prototypes/Reagents/biological.yml b/Resources/Prototypes/Reagents/biological.yml index d29d5f7e4dafcd..ce3d0a0463762e 100644 --- a/Resources/Prototypes/Reagents/biological.yml +++ b/Resources/Prototypes/Reagents/biological.yml @@ -91,6 +91,18 @@ physicalDesc: reagent-physical-desc-ferrous slippery: false +- type: reagent + parent: Blood + id: AmmoniaBlood + name: reagent-name-ammonia-blood + group: Biological + desc: reagent-desc-ammonia-blood + flavor: bitter + color: "#7a8bf2" + recognizable: true + physicalDesc: reagent-physical-desc-pungent + slippery: false + - type: reagent id: ZombieBlood name: reagent-name-zombie-blood @@ -183,4 +195,4 @@ footstepSound: collection: FootstepBlood params: - volume: 6 \ No newline at end of file + volume: 6 diff --git a/Resources/Prototypes/Species/vox.yml b/Resources/Prototypes/Species/vox.yml index 482997a1068fd6..605087a687b003 100644 --- a/Resources/Prototypes/Species/vox.yml +++ b/Resources/Prototypes/Species/vox.yml @@ -1,12 +1,18 @@ - type: species id: Vox - name: Vox + name: species-name-vox roundStart: false # sad... prototype: MobVox sprites: MobVoxSprites markingLimits: MobVoxMarkingLimits dollPrototype: MobVoxDummy skinColoration: Hues + maleFirstNames: names_vox + femaleFirstNames: names_vox + naming: First + sexes: + - Unsexed + - type: speciesBaseSprites id: MobVoxSprites diff --git a/Resources/Prototypes/Voice/speech_emote_sounds.yml b/Resources/Prototypes/Voice/speech_emote_sounds.yml index f6b630e5c00964..8df129f7869dd7 100644 --- a/Resources/Prototypes/Voice/speech_emote_sounds.yml +++ b/Resources/Prototypes/Voice/speech_emote_sounds.yml @@ -157,10 +157,14 @@ - type: emoteSounds id: UnisexVox - sound: - path: /Audio/Voice/Vox/shriek1.ogg - params: - variation: 0.125 + sounds: + Scream: + path: /Audio/Voice/Vox/shriek1.ogg + Laugh: + path: /Audio/Voice/Vox/vox_laugh.ogg + params: + variation: 0.125 + # We need vox sounds for the other emotes - type: emoteSounds id: UnisexDiona diff --git a/Resources/Prototypes/Voice/speech_sounds.yml b/Resources/Prototypes/Voice/speech_sounds.yml index abe6a8310295f7..eb47b5363b6936 100644 --- a/Resources/Prototypes/Voice/speech_sounds.yml +++ b/Resources/Prototypes/Voice/speech_sounds.yml @@ -88,6 +88,15 @@ exclaimSound: path: /Audio/Voice/Talk/slime_exclaim.ogg +- type: speechSounds + id: Vox + saySound: + path: /Audio/Voice/Talk/vox.ogg + askSound: + path: /Audio/Voice/Talk/vox_ask.ogg + exclaimSound: + path: /Audio/Voice/Talk/vox_exclaim.ogg + - type: speechSounds id: Arachnid saySound: @@ -105,7 +114,7 @@ path: /Audio/Animals/cat_meow.ogg exclaimSound: path: /Audio/Animals/cat_meow.ogg - + - type: speechSounds id: Dog saySound: @@ -113,4 +122,4 @@ askSound: path: /Audio/Animals/dog_bark3.ogg exclaimSound: - path: /Audio/Animals/dog_bark2.ogg \ No newline at end of file + path: /Audio/Animals/dog_bark2.ogg diff --git a/Resources/Prototypes/Voice/speech_verbs.yml b/Resources/Prototypes/Voice/speech_verbs.yml index b849a32a5487cb..1cdda32ece19c4 100644 --- a/Resources/Prototypes/Voice/speech_verbs.yml +++ b/Resources/Prototypes/Voice/speech_verbs.yml @@ -74,6 +74,13 @@ - chat-speech-verb-slime-2 - chat-speech-verb-slime-3 +- type: speechVerb + id: Vox + speechVerbStrings: + - chat-speech-verb-vox-1 + - chat-speech-verb-vox-2 + - chat-speech-verb-vox-3 + - type: speechVerb id: Plant speechVerbStrings: diff --git a/Resources/Prototypes/typing_indicator.yml b/Resources/Prototypes/typing_indicator.yml index 3a0484fc0b3dba..7271770ef503a7 100644 --- a/Resources/Prototypes/typing_indicator.yml +++ b/Resources/Prototypes/typing_indicator.yml @@ -34,6 +34,11 @@ typingState: spider0 offset: 0, 0.125 +- type: typingIndicator + id: vox + typingState: vox0 + offset: -0.125, 0.125 + - type: typingIndicator id: lizard typingState: lizard0 diff --git a/Resources/Textures/Effects/speech.rsi/meta.json b/Resources/Textures/Effects/speech.rsi/meta.json index 65d5615b3e349e..98dd3b20607275 100644 --- a/Resources/Textures/Effects/speech.rsi/meta.json +++ b/Resources/Textures/Effects/speech.rsi/meta.json @@ -411,6 +411,17 @@ }, { "name": "spider2" + }, + { + "name": "vox0", + "delays": [ + [ + 0.3, + 0.3, + 0.3, + 0.4 + ] + ] } ] } diff --git a/Resources/Textures/Effects/speech.rsi/vox0.png b/Resources/Textures/Effects/speech.rsi/vox0.png new file mode 100644 index 0000000000000000000000000000000000000000..d4640b8f3518fdbf677e0ba827da2808f908f775 GIT binary patch literal 411 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=oCO|{#S9GGLLkg|>2BR01_nl7 zPZ!6KinzD89Qh79h#dR4az{e}mu(|Ur|iZevFh+7bE3+ z*`)n*m;L(scUi4iK2vH0OrTqHOw>gSdH3n~{UlBX1aY?}L(|zsV zwtpTMTDm83?E4fQ)cU&u1;r^V|RYrvELG^|Kv()jxH=x3Xssxc78&J;T+@+VWnuZ$FmSK93fE zzKMUz-6`*DvNil%7#LXu9Iz1!BAHr0PJ8`x&&h{Y^ZzowN literal 0 HcmV?d00001