Files
GS13NG/code/modules/mob/living/carbon/say.dm
T
PoojawaandGitHub 7e9b96a00f April sync (#360)
* Maps and things no code/icons

* helpers defines globalvars

* Onclick world.dm orphaned_procs

* subsystems

Round vote and shuttle autocall done here too

* datums

* Game folder

* Admin - chatter modules

* clothing - mining

* modular computers - zambies

* client

* mob level 1

* mob stage 2 + simple_animal

* silicons n brains

* mob stage 3 + Alien/Monkey

* human mobs

* icons updated

* some sounds

* emitter y u no commit

* update tgstation.dme

* compile fixes

* travis fixes

Also removes Fast digest mode, because reasons.

* tweaks for travis Mentors are broke again

Also fixes Sizeray guns

* oxygen loss fix for vore code.

* removes unused code

* some code updates

* bulk fixes

* further fixes

* outside things

* whoops.

* Maint bar ported

* GLOBs.
2017-04-13 23:37:00 -05:00

43 lines
1.1 KiB
Plaintext

/mob/living/carbon/treat_message(message)
message = ..(message)
var/obj/item/organ/tongue/T = getorganslot("tongue")
if(!T) //hoooooouaah!
var/regex/tongueless_lower = new("\[gdntke]+", "g")
var/regex/tongueless_upper = new("\[GDNTKE]+", "g")
if(copytext(message, 1, 2) != "*")
message = tongueless_lower.Replace(message, pick("aa","oo","'"))
message = tongueless_upper.Replace(message, pick("AA","OO","'"))
else
message = T.TongueSpeech(message)
if(wear_mask)
message = wear_mask.speechModification(message)
return message
/mob/living/carbon/can_speak_vocal(message)
if(silent)
return 0
return ..()
/mob/living/carbon/get_spans()
. = ..()
var/obj/item/organ/tongue/T = getorganslot("tongue")
if(T)
. |= T.get_spans()
var/obj/item/I = get_active_held_item()
if(I)
. |= I.get_held_item_speechspans(src)
/mob/living/carbon/can_speak_in_language(datum/language/dt)
if(HAS_SECONDARY_FLAG(src, OMNITONGUE))
. = has_language(dt)
else if(has_language(dt))
var/obj/item/organ/tongue/T = getorganslot("tongue")
if(T)
. = T.can_speak_in_language(dt)
else
. = initial(dt.flags) & TONGUELESS_SPEECH
else
. = FALSE