Makes nal'rasan more different from sign (#12081)

* Allows unique ending adverbs when hearing sign language without understanding

* fixes changelog mistake

Co-authored-by: TheGreyWolf <mc-casper@hotmail.dk>
This commit is contained in:
Casper3667
2021-06-25 23:59:29 +02:00
committed by GitHub
parent f22f5d8b28
commit e808f12c95
5 changed files with 41 additions and 28 deletions

View File

@@ -263,21 +263,23 @@
if(vr_mob)
to_chat(vr_mob, "[time][part_a][track][part_b][formatted]")
/mob/proc/hear_signlang(var/message, var/verb = "gestures", var/datum/language/language, var/mob/speaker = null)
/mob/proc/hear_signlang(var/message, var/verb = "gestures", var/datum/language/language, var/mob/speaker = null, var/list/sign_adv_length = null)
if(!client || !speaker)
return
if(say_understands(speaker, language))
message = "<B>[speaker]</B> [verb], \"[message]\""
else
if (length(sign_adv_length) <= 4)
sign_adv_length = list(" briefly", " a short message", " a message", " a lengthy message", " a very lengthy message")
var/adverb
var/length = length(message) * pick(0.8, 0.9, 1.0, 1.1, 1.2) //Inserts a little fuzziness.
switch(length)
if(0 to 12) adverb = " briefly"
if(12 to 30) adverb = " a short message"
if(30 to 48) adverb = " a message"
if(48 to 90) adverb = " a lengthy message"
else adverb = " a very lengthy message"
if(0 to 12) adverb = sign_adv_length[1]
if(12 to 30) adverb = sign_adv_length[2]
if(30 to 48) adverb = sign_adv_length[3]
if(48 to 90) adverb = sign_adv_length[4]
else adverb = sign_adv_length[5]
message = "<B>[speaker]</B> [verb][adverb]."
if(src.status_flags & PASSEMOTES)

View File

@@ -15,6 +15,7 @@
var/list/whisper_verb = list("says quietly", "says softly", "whispers") // Optional. When not specified speech_verb + quietly/softly is used instead.
var/list/signlang_verb = list("signs") // list of emotes that might be displayed if this language has NONVERBAL or SIGNLANG flags
var/list/sing_verb = list("sings")
var/list/sign_adv_length = list(" briefly", " a short message", " a message", " a lengthy message", " a very lengthy message") // 5 messages changing depending on the length of the signed language. A space should be added before the sentence as shown
var/colour = "body" // CSS style to use for strings in this language.
var/written_style // CSS style used when writing language down, can't be written if null
var/key = "x" // Character used to speak in language eg. :o for Unathi.

View File

@@ -21,6 +21,8 @@
return new_name
// Unathi languages
/datum/language/unathi
name = LANGUAGE_UNATHI
short = "UNA"
@@ -47,6 +49,23 @@
partial_understanding = list(LANGUAGE_AZAZIBA = 25)
allow_accents = TRUE
/datum/language/unathi_azaziba
name = LANGUAGE_AZAZIBA
short = "AZA"
desc = "A language of Moghes consisting of a combination of spoken word and gesticulation. While waning since Moghes entered the galactic stage, it enjoys popular use by Unathi that never fell to the Hegemony's cultural dominance."
speech_verb = list("hisses")
ask_verb = list("hisses")
exclaim_verb = list("roars")
signlang_verb = list("signs", "gestures aggressively")
sing_verb = list("hisses")
colour = "soghun_alt"
written_style = "sintaazaziba"
key = "p"
flags = WHITELISTED | NONVERBAL
syllables = list("azs","zis","zau","azua","skiu","zuakz","izo","aei","ki","kut","zo")
partial_understanding = list(LANGUAGE_UNATHI = 50)
allow_accents = TRUE
// tajaran languages
/datum/language/tajaran
name = LANGUAGE_SIIK_MAAS
@@ -82,7 +101,8 @@
name = LANGUAGE_SIGN_TAJARA
desc = "A sign language developed by Adhomai hunters"
speech_verb = list("signs")
signlang_verb = list("signs", "flicks their ears", "gestures")
signlang_verb = list("moves their tail", "flicks their ears", "swivels their ears", "flicks their tail", "shifts their ears and tail")
sign_adv_length = list("", " briefly", " a few times", " several times in quick succession", " for a while")
sing_verb = null
colour = "i"
key = "i"
@@ -95,7 +115,8 @@
speech_verb = list("mrowls")
ask_verb = list("mrowls")
exclaim_verb = list("yowls")
signlang_verb = list("signs", "flicks their ears", "gestures")
signlang_verb = list("moves their tail", "flicks their ears", "swivels their ears", "flicks their tail", "shifts their ears and tail")
sign_adv_length = list("", " briefly", " a few times", " several times in quick succession", " for a while")
sing_verb = list("mrowmbles")
colour = "tajaran_signlang"
key = "w"
@@ -296,20 +317,3 @@
if(prob(70))
return "[pick(list("PBU","HIU","SINA","ARMA","OSI"))]-[rand(100, 999)]"
return pick(ai_names)
/datum/language/unathi_azaziba
name = LANGUAGE_AZAZIBA
short = "AZA"
desc = "A language of Moghes consisting of a combination of spoken word and gesticulation. While waning since Moghes entered the galactic stage, it enjoys popular use by Unathi that never fell to the Hegemony's cultural dominance."
speech_verb = list("hisses")
ask_verb = list("hisses")
exclaim_verb = list("roars")
signlang_verb = list("signs", "gestures aggressively")
sing_verb = list("hisses")
colour = "soghun_alt"
written_style = "sintaazaziba"
key = "p"
flags = WHITELISTED | NONVERBAL
syllables = list("azs","zis","zau","azua","skiu","zuakz","izo","aei","ki","kut","zo")
partial_understanding = list(LANGUAGE_UNATHI = 50)
allow_accents = TRUE

View File

@@ -246,7 +246,7 @@ proc/get_radio_key_from_channel(var/channel)
src.custom_emote(VISIBLE_MESSAGE, "[pick(speaking.signlang_verb)].")
if (speaking.flags & SIGNLANG)
return say_signlang(message, pick(speaking.signlang_verb), speaking)
return say_signlang(message, pick(speaking.signlang_verb), speaking, speaking.sign_adv_length)
var/list/obj/item/used_radios = new
var/list/successful_radio = new // passes a list because standard vars don't work when passed
@@ -332,11 +332,11 @@ proc/get_radio_key_from_channel(var/channel)
for(var/client/C in show_to)
C.images -= I
/mob/living/proc/say_signlang(var/message, var/verb="gestures", var/datum/language/language)
/mob/living/proc/say_signlang(var/message, var/verb="gestures", var/datum/language/language, var/list/sign_adv_length)
log_say("[key_name(src)] : ([get_lang_name(language)]) [message]",ckey=key_name(src))
for (var/mob/O in viewers(src, null))
O.hear_signlang(message, verb, language, src)
O.hear_signlang(message, verb, language, src, sign_adv_length)
return 1
/obj/effect/speech_bubble

View File

@@ -0,0 +1,6 @@
author: TheGreyWolf
delete-after: True
changes:
- rscadd: "Nal'rasan and Siik'tajr now looks more unique when speaking it."