Added a language variable to NTSL (#5470)

Adds a variable that contains the language of the transmission to NTSL.
Adds a language parameter to the broadcast function.
This commit is contained in:
Werner
2018-11-01 00:30:19 +01:00
committed by Erki
parent 5e288af379
commit 66aa7a3cb8
5 changed files with 83 additions and 18 deletions

View File

@@ -84,3 +84,4 @@
#define INNATE 64 // All mobs can be assumed to speak and understand this language. (audible emotes)
#define NO_TALK_MSG 128 // Do not show the "\The [speaker] talks into \the [radio]" message
#define NO_STUTTER 256 // No stuttering, slurring, or other speech problems
#define TCOMSSIM 512 // Can be synthesized in tcoms

View File

@@ -25,7 +25,7 @@
speech_verb = "says"
whisper_verb = "whispers"
key = "0"
flags = RESTRICTED
flags = RESTRICTED|TCOMSSIM
syllables = list("a", "ado", "ago", "aj", "ajn", "al", "alt", "am", "amas", "an", "ang", "ante", "ap", "ard", "arma", "aro", "as", "aur", "aut", "aw", "ba", "bal", "bao", "be", "beau", "bel", "bi", "bit", "blu", "bo", "bod", "boj", "bojn", "bu", "but", "ca", "caj", "ce", "cer", "chun",
"ci", "cion", "coj", "cor", "da", "daj", "dan", "de", "den", "dis", "do", "dor", "dorm", "eco", "ego", "ek", "eks", "en", "ero", "es", "est", "et", "eve", "fa", "fe", "fel", "fla", "foj", "fra", "fraz", "fros", "ful", "fut", "ga", "gan", "gar", "gi", "gis", "go", "gran", "ha", "han", "hav",
"hom", "hong", "hu", "hum", "hushi", "ia", "iaj", "ica", "id", "idon", "il", "in", "ing", "io", "is", "iton", "iza", "ja", "ji", "jirou", "joj", "ka", "kaj", "kajo", "kan", "ke", "ket", "ki", "kna", "krio", "ku", "kui", "kuk", "kun", "kur", "la", "laca", "leng", "les", "li", "liao", "lib",
@@ -50,6 +50,7 @@
speech_verb = "enunciates"
colour = "say_quote"
key = "2"
flags = TCOMSSIM
syllables = list("a", "acc", "ai", "al", "ali", "am", "ama", "ami", "amo", "an", "ang", "arme", "ave", "ba", "bai", "bar", "bat", "bi", "blie", "bris", "ca", "can", "cant", "car", "care", "ce", "ci", "cis", "cit", "cla", "co", "cul", "cur", "curt", "da", "dam", "dans", "de",
"di", "dier", "dim", "dins", "dorm", "du", "duro", "e", "eaux", "ec", "ecto", "ees", "ego", "el", "en", "ent", "er", "ere", "eres", "eri", "ero", "es", "et", "ex", "far", "fi", "fic", "fine", "fol", "foll", "fri", "fro", "gen", "gil", "go", "gran", "hab", "ho", "huc", "ia",
"iam", "ibus", "idor", "ie", "iens", "ier", "ieur", "iis", "il", "in", "ine", "int", "ir", "is", "ise", "it", "itt", "jar", "je", "jo", "jor", "la", "lar", "lav", "le", "lees", "ler", "les", "li", "lib", "lie", "lo", "lu", "ma", "man", "manu", "mar", "mari", "mas", "me", "mea",
@@ -65,6 +66,7 @@
speech_verb = "growls"
colour = "rough"
key = "3"
flags = TCOMSSIM
syllables = list("a", "aan", "aas", "ab", "aba", "ad", "aee", "aft", "ag", "ai", "aise", "ak", "akee", "aq", "ar", "ata", "aur", "aus", "ba", "baat", "bach", "bad", "bahe", "band", "be", "ben", "ber", "bhaa", "bhu", "bra", "burt", "cap", "cer", "ch", "cha", "chaar", "chale", "chalo", "chil",
"com", "da", "daa", "daaj", "dat", "de", "dee", "dhaa", "di", "die", "dik", "din", "diz", "do", "dos", "dosh", "durch", "eer", "ek", "er", "es", "fal", "fang", "fra", "fun", "ga", "gan", "gao", "gee", "geet", "gern", "gir", "gon", "gren", "gri", "gu", "guda", "ha", "haa", "hai", "hain", "har",
"hat", "he", "hee", "heer", "hekt", "heu", "hit", "hn", "ho", "hua", "huk", "hul", "ich", "ig", "in", "isch", "ja", "jaa", "jad", "jan", "jao", "jar", "jas", "jee", "jiao", "jin", "jing ", "un", "ka", "kaha", "kana", "kar", "kara", "karo", "ke ", "kee", "keln", "kha", "khada", "khe", "khi", "ko",

View File

@@ -6,7 +6,7 @@
exclaim_verb = "rustles"
colour = "soghun"
key = "q"
flags = RESTRICTED
flags = RESTRICTED|TCOMSSIM
syllables = list("hs","zt","kr","st","sh")
/datum/language/diona/get_random_name()
@@ -28,7 +28,7 @@
exclaim_verb = "roars"
colour = "soghun"
key = "o"
flags = WHITELISTED
flags = WHITELISTED|TCOMSSIM
space_chance = 40
syllables = list(
"za", "az", "ze", "ez", "zi", "iz", "zo", "oz", "zu", "uz", "zs", "sz",
@@ -50,7 +50,7 @@
exclaim_verb = "yowls"
colour = "tajaran"
key = "j"
flags = WHITELISTED
flags = WHITELISTED|TCOMSSIM
syllables = list("mrr","rr","tajr","kir","raj","kii","mir","kra","ahk","nal","vah","khaz","jri","ran","darr",
"mi","jri","dynh","manq","rhe","zar","rrhaz","kal","chur","eech","thaa","dra","jurl","mah","sanu","dra","ii'r",
"ka","aasi","far","wa","baq","ara","qara","zir","sam","mak","hrar","nja","rir","khan","jun","dar","rik","kah",
@@ -102,7 +102,7 @@
exclaim_verb = "yowls"
colour = "yassa"
key = "r"
flags = WHITELISTED
flags = WHITELISTED|TCOMSSIM
syllables = list("hrr","rhr","tarj","khir","rajh","kir","mier","kre","ahek","nlhal","veh","khaz","dri","rhan","darrer",
"mi","jhri","dynher","manqi","rhas","shar","drhaz","kalh","shur","echi","tha","draer","jurl","maher","sanii","dra","ii'r",
"kan","aesi","fare","we","bash","arha","quara","zhir","sem","make","hrer","nja","rir","can","jhun","dar","rik","kah",
@@ -117,7 +117,7 @@
exclaim_verb = "yowls"
colour = "delvahhi"
key = "n"
flags = WHITELISTED
flags = WHITELISTED|TCOMSSIM
syllables = list("mrr","rr","tajr","kir","raj","kii","mir","kra","ahk","nal","vah","khaz","jri","ran","darr",
"mi","jri","dynh","manq","rhe","zar","rrhaz","kal","chur","eech","thaa","dra","jurl","mah","sanu","dra","ii'r",
"ka","aasi","far","wa","baq","ara","qara","zir","sam","mak","hrar","nja","rir","khan","jun","dar","rik","kah",
@@ -132,7 +132,7 @@
exclaim_verb = "exclaims"
colour = "siiktau"
key = "t"
flags = WHITELISTED
flags = WHITELISTED|TCOMSSIM
syllables = list("m'Rr","rr","tahjr","kir","rrahj","kii","mirr","krah","ahhk","nahl","vahh","khahz","jri","rahn","dahrr",
"mi","j'Rri","dy'Nh","mah'nq","rhe","zahr","r'Rhahz","kahl")
partial_understanding = list(LANGUAGE_SIIK_MAAS = 40, LANGUAGE_SIIK_TAJR = 20, LANGUAGE_TCB = 60)
@@ -145,7 +145,7 @@
exclaim_verb = "warbles"
colour = "skrell"
key = "k"
flags = WHITELISTED
flags = WHITELISTED|TCOMSSIM
syllables = list("qr","qrr","xuq","qil","quum","xuqm","vol","xrim","zaoo","qu-uu","qix","qoo","zix","*","!")
/datum/language/bug
@@ -224,7 +224,7 @@
whisper_verb = "whispers"
colour = "solcom"
key = "1"
flags = WHITELISTED
flags = WHITELISTED | TCOMSSIM
syllables = list("a", "abe", "ade", "ai", "an", "ana", "ba", "bae", "bai", "bang", "bao", "bei", "ben", "beo", "bi", "bian", "bing", "bo", "bu", "bugu", "bun", "cai", "can", "cao", "cau", "chan", "chen", "cheong",
"chiu", "chong", "chyo", "da", "dan", "dao", "de", "deun", "duo", "eon", "eun", "eusi", "feng", "fu", "ga", "gak", "gan", "gang", "gao", "ge", "gei", "gen", "geo", "gil", "go", "gou", "gu", "gua", "gui", "gul",
"gun", "guo", "gwi", "ha", "hai", "hal", "han", "hap", "hara", "he", "hego", "hen", "hon", "hoo", "hu", "hua", "hun", "hyeong", "i", "jae", "jeo", "jeon", "ji", "jia", "jian", "jiang", "jie", "jong", "ju", "jue",
@@ -260,7 +260,7 @@
exclaim_verb = "loudly beeps"
colour = "changeling"
key = "6"
flags = RESTRICTED | NO_STUTTER
flags = RESTRICTED | NO_STUTTER | TCOMSSIM
syllables = list("beep","beep","beep","beep","beep","boop","boop","boop","bop","bop","dee","dee","doo","doo","hiss","hss","buzz","buzz","bzz","ksssh","keey","wurr","wahh","tzzz")
space_chance = 10

View File

@@ -61,6 +61,21 @@
interpreter.SetVar("EAST" , EAST) // EAST (4)
interpreter.SetVar("WEST" , WEST) // WEST (8)
//Language macros
interpreter.SetVar("L_BASIC", LANGUAGE_TCB)
interpreter.SetVar("L_SOL", LANGUAGE_SOL_COMMON)
interpreter.SetVar("L_TRADE", LANGUAGE_TRADEBAND)
interpreter.SetVar("L_GUTTER", LANGUAGE_GUTTER)
interpreter.SetVar("L_SIIKTAU", LANGUAGE_SIIK_TAU)
interpreter.SetVar("L_MAAS", LANGUAGE_SIIK_MAAS)
interpreter.SetVar("L_YASSA", LANGUAGE_YA_SSA)
interpreter.SetVar("L_DELVAHII",LANGUAGE_DELVAHII)
interpreter.SetVar("L_DIONAEA", LANGUAGE_ROOTSONG)
interpreter.SetVar("L_UNATHI", LANGUAGE_UNATHI)
interpreter.SetVar("L_SKRELL", LANGUAGE_SKRELLIAN)
interpreter.SetVar("L_VAURCA", LANGUAGE_VAURCA)
interpreter.SetVar("L_MACHINE", LANGUAGE_EAL)
// Channel macros
interpreter.SetVar("$common", PUB_FREQ)
interpreter.SetVar("$science", SCI_FREQ)
@@ -76,6 +91,7 @@
interpreter.SetVar("$freq" , signal.frequency)
interpreter.SetVar("$source" , signal.data["name"])
interpreter.SetVar("$job" , signal.data["job"])
interpreter.SetVar("$language" , signal.data["language"])
interpreter.SetVar("$sign" , signal)
interpreter.SetVar("$pass" , !(signal.data["reject"])) // if the signal isn't rejected, pass = 1; if the signal IS rejected, pass = 0
@@ -89,8 +105,9 @@
@param frequency: Frequency to broadcast to
@param source: The name of the source you wish to imitate. Must be stored in stored_names list.
@param job: The name of the job.
@param language: The language used for the broadcast
*/
interpreter.SetProc("broadcast", "tcombroadcast", signal, list("message", "freq", "source", "job"))
interpreter.SetProc("broadcast", "tcombroadcast", signal, list("message", "freq", "source", "job", "language"))
/*
-> Store a value permanently to the server machine (not the actual game hosting machine, the ingame machine)
@@ -220,7 +237,7 @@ datum/signal
S.memory[address] = value
proc/tcombroadcast(var/message, var/freq, var/source, var/job)
proc/tcombroadcast(var/message, var/freq, var/source, var/job, var/language)
var/datum/signal/newsign = new
var/obj/machinery/telecomms/server/S = data["server"]
@@ -243,6 +260,13 @@ datum/signal
if(!job)
job = "?"
if(!language || language == "" || !(language in language_keys))
language = LANGUAGE_TCB
var/datum/language/L = all_languages[language]
if(!L || !(L.flags & TCOMSSIM))
language = LANGUAGE_TCB
newsign.data["mob"] = null
newsign.data["mobtype"] = /mob/living/carbon/human
if(source in S.stored_names)
@@ -253,6 +277,7 @@ datum/signal
newsign.data["job"] = job
newsign.data["compression"] = 0
newsign.data["message"] = message
newsign.data["language"] = language
newsign.data["type"] = 2 // artificial broadcast
if(!isnum(freq))
freq = text2num(freq)

View File

@@ -0,0 +1,37 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
# balance
#################################
# Your name.
author: Arrow768
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- rscadd: "A $language variable has been added to NTSL"