diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm index 9e6ba502eb3..e20f935f74e 100644 --- a/code/modules/surgery/organs/tongue.dm +++ b/code/modules/surgery/organs/tongue.dm @@ -60,14 +60,18 @@ /obj/item/organ/tongue/lizard/handle_speech(datum/source, list/speech_args) var/static/regex/lizard_hiss = new("s+", "g") var/static/regex/lizard_hiSS = new("S+", "g") - var/static/regex/lizard_kss = new("x+", "g") - var/static/regex/lizard_kSS = new("X+", "g") + var/static/regex/lizard_kss = new(@"(\w)x", "g") + var/static/regex/lizard_kSS = new(@"(\w)X", "g") + var/static/regex/lizard_ecks = new(@"\bx([\-|r|R]|\b)", "g") + var/static/regex/lizard_eckS = new(@"\bX([\-|r|R]|\b)", "g") var/message = speech_args[SPEECH_MESSAGE] if(message[1] != "*") message = lizard_hiss.Replace(message, "sss") message = lizard_hiSS.Replace(message, "SSS") - message = lizard_kss.Replace(message, "kss") - message = lizard_kSS.Replace(message, "KSS") + message = lizard_kss.Replace(message, "$1kss") + message = lizard_kSS.Replace(message, "$1KSS") + message = lizard_ecks.Replace(message, "ecks$1") + message = lizard_eckS.Replace(message, "ECKS$1") speech_args[SPEECH_MESSAGE] = message /obj/item/organ/tongue/fly