mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Merge pull request #12902 from Heroman3003/echosong
Adds Echo Song language
This commit is contained in:
@@ -145,8 +145,9 @@
|
||||
// which is exactly what sign language does.
|
||||
/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)
|
||||
|
||||
var/verb_to_use = pick(signlang_verb)
|
||||
speaker.say_signlang(message, verb_to_use, verb_to_use, src)
|
||||
|
||||
|
||||
// Silly language for those times when you try to talk a languague you normally can't
|
||||
/datum/language/gibberish
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
var/exclaim_verb = "exclaims" // Used when sentence ends in a !
|
||||
var/whisper_verb // Optional. When not specified speech_verb + quietly/softly is used instead.
|
||||
var/signlang_verb = list("signs", "gestures") // list of emotes that might be displayed if this language has NONVERBAL or SIGNLANG flags
|
||||
var/signlang_verb_understood = list("signs") // snowflake bs, used only for echo
|
||||
var/colour = "body" // CSS style to use for strings in this language.
|
||||
var/key = "x" // Character used to speak in language eg. :o for Unathi.
|
||||
var/flags = 0 // Various language flags.
|
||||
@@ -20,6 +21,7 @@
|
||||
var/list/space_chance = 55 // Likelihood of getting a space in the random scramble string
|
||||
var/machine_understands = 1 // Whether machines can parse and understand this language
|
||||
var/list/partial_understanding // List of languages that can /somehwat/ understand it, format is: name = chance of understanding a word
|
||||
var/ignore_adverb = FALSE // For inaudible languages that we dont want adverb for
|
||||
|
||||
/datum/language/proc/get_random_name(var/gender, name_count=2, syllable_count=4, syllable_divisor=2)
|
||||
if(!syllables || !syllables.len)
|
||||
@@ -235,7 +237,7 @@
|
||||
//TBD
|
||||
/mob/proc/check_lang_data()
|
||||
. = ""
|
||||
|
||||
|
||||
for(var/datum/language/L in languages)
|
||||
if(!(L.flags & NONGLOBAL))
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key])</b><br/>[L.desc]<br/><br/>"
|
||||
|
||||
@@ -96,7 +96,8 @@
|
||||
|
||||
/datum/language/tajsign/broadcast(var/mob/living/speaker, var/message, var/speaker_mask)
|
||||
log_say("(SIGN) [message]", speaker)
|
||||
speaker.say_signlang(message, pick(signlang_verb), src)
|
||||
var/verb_to_use = pick(signlang_verb)
|
||||
speaker.say_signlang(message, verb_to_use, verb_to_use, src)
|
||||
|
||||
/datum/language/tajsign/can_speak_special(var/mob/speaker) // TODO: If ever we make external organs assist languages, convert this over to the new format
|
||||
var/list/allowed_species = list(SPECIES_TAJ, SPECIES_TESHARI) // Need a tail and ears and such to use this.
|
||||
|
||||
@@ -167,7 +167,24 @@
|
||||
exclaim_verb = "squeaks loudly"
|
||||
syllables = list ("sque", "uik", "squeak", "squee", "eak", "eek", "uek", "squik",
|
||||
"squeek", "sq", "squee", "ee", "ek", "ak", "ueak", "squea")
|
||||
colour = "tavan"
|
||||
colour = "tavan"
|
||||
|
||||
/datum/language/echosong
|
||||
name = LANGUAGE_ECHOSONG
|
||||
desc = "An ultrasound-based language, inaudible to those unable to understand it."
|
||||
key = "U"
|
||||
signlang_verb = list("opens their mouth soundlessly", "mouthes something silently")
|
||||
signlang_verb_understood = list("squeaks")
|
||||
colour = "echosong"
|
||||
flags = INAUDIBLE
|
||||
ignore_adverb = TRUE
|
||||
|
||||
/datum/language/echosong/scramble(var/input, var/list/known_languages)
|
||||
return stars(input)
|
||||
|
||||
/datum/language/echosong/broadcast(var/mob/living/speaker, var/message, var/speaker_mask)
|
||||
log_say("(INAUDIBLE) [message]", speaker)
|
||||
speaker.say_signlang(format_message(message), pick(signlang_verb), pick(signlang_verb_understood), src, 2)
|
||||
|
||||
/datum/language/unathi
|
||||
flags = 0
|
||||
|
||||
Reference in New Issue
Block a user