Merge branch 'master' of https://github.com/PolarisSS13/Polaris into theUnboxingBegins

# Conflicts:
#	code/modules/mob/new_player/sprite_accessories.dm
#	code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm
#	icons/mob/human_face.dmi
#	icons/mob/suit.dmi
This commit is contained in:
Anewbe
2017-01-17 22:05:38 -06:00
137 changed files with 2730 additions and 596 deletions

View File

@@ -20,7 +20,7 @@
// 'basic' language; spoken by default.
/datum/language/common
name = "Galactic Common"
name = LANGUAGE_GALCOM
desc = "The common galactic tongue."
speech_verb = "says"
whisper_verb = "whispers"
@@ -39,7 +39,7 @@
// Galactic common languages (systemwide accepted standards).
/datum/language/trader
name = "Tradeband"
name = LANGUAGE_TRADEBAND
desc = "Maintained by the various trading cartels in major systems, this elegant, structured language is used for bartering and bargaining."
speech_verb = "enunciates"
colour = "say_quote"
@@ -56,7 +56,7 @@
// Criminal language.
/datum/language/gutter
name = "Gutter"
name = LANGUAGE_GUTTER
desc = "There is no true language named Gutter. 'Gutter' is a catchall term for a collection of unofficial SolCom dialects that has somehow managed to spread across the stars."
speech_verb = "growls"
colour = "rough"
@@ -115,7 +115,7 @@
"his", "ing", "ion", "ith", "not", "ome", "oul", "our", "sho", "ted", "ter", "tha", "the", "thi")
/datum/language/sign
name = "Sign Language"
name = LANGUAGE_SIGN
desc = "A sign language commonly used for those who are deaf or mute."
signlang_verb = list("gestures")
colour = "say_quote"

View File

@@ -160,12 +160,15 @@
// Can we speak this language, as opposed to just understanding it?
/mob/proc/can_speak(datum/language/speaking)
//Prevents someone from speaking a null language.
if(speaking)
return (speaking.can_speak_special(src) && (universal_speak || (speaking && (speaking.flags & INNATE)) || speaking in src.languages))
else
if(!speaking)
log_debug("[src] attempted to speak a null language.")
return 0
if (only_species_language && speaking != all_languages[species_language])
return 0
return (speaking.can_speak_special(src) && (universal_speak || (speaking && (speaking.flags & INNATE)) || speaking in src.languages))
/mob/proc/get_language_prefix()
if(client && client.prefs.language_prefixes && client.prefs.language_prefixes.len)
return client.prefs.language_prefixes[1]
@@ -213,7 +216,10 @@
/mob/living/Topic(href, href_list)
if(href_list["default_lang"])
if(href_list["default_lang"] == "reset")
set_default_language(null)
if (species_language)
set_default_language(all_languages[species_language])
else
set_default_language(null)
else
var/datum/language/L = locate(href_list["default_lang"])
if(L && (L in languages))
@@ -223,4 +229,10 @@
else
return ..()
/proc/transfer_languages(var/mob/source, var/mob/target, var/except_flags)
for(var/datum/language/L in source.languages)
if(L.flags & except_flags)
continue
target.add_language(L.name)
#undef SCRAMBLE_CACHE_LEN

View File

@@ -1,6 +1,6 @@
/datum/language/diona
name = "Rootspeak"
desc = "A creaking, subvocal language spoken instinctively by the Dionaea. Due to the unique makeup of the average Diona, a phrase of Rootspeak can be a combination of anywhere from one to twelve individual voices and notes."
/datum/language/diona_local
name = LANGUAGE_ROOTLOCAL
desc = "A complex language known instinctively by Dionaea, 'spoken' by emitting modulated radio waves. This version uses high frequency waves for quick communication at short ranges."
speech_verb = "creaks and rustles"
ask_verb = "creaks"
exclaim_verb = "rustles"
@@ -9,13 +9,19 @@
flags = RESTRICTED
syllables = list("hs","zt","kr","st","sh")
/datum/language/diona/get_random_name()
/datum/language/diona_local/get_random_name()
var/new_name = "[pick(list("To Sleep Beneath","Wind Over","Embrace of","Dreams of","Witnessing","To Walk Beneath","Approaching the"))]"
new_name += " [pick(list("the Void","the Sky","Encroaching Night","Planetsong","Starsong","the Wandering Star","the Empty Day","Daybreak","Nightfall","the Rain"))]"
return new_name
/datum/language/diona_global
name = LANGUAGE_ROOTGLOBAL
desc = "A complex language known instinctively by Dionaea, 'spoken' by emitting modulated radio waves. This version uses low frequency waves for slow communication at long ranges."
key = "w"
flags = RESTRICTED | HIVEMIND
/datum/language/unathi
name = "Sinta'unathi"
name = LANGUAGE_UNATHI
desc = "The common language of Moghes, composed of sibilant hisses and rattles. Spoken natively by Unathi."
speech_verb = "hisses"
ask_verb = "hisses"
@@ -42,7 +48,7 @@
return capitalize(new_name)
/datum/language/tajaran
name = "Siik"
name = LANGUAGE_SIIK
desc = "The most prevalant language of Meralar, composed of expressive yowls and chirps. Native to the Tajaran."
speech_verb = "mrowls"
ask_verb = "mrowls"
@@ -65,7 +71,7 @@
return new_name
/datum/language/skrell
name = "Skrellian"
name = LANGUAGE_SKRELLIAN
desc = "A melodic and complex language spoken by the Skrell of Qerrbalak. Some of the notes are inaudible to humans."
speech_verb = "warbles"
ask_verb = "warbles"
@@ -76,7 +82,7 @@
syllables = list("qr","qrr","xuq","qil","quum","xuqm","vol","xrim","zaoo","qu-uu","qix","qoo","zix","*","!")
/datum/language/human
name = "Sol Common"
name = LANGUAGE_SOL_COMMON
desc = "A bastardized hybrid of informal English and elements of Mandarin Chinese; the common language of the Sol system."
speech_verb = "says"
whisper_verb = "whispers"
@@ -104,8 +110,8 @@
return ..()
/datum/language/machine
name = "Encoded Audio Language"
desc = "A efficient language of encoded tones developed by synthetics and cyborgs."
name = LANGUAGE_EAL
desc = "An efficient language of encoded tones developed by synthetics and cyborgs."
speech_verb = "whistles"
ask_verb = "chirps"
exclaim_verb = "whistles loudly"
@@ -127,7 +133,7 @@
return pick(ai_names)
/datum/language/seromi
name = "Schechi"
name = LANGUAGE_SCHECHI
desc = "A trilling language spoken by the diminutive Teshari."
speech_verb = "chirps"
ask_verb = "chirrups"