From 1fc452cef8cdcb7a51361e068a801e09d7322401 Mon Sep 17 00:00:00 2001 From: Octus <62493359+OctusGit@users.noreply.github.com> Date: Tue, 3 Oct 2023 11:08:54 -0500 Subject: [PATCH] Makes the Librarian a little less shit, now they know most languages. (#22460) * less shit * adds some restrictions, handles Matt's request * fix * Update code/modules/mob/language.dm Co-authored-by: Daniel Lenrd * Update code/game/jobs/job/support.dm Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com> --------- Co-authored-by: Daniel Lenrd Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com> --- code/__DEFINES/language_defines.dm | 1 + code/game/jobs/job/support.dm | 10 ++++++++++ code/modules/mob/language.dm | 6 +++--- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/code/__DEFINES/language_defines.dm b/code/__DEFINES/language_defines.dm index a7614b1c366..2134628966d 100644 --- a/code/__DEFINES/language_defines.dm +++ b/code/__DEFINES/language_defines.dm @@ -17,6 +17,7 @@ #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 NOBABEL 512 // Not granted by book of babel. Typically antag languages. +#define NOLIBRARIAN 1024 // Flag for banning the Librarian from certain languages. (actual 1984) //Auto-accent level defines. #define AUTOHISS_OFF 0 diff --git a/code/game/jobs/job/support.dm b/code/game/jobs/job/support.dm index fda0554f2ea..c6c2e06faed 100644 --- a/code/game/jobs/job/support.dm +++ b/code/game/jobs/job/support.dm @@ -454,6 +454,16 @@ backpack_contents = list( /obj/item/videocam/advanced = 1) +/datum/outfit/job/librarian/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE) + ..() + if(!H.mind) + return + for(var/la in GLOB.all_languages) + var/datum/language/new_language = GLOB.all_languages[la] + if(new_language.flags & (HIVEMIND|NOLIBRARIAN)) + continue + H.add_language(la) + /datum/job/barber title = "Barber" flag = JOB_BARBER diff --git a/code/modules/mob/language.dm b/code/modules/mob/language.dm index 55aff985f0f..4eee0af4a04 100644 --- a/code/modules/mob/language.dm +++ b/code/modules/mob/language.dm @@ -342,7 +342,7 @@ exclaim_verbs = list("imparts") colour = "abductor" key = "^" - flags = RESTRICTED | HIVEMIND + flags = RESTRICTED | HIVEMIND | NOLIBRARIAN follow = TRUE /datum/language/grey/broadcast(mob/living/speaker, message, speaker_mask) @@ -499,7 +499,7 @@ ask_verb = "hisses" exclaim_verbs = list("hisses") key = "6" - flags = RESTRICTED + flags = RESTRICTED | NOLIBRARIAN syllables = list("sss","sSs","SSS") /datum/language/xenos @@ -653,7 +653,7 @@ ask_verb = "queries" exclaim_verbs = list("declares") key = "]" - flags = RESTRICTED + flags = RESTRICTED | NOLIBRARIAN follow = TRUE syllables = list ("beep", "boop")