/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.
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_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.

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_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.