Fixes recorders translating mice and cult speak (#5955)

This fixes recorders being able to translate languages like cult, neither translate simple animals message, with some exceptions.
This commit is contained in:
Alberyk
2019-01-26 14:14:18 -02:00
committed by Erki
parent 3982da12d0
commit b067cf2b4e
6 changed files with 27 additions and 0 deletions
@@ -29,10 +29,16 @@
return ..()
/obj/item/device/taperecorder/hear_talk(mob/living/M as mob, msg, var/verb="says", datum/language/speaking=null)
if(isanimal(M))
if(!M.universal_speak)
return
if(recording)
timestamp += timerecorded
if(speaking)
if(!speaking.machine_understands)
msg = speaking.scramble(msg)
storedinfo += "\[[time2text(timerecorded*10,"mm:ss")]\] [M.name] [speaking.format_message_plain(msg, verb)]"
else
storedinfo += "\[[time2text(timerecorded*10,"mm:ss")]\] [M.name] [verb], \"[msg]\""
@@ -350,9 +350,15 @@
return ..()
/obj/item/integrated_circuit/input/microphone/hear_talk(mob/living/M, msg, var/verb="says", datum/language/speaking=null)
if(isanimal(M))
if(!M.universal_speak)
return
var/translated = FALSE
if(M && msg)
if(speaking)
if(!speaking.machine_understands)
msg = speaking.scramble(msg)
if(!istype(speaking, /datum/language/common))
translated = TRUE
set_pin_data(IC_OUTPUT, 1, M.GetVoice())
+1
View File
@@ -19,6 +19,7 @@
var/list/syllables // Used when scrambling text for a non-speaker.
var/list/space_chance = 55 // Likelihood of getting a space in the random scramble string
var/list/partial_understanding // List of languages that can /somehwat/ understand it, format is: name = chance of understanding a word
var/machine_understands = TRUE // Whether machines can parse and understand this language
/datum/language/proc/get_random_name(var/gender, name_count=2, syllable_count=4, syllable_divisor=2)
if(!syllables || !syllables.len)
+5
View File
@@ -5,21 +5,25 @@
ask_verb = "chimpers"
exclaim_verb = "screeches"
key = "6"
machine_understands = FALSE
/datum/language/skrell/monkey
name = LANGUAGE_NEAERA
desc = "Squik squik squik."
key = "8"
machine_understands = FALSE
/datum/language/unathi/monkey
name = LANGUAGE_STOK
desc = "Hiss hiss hiss."
key = "7"
machine_understands = FALSE
/datum/language/tajaran/monkey
name = LANGUAGE_FARWA
desc = "Meow meow meow."
key = "^"
machine_understands = FALSE
/datum/language/bug/monkey
name = LANGUAGE_BUG
@@ -31,3 +35,4 @@
syllables = list("vaur","uyek","uyit","avek","sc'theth","k'ztak","teth","wre'ge","lii","dra'","zo'","ra'","k'lax'","zz","vh","ik","ak",
"uhk","zir","sc'orth","sc'er","thc'yek","th'zirk","th'esk","k'ayek","ka'mil","sc'","ik'yir","yol","kig","k'zit","'","'","zrk","krg","isk'yet","na'k",
"sc'azz","th'sc","nil","n'ahk","sc'yeth","aur'sk","iy'it","azzg","a'","i'","o'","u'","a","i","o","u","zz","kr","ak","nrk")
machine_understands = FALSE
+3
View File
@@ -8,6 +8,7 @@
key = "z"
flags = RESTRICTED
syllables = list("sss","sSs","SSS")
machine_understands = FALSE
/datum/language/xenos
name = LANGUAGE_HIVEMIND
@@ -79,6 +80,7 @@
flags = WHITELISTED
syllables = list("ti","ti","ti","hi","hi","ki","ki","ki","ki","ya","ta","ha","ka","ya","chi","cha","kah", \
"SKRE","AHK","EHK","RAWK","KRA","AAA","EEE","KI","II","KRI","KA")
machine_understands = FALSE
/datum/language/vox/get_random_name()
return ..(FEMALE,1,6)
@@ -100,6 +102,7 @@
"sektath", "mal'zua", "zasan", "therium", "viortia", "kla'atu", "barada", "nikt'o", "fwe'sh", "mah", "erl", "nyag", "r'ya", \
"gal'h'rfikk", "harfrandid", "mud'gib", "fuu", "ma'jin", "dedo", "ol'btoh", "n'ath", "reth", "sh'yro", "eth", \
"d'rekkathnor", "khari'd", "gual'te", "nikka", "nikt'o", "barada", "kla'atu", "barhah", "hra" ,"zar'garis")
machine_understands = FALSE
/datum/language/cultcommon/get_random_name()
var/new_name = "[pick(list("Anguished", "Blasphemous", "Corrupt", "Cruel", "Depraved", "Despicable", "Disturbed", "Exacerbated", "Foul", "Hateful", "Inexorable", "Implacable", "Impure", "Malevolent", "Malignant", "Malicious", "Pained", "Profane", "Profligate", "Relentless", "Resentful", "Restless", "Spiteful", "Tormented", "Unclean", "Unforgiving", "Vengeful", "Vindictive", "Wicked", "Wronged"))]"
+6
View File
@@ -0,0 +1,6 @@
author: Alberyk
delete-after: True
changes:
- tweak: "Recorders are no longer able to translate unknown languages, such as cult."