/tg/ Station 13 - Modules - TypesVar Details - Proc Details

language_holder

Vars

blocked_languagesLazyassoclist of blocked languages. Used to prevent understanding and speaking certain languages, ie for certain mobs, mutations etc.
language_menuHandles displaying the language menu UI.
omnitongueIf true, overrides tongue aforementioned limitations.
other_mutual_understandingLazyassoclist 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))
ownerTracks the entity that owns the holder.
selected_languageCurrently spoken language
spoken_languagesLazyassoclist of languages that can be spoken. Tongue organ may also set limits beyond this list.
understood_languagesLazyassoclist of all understood languages

Procs

NewInitializes, and copies in the languages from the current atom if available.
add_blocked_languageAdds a single language or list of languages to the blocked language list.
can_speak_languageChecks if you can speak the language. Tongue limitations should be supplied as an argument.
copy_languagesCopies 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_languagesGets a list of all mutually understood languages.
get_random_spoken_languageGets a random spoken language, useful for forced speech and such.
get_random_spoken_uncommon_languageGets a random spoken language, trying to get a non-common language.
get_random_understood_languageGets a random understood language, useful for hallucinations and such.
get_selected_languageReturns selected language if it can be spoken, or decides, sets and returns a new selected language if possible.
grant_all_languagesGrants every language to understood and spoken, and gives omnitongue.
grant_languageGrants the supplied language.
has_languageChecks if you have the language passed.
open_language_menuOpens a language menu reading from the language holder.
remove_all_languagesRemoves every language and optionally sets omnitongue false. If a non default source is supplied, only removes that source.
remove_blocked_languageRemoves a single language or list of languages from the blocked language list.
remove_languageRemoves a single language or source, removing all sources returns the pre-removal state of the language.
transfer_mind_languagesTransfers 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.