Adds a racial language for every xeno who doesn't have one (#12082)

* Bonespeak added as plasmeme racial language

* Cleaned up sheltered trait to work for the forseeable future with any language changes. i think

* bone

* .

* BUG LANGUAGE BUG LANGUAGE

* buggin

* i forgor

* Update negative.dm

had these bad boys flipped. i think

* THEY'RE PEOPLE TOO

* snap crackle pop language for lightbulbs

* m is reserved for mice i guess oops (thanks ynot)

* i don't know where to find these icons god damn my soul

* codersprites lmao

* sprites sprites sprites

* more sprite shid

* tcomms updated with all languages

* etherEAN instead of ian what was i thinking god damn me

* oops

* forgot moff oops

* Update yogstation.dme

Co-authored-by: Jamie D <993128+JamieD1@users.noreply.github.com>
This commit is contained in:
Chubbygummibear
2021-08-25 16:12:55 -07:00
committed by GitHub
parent 92b1060943
commit 5a33e9a8ba
13 changed files with 96 additions and 4 deletions

View File

@@ -607,7 +607,7 @@
/datum/quirk/sheltered/on_spawn()
var/mob/living/carbon/human/H = quirk_holder
H.remove_language(/datum/language/common, FALSE, TRUE)
if(!H.can_speak_language(/datum/language/draconic) && !H.can_speak_language(/datum/language/machine) && !H.can_speak_language(/datum/language/sylvan))
if(!H.get_selected_language())
H.grant_language(/datum/language/japanese)
/datum/quirk/allergic

View File

@@ -0,0 +1,15 @@
/datum/language/bonespeak
name = "Bonespeak"
desc = "The rhythmic rattling Plasma People use to communicate."
speech_verb = "rattles"
ask_verb = "clicks"
exclaim_verb = "clatters"
key = "b"
flags = TONGUELESS_SPEECH
space_chance = 80
syllables = list(
"tktk", "creak", "krt", "clack", "rattle", "krr"
)
icon_state = "plasmaman"
default_priority = 90
sing_verb = "crackles"

View File

@@ -0,0 +1,15 @@
/datum/language/etherean
name = "Etherean"
desc = "The native language of the Ethereals."
speech_verb = "crackles"
ask_verb = "pops"
exclaim_verb = "jolts"
key = "3"
flags = TONGUELESS_SPEECH
space_chance = 70
syllables = list(
"zap", "pop", "zzzz", "bzzzz", "tzzt", "hmmmm", "mmmm", "dzzzt", "ohmm", "zpp"
)
icon_state = "ethereal"
default_priority = 90
sing_verb = "hums"

View File

@@ -317,6 +317,12 @@ Key procs
spoken_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/sylvan = list(LANGUAGE_ATOM))
/datum/language_holder/plasmaman
understood_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/bonespeak = list(LANGUAGE_ATOM))
spoken_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/bonespeak = list(LANGUAGE_ATOM))
/datum/language_holder/pod
understood_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/sylvan = list(LANGUAGE_ATOM))
@@ -335,6 +341,17 @@ Key procs
spoken_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/polysmorph = list(LANGUAGE_ATOM))
/datum/language_holder/mothmen
understood_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/mothian = list(LANGUAGE_ATOM))
spoken_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/mothian = list(LANGUAGE_ATOM))
/datum/language_holder/ethereal
understood_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/etherean = list(LANGUAGE_ATOM))
spoken_languages = list(/datum/language/common = list(LANGUAGE_ATOM),
/datum/language/etherean = list(LANGUAGE_ATOM))
/datum/language_holder/clockwork
understood_languages = list(/datum/language/common = list(LANGUAGE_ATOM),

View File

@@ -0,0 +1,15 @@
/datum/language/mothian
name = "Mothian"
desc = "The native language of the Moth people."
speech_verb = "flutters"
ask_verb = "chirps"
exclaim_verb = "buzzes loudly"
key = "2"
flags = TONGUELESS_SPEECH
space_chance = 100
syllables = list(
"bzz", "zzzt", "zzt", "zt", "clck", "tzip", "dzt", "dzzzt"
)
icon_state = "moth"
default_priority = 90
sing_verb = "trills"

View File

@@ -15,5 +15,5 @@
"incas", "int", "elc", "ent", "aws", "qip", "nas", "vil", "jens", "dila", "fa",
"la", "re", "do", "ji", "ae", "so", "qe", "ce", "na", "mo", "ha", "yu"
)
icon_state = "plant"
icon_state = "sylvan"
default_priority = 90

View File

@@ -17,6 +17,7 @@
species_traits = list(DYNCOLORS, AGENDER, NO_UNDERWEAR)
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC | RACE_SWAP | ERT_SPAWN | SLIME_EXTRACT
inherent_traits = list(TRAIT_NOHUNGER)
species_language_holder = /datum/language_holder/ethereal
sexes = FALSE //no fetish content allowed
toxic_food = NONE
inert_mutation = SHOCKTOUCH

