From ac532f4633d8ac5d5275b09f5e76c101126d6c2e Mon Sep 17 00:00:00 2001 From: Cerebulon Date: Fri, 21 Oct 2022 05:59:43 +0100 Subject: [PATCH] Adds Sivian Creole Language (#8767) * Adds Sivian Creole Language * stok language key --- code/__defines/species_languages.dm | 1 + .../objects/items/robot/robot_upgrades.dm | 1 + code/modules/mob/language/generic.dm | 26 ++++++++++++++++--- code/modules/mob/language/monkey.dm | 2 +- code/modules/mob/language/station.dm | 1 + code/modules/mob/living/silicon/ai/ai.dm | 15 ++++++----- .../silicon/robot/robot_modules/station.dm | 3 ++- .../silicon/robot/robot_modules/syndicate.dm | 3 ++- code/modules/mob/transform_procs.dm | 1 + code/modules/vchat/css/ss13styles.css | 1 + code/stylesheet.dm | 1 + 11 files changed, 42 insertions(+), 13 deletions(-) diff --git a/code/__defines/species_languages.dm b/code/__defines/species_languages.dm index eca1327085..1218af1d73 100644 --- a/code/__defines/species_languages.dm +++ b/code/__defines/species_languages.dm @@ -96,6 +96,7 @@ #define LANGUAGE_ZADDAT "Vedahq" #define LANGUAGE_PROMETHEAN "Promethean Biolinguistics" #define LANGUAGE_BLOB "Chemosense Transmission" +#define LANGUAGE_SIVIAN "Sivian Creole" #define LANGUAGE_GIBBERISH "Babel" // Language flags. diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 1023296b1e..fd05f92676 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -200,6 +200,7 @@ R.add_language(LANGUAGE_SOL_COMMON, 1) R.add_language(LANGUAGE_TRADEBAND, 1) + R.add_language(LANGUAGE_SIVIAN, 1) R.add_language(LANGUAGE_UNATHI, 1) R.add_language(LANGUAGE_SIIK, 1) R.add_language(LANGUAGE_AKHANI, 1) diff --git a/code/modules/mob/language/generic.dm b/code/modules/mob/language/generic.dm index bf3d97038c..06af0567e6 100644 --- a/code/modules/mob/language/generic.dm +++ b/code/modules/mob/language/generic.dm @@ -26,7 +26,7 @@ syllables = list( "vol", "zum", "coo","zoo","bi","do","ooz","ite","og","re","si","ite","ish", "ar","at","on","ee","east","ma","da", "rim") - partial_understanding = list(LANGUAGE_SKRELLIAN = 30, LANGUAGE_SOL_COMMON = 30) + partial_understanding = list(LANGUAGE_SKRELLIAN = 30, LANGUAGE_SOL_COMMON = 30, LANGUAGE_SIVIAN = 40) //TODO flag certain languages to use the mob-type specific say_quote and then get rid of these. /datum/language/common/get_spoken_verb(var/msg_end) @@ -125,6 +125,26 @@ "ve", "wa", "all", "and", "are", "but", "ent", "era", "ere", "eve", "for", "had", "hat", "hen", "her", "hin", "his", "ing", "ion", "ith", "not", "ome", "oul", "our", "sho", "ted", "ter", "tha", "the", "thi") +//Local language +/datum/language/sivian + name = LANGUAGE_SIVIAN + desc = "A hybrid language local to the Vir system, heavily incorporating elements from the languages of early Scandinavian colonists into a form of Galactic Common." + speech_verb = "says" + whisper_verb = "whispers" + colour = "sivian" + key = "7" + partial_understanding = list(LANGUAGE_SOL_COMMON = 20, LANGUAGE_GALCOM = 40) + space_chance = 45 + syllables = list ( + "all", "are", "det", "enn", "ere", "hen", "kan", "lig", "men", "ren", "som", "ver", "vir", "var", "vis", "ikk", "ter", "ork", + "den", "ing", "jeg", "jag", "han", "hir", "hil", "ans", "kan", "kir", "bor", "bir", "um", "om", "ve", "ur", "ha", "he", "hyu", + "er", "ad", "ath", "bjo,", "gun", "gur", "gir", "fyr", "thar", "thir", "thad", "thei", "ayr", "for", "fjo", "jor", "jik", "jar", + "yor", "yar", "yik", "rik", "os", "olm", "erm", "ferk", "borg", "bork", "smorg", // Scandi + "meng", "tao", "bu", "qu", "ai", "xin", "pin", "wa", "cang", "chun", "ding", "gang", "ling", "gao", "jian", "sun", "tong", + "xie", "zu", "miao", "po", "nu", // Chinese (galcom) + "our", "oul", "tou", "eve", "ome", "ion", "ais", // Romance (galcom) + "zaoo", "zix", "vol") //Skrell (galcom) + /datum/language/sign name = LANGUAGE_SIGN desc = "A sign language commonly used for those who are deaf or mute." @@ -146,7 +166,7 @@ /datum/language/sign/broadcast(var/mob/living/speaker, var/message, var/speaker_mask) log_say("(SIGN) [message]", speaker) speaker.say_signlang(message, pick(signlang_verb), src) - + // Silly language for those times when you try to talk a languague you normally can't /datum/language/gibberish @@ -219,4 +239,4 @@ ) /datum/language/gibberish/can_speak_special(var/mob/speaker) - return TRUE //Anyone can speak gibberish \ No newline at end of file + return TRUE //Anyone can speak gibberish diff --git a/code/modules/mob/language/monkey.dm b/code/modules/mob/language/monkey.dm index e46800ade4..a94a3028e2 100644 --- a/code/modules/mob/language/monkey.dm +++ b/code/modules/mob/language/monkey.dm @@ -18,7 +18,7 @@ /datum/language/unathi/monkey name = "Stok" desc = "Hiss hiss hiss." - key = "7" + key = "S" syllables = list("squick","croak") machine_understands = 0 diff --git a/code/modules/mob/language/station.dm b/code/modules/mob/language/station.dm index 85bd64c0fc..c1446814ca 100644 --- a/code/modules/mob/language/station.dm +++ b/code/modules/mob/language/station.dm @@ -150,6 +150,7 @@ colour = "solcom" key = "1" flags = WHITELISTED + partial_understanding = list(LANGUAGE_SIVIAN = 20) //syllables are at the bottom of the file /datum/language/human/get_spoken_verb(var/msg_end) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 7f5449f344..8cacfd7db0 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -87,7 +87,7 @@ var/global/list/ai_verbs_default = list( var/datum/ai_icon/selected_sprite // The selected icon set var/custom_sprite = 0 // Whether the selected icon is custom var/carded - + // Multicam Vars var/multicam_allowed = TRUE var/multicam_on = FALSE @@ -160,6 +160,7 @@ var/global/list/ai_verbs_default = list( add_language("Robot Talk", 1) add_language(LANGUAGE_GALCOM, 1) add_language(LANGUAGE_SOL_COMMON, 1) + add_language(LANGUAGE_SIVIAN, 1) add_language(LANGUAGE_UNATHI, 1) add_language(LANGUAGE_SIIK, 1) add_language(LANGUAGE_AKHANI, 1) @@ -486,7 +487,7 @@ var/global/list/ai_verbs_default = list( else to_chat(src, "System error. Cannot locate [html_decode(href_list["trackname"])].") return - + if(href_list["trackbot"]) var/mob/living/bot/target = locate(href_list["trackbot"]) in mob_list if(target) @@ -814,21 +815,21 @@ var/global/list/ai_verbs_default = list( /mob/living/silicon/ai/proc/check_unable(var/flags = 0, var/feedback = 1) if(stat == DEAD) - if(feedback) + if(feedback) to_chat(src, "You are dead!") return 1 if(aiRestorePowerRoutine) - if(feedback) + if(feedback) to_chat(src, "You lack power!") return 1 if((flags & AI_CHECK_WIRELESS) && src.control_disabled) - if(feedback) + if(feedback) to_chat(src, "Wireless control is disabled!") return 1 if((flags & AI_CHECK_RADIO) && src.aiRadio.disabledAi) - if(feedback) + if(feedback) to_chat(src, "System Error - Transceiver Disabled!") return 1 return 0 @@ -972,7 +973,7 @@ var/global/list/ai_verbs_default = list( //This communication is imperfect because the holopad "filters" voices and is only designed to connect to the master only. var/rendered = "Relayed Speech: [name_used] [message]" show_message(rendered, 2) - + /mob/living/silicon/ai/proc/toggle_multicam_verb() set name = "Toggle Multicam" set category = "AI Commands" diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm index b3aaf0d26b..6707d905aa 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm @@ -21,7 +21,7 @@ var/global/list/robot_modules = list( var/hide_on_manifest = FALSE var/channels = list() var/networks = list() - var/languages = list(LANGUAGE_SOL_COMMON = 1, LANGUAGE_TRADEBAND = 1, LANGUAGE_UNATHI = 0, LANGUAGE_SIIK = 0, LANGUAGE_AKHANI = 0, LANGUAGE_SKRELLIAN = 0, LANGUAGE_GUTTER = 0, LANGUAGE_SCHECHI = 0, LANGUAGE_SIGN = 0, LANGUAGE_TERMINUS = 1, LANGUAGE_ZADDAT = 0) + var/languages = list(LANGUAGE_SOL_COMMON = 1, LANGUAGE_SIVIAN= 0, LANGUAGE_TRADEBAND = 1, LANGUAGE_UNATHI = 0, LANGUAGE_SIIK = 0, LANGUAGE_AKHANI = 0, LANGUAGE_SKRELLIAN = 0, LANGUAGE_GUTTER = 0, LANGUAGE_SCHECHI = 0, LANGUAGE_SIGN = 0, LANGUAGE_TERMINUS = 1, LANGUAGE_ZADDAT = 0) var/sprites = list() var/can_be_pushed = 1 var/no_slip = 0 @@ -611,6 +611,7 @@ var/global/list/robot_modules = list( ) languages = list( LANGUAGE_SOL_COMMON = 1, + LANGUAGE_SIVIAN = 1, LANGUAGE_UNATHI = 1, LANGUAGE_SIIK = 1, LANGUAGE_AKHANI = 1, diff --git a/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm b/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm index cf28f6126c..a3d558466c 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/syndicate.dm @@ -5,6 +5,7 @@ hide_on_manifest = TRUE languages = list( LANGUAGE_SOL_COMMON = 1, + LANGUAGE_SIVIAN = 0, LANGUAGE_TRADEBAND = 1, LANGUAGE_UNATHI = 0, LANGUAGE_SIIK = 0, @@ -218,4 +219,4 @@ S.mode = initial(S.mode) S.desc = initial(S.desc) S.update_icon() - ..() \ No newline at end of file + ..() diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 5012d30e04..0a4d9f288b 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -105,6 +105,7 @@ add_language("Robot Talk", 1) add_language(LANGUAGE_GALCOM, 1) add_language(LANGUAGE_SOL_COMMON, 1) + add_language(LANGUAGE_SIVIAN, 1) add_language(LANGUAGE_UNATHI, 1) add_language(LANGUAGE_SIIK, 1) add_language(LANGUAGE_AKHANI, 1) diff --git a/code/modules/vchat/css/ss13styles.css b/code/modules/vchat/css/ss13styles.css index c79e53423b..29bf5e211b 100644 --- a/code/modules/vchat/css/ss13styles.css +++ b/code/modules/vchat/css/ss13styles.css @@ -153,6 +153,7 @@ h1.alert, h2.alert {color: #000000;} .tajaran {color: #803B56;} .tajaran_signlang {color: #941C1C;} .akhani {color: #AC398C;} +.sivian {color: #6666bb;} .skrell {color: #00B0B3;} .skrellfar {color: #70FCFF;} .soghun {color: #50BA6C;} diff --git a/code/stylesheet.dm b/code/stylesheet.dm index 3ff515e67a..ea4b99ccc0 100644 --- a/code/stylesheet.dm +++ b/code/stylesheet.dm @@ -94,6 +94,7 @@ h1.alert, h2.alert {color: #000000;} .tajaran {color: #803B56;} .tajaran_signlang {color: #941C1C;} .akhani {color: #AC398C;} +.sivian {color: #6666bb;} .skrell {color: #00B0B3;} .skrellfar {color: #70FCFF;} .soghun {color: #50BA6C;}