language_holder 
Vars | |
| blocked_languages | Lazyassoclist of blocked languages. Used to prevent understanding and speaking certain languages, ie for certain mobs, mutations etc. |
|---|---|
| language_menu | Handles displaying the language menu UI. |
| omnitongue | If true, overrides tongue aforementioned limitations. |
| other_mutual_understanding | Lazyassoclist of all other mutual understanding this holder has in addition to what they understand from their understood languages. This is primarily for adding mutual understanding from other sources at runtime. Format: list(language_type = list(source = % of understanding)) |
| owner | Tracks the entity that owns the holder. |
| selected_language | Currently spoken language |
| spoken_languages | Lazyassoclist of languages that can be spoken. Tongue organ may also set limits beyond this list. |
| understood_languages | Lazyassoclist of all understood languages |
Procs | |
| New | Initializes, and copies in the languages from the current atom if available. |
| add_blocked_language | Adds a single language or list of languages to the blocked language list. |
| can_speak_language | Checks if you can speak the language. Tongue limitations should be supplied as an argument. |
| copy_languages | Copies all languages from the supplied atom/language holder. Source should be overridden when you do not want the language overwritten by later atom updates or want to avoid blocked languages. |
| get_mutually_understood_languages | Gets a list of all mutually understood languages. |
| get_random_spoken_language | Gets a random spoken language, useful for forced speech and such. |
| get_random_spoken_uncommon_language | Gets a random spoken language, trying to get a non-common language. |
| get_random_understood_language | Gets a random understood language, useful for hallucinations and such. |
| get_selected_language | Returns selected language if it can be spoken, or decides, sets and returns a new selected language if possible. |
| grant_all_languages | Grants every language to understood and spoken, and gives omnitongue. |
| grant_language | Grants the supplied language. |
| has_language | Checks if you have the language passed. |
| open_language_menu | Opens a language menu reading from the language holder. |
| remove_all_languages | Removes every language and optionally sets omnitongue false. If a non default source is supplied, only removes that source. |
| remove_blocked_language | Removes a single language or list of languages from the blocked language list. |
| remove_language | Removes a single language or source, removing all sources returns the pre-removal state of the language. |
| transfer_mind_languages | Transfers all mind languages to the supplied language holder. |
Var Details
blocked_languages 
Lazyassoclist of blocked languages. Used to prevent understanding and speaking certain languages, ie for certain mobs, mutations etc.
language_menu 
Handles displaying the language menu UI.
omnitongue 
If true, overrides tongue aforementioned limitations.
other_mutual_understanding 
Lazyassoclist of all other mutual understanding this holder has in addition to what they understand from their understood languages. This is primarily for adding mutual understanding from other sources at runtime. Format: list(language_type = list(source = % of understanding))
owner 
Tracks the entity that owns the holder.
selected_language 
Currently spoken language
spoken_languages 
Lazyassoclist of languages that can be spoken. Tongue organ may also set limits beyond this list.
understood_languages 
Lazyassoclist of all understood languages
Proc Details
New
Initializes, and copies in the languages from the current atom if available.
add_blocked_language
Adds a single language or list of languages to the blocked language list.
can_speak_language
Checks if you can speak the language. Tongue limitations should be supplied as an argument.
copy_languages
Copies all languages from the supplied atom/language holder. Source should be overridden when you do not want the language overwritten by later atom updates or want to avoid blocked languages.
get_mutually_understood_languages
Gets a list of all mutually understood languages.
get_random_spoken_language
Gets a random spoken language, useful for forced speech and such.
get_random_spoken_uncommon_language
Gets a random spoken language, trying to get a non-common language.
get_random_understood_language
Gets a random understood language, useful for hallucinations and such.
get_selected_language
Returns selected language if it can be spoken, or decides, sets and returns a new selected language if possible.
grant_all_languages
Grants every language to understood and spoken, and gives omnitongue.
grant_language
Grants the supplied language.
has_language
Checks if you have the language passed.
open_language_menu
Opens a language menu reading from the language holder.
remove_all_languages
Removes every language and optionally sets omnitongue false. If a non default source is supplied, only removes that source.
remove_blocked_language
Removes a single language or list of languages from the blocked language list.
remove_language
Removes a single language or source, removing all sources returns the pre-removal state of the language.
transfer_mind_languages
Transfers all mind languages to the supplied language holder.