View File

@@ -17,6 +17,7 @@
toxic_food = MEAT | RAW
mutanteyes = /obj/item/organ/eyes/moth
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_MAGIC | MIRROR_PRIDE | ERT_SPAWN | RACE_SWAP | SLIME_EXTRACT
species_language_holder = /datum/language_holder/mothmen
/datum/species/moth/regenerate_organs(mob/living/carbon/C,datum/species/old_species,replace_current=TRUE)
. = ..()

View File

@@ -21,6 +21,7 @@
disliked_food = FRUIT
liked_food = VEGETABLES | GRILLED
changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC
species_language_holder = /datum/language_holder/plasmaman
/datum/species/plasmaman/spec_life(mob/living/carbon/human/H)
var/datum/gas_mixture/environment = H.loc.return_air()

View File

@@ -20,6 +20,9 @@
/datum/language/aphasia,
/datum/language/piratespeak,
/datum/language/sylvan,
/datum/language/bonespeak,
/datum/language/mothian,
/datum/language/etherean,
/datum/language/japanese,
/datum/language/machine, //yogs
/datum/language/darkspawn, //also yogs

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@@ -2050,17 +2050,20 @@
#include "code\modules\keybindings\setup.dm"
#include "code\modules\language\aphasia.dm"
#include "code\modules\language\beachbum.dm"
#include "code\modules\language\bonespeak.dm"
#include "code\modules\language\codespeak.dm"
#include "code\modules\language\common.dm"
#include "code\modules\language\draconic.dm"
#include "code\modules\language\drone.dm"
#include "code\modules\language\egg.dm"
#include "code\modules\language\encrypted.dm"
#include "code\modules\language\etherean.dm"
#include "code\modules\language\language.dm"
#include "code\modules\language\language_holder.dm"
#include "code\modules\language\language_menu.dm"
#include "code\modules\language\machine.dm"
#include "code\modules\language\monkey.dm"
#include "code\modules\language\mothian.dm"
#include "code\modules\language\mouse.dm"
#include "code\modules\language\mushroom.dm"
#include "code\modules\language\narsian.dm"

View File

@@ -11,6 +11,10 @@
#define DRACONIC 16
#define BEACHTONGUE 32
#define SYLVAN 64
#define ETHEREAN 128
#define BONE 256
#define MOTH 512
GLOBAL_LIST_INIT(allowed_custom_spans,list(SPAN_ROBOT,SPAN_YELL,SPAN_ITALICS,SPAN_SANS,SPAN_COMMAND,SPAN_CLOWN))//Span classes that players are allowed to set in a radio transmission.
//this is fucking broken
GLOBAL_LIST_INIT(allowed_translations,list(/datum/language/common,/datum/language/machine,/datum/language/draconic))// language datums that players are allowed to translate to in a radio transmission.
@@ -117,7 +121,10 @@ GLOBAL_LIST_INIT(allowed_translations,list(/datum/language/common,/datum/languag
"polysmorph" = POLYSMORPH,
"draconic" = DRACONIC,
"beachtounge" = BEACHTONGUE,
"sylvan" = SYLVAN
"sylvan" = SYLVAN,
"etherean" = ETHEREAN,
"bonespeak" = BONE,
"mothian" = MOTH
)))
interpreter.Run() // run the thing
@@ -157,7 +164,12 @@ GLOBAL_LIST_INIT(allowed_translations,list(/datum/language/common,/datum/languag
oldlang = BEACHTONGUE
else if(oldlang == /datum/language/sylvan)
oldlang = SYLVAN
else if(oldlang == /datum/language/etherean)
oldlang = ETHEREAN
else if(oldlang == /datum/language/bonespeak)
oldlang = BONE
else if(oldlang == /datum/language/mothian)
oldlang = MOTH
// Signal data
var/datum/n_struct/signal/script_signal = new(list(
@@ -288,6 +300,12 @@ GLOBAL_LIST_INIT(allowed_translations,list(/datum/language/common,/datum/languag
return /datum/language/beachbum
if(SYLVAN)
return /datum/language/sylvan
if(ETHEREAN)
return /datum/language/etherean
if(BONE)
return /datum/language/bonespeak
if(MOTH)
return /datum/language/mothian
/datum/n_function/default/mem
name = "mem"
@@ -458,3 +476,6 @@ GLOBAL_LIST_INIT(allowed_translations,list(/datum/language/common,/datum/languag
#undef DRACONIC
#undef BEACHTONGUE
#undef SYLVAN
#undef ETHEREAN
#undef BONE
#undef MOTH