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

Emote

Most of the text that's not someone talking is based off of this.

Yes, the displayed message is stored on the datum, it would cause problems for emotes with a message that can vary, but that's handled differently in run_emote(), so be sure to use can_message_change if you plan to have different displayed messages from player to player.

Vars

affected_by_pitchIf this emote's sound is affected by TTS pitch
can_message_changeDoes this message have a message that can be modified by the user?
cooldownThe cooldown between the uses of the emote.
emote_typeWhether the emote is visible and/or audible bitflag
general_emote_audio_cooldownHow long is the shared emote cooldown triggered by this emote?
hands_use_checkChecks if the mob can use its hands before performing the emote.
keyWhat calls the emote.
key_third_personThis will also call the emote.
messageMessage displayed when emote is used.
message_AIMessage displayed if the user is an AI.
message_alienMessage displayed if the user is a grown alien.
message_animal_or_basicMessage to display if the user is a simple_animal or basic mob.
message_larvaMessage displayed if the user is an alien larva.
message_mimeMessage displayed if the user is a mime.
message_monkeyMessage displayed if the user is a monkey.
message_paramMessage with %t at the end to allow adding params to the message, like for mobs doing an emote relatively to something else.
message_robotMessage displayed if the user is a robot.
mob_type_allowed_typecacheTypes that are allowed to use that emote.
mob_type_blacklist_typecacheTypes that are NOT allowed to use that emote.
mob_type_ignore_stat_typecacheTypes that can use this emote regardless of their state.
nameNeeded for more user-friendly emote names, so emotes with keys like "aflap" will show as "flap angry". Defaulted to key.
only_forced_audioCan only code call this event instead of the player.
soundSound to play when emote is called.
sound_wall_ignoreDoes this emote's sound ignore walls?
specific_emote_audio_cooldownHow long is the specific emote cooldown triggered by this emote?
stat_allowedIn which state can you use this emote? (Check stat.dm for a full list of them)
trait_requiredTrait that is required to use this emote.
varyDoes this emote vary in pitch?

Procs

can_run_emoteCheck to see if the user is allowed to run the emote.
check_cooldownFor handling emote cooldown, return true to allow the emote to happen.
get_soundTo get the sound that the emote plays, for special sound interactions depending on the mob.
replace_pronounTo replace pronouns in the inputed string with the user's proper pronouns.
run_emoteHandles the modifications and execution of emotes.
select_message_typeSelects the message type to override the message with.
select_paramReplaces the %t in the message in message_param by params.
should_play_soundCheck to see if the user should play a sound when performing the emote.

Var Details

affected_by_pitch

If this emote's sound is affected by TTS pitch

can_message_change

Does this message have a message that can be modified by the user?

cooldown

The cooldown between the uses of the emote.

emote_type

Whether the emote is visible and/or audible bitflag

general_emote_audio_cooldown

How long is the shared emote cooldown triggered by this emote?

hands_use_check

Checks if the mob can use its hands before performing the emote.

key

What calls the emote.

key_third_person

This will also call the emote.

message

Message displayed when emote is used.

message_AI

Message displayed if the user is an AI.

message_alien

Message displayed if the user is a grown alien.

message_animal_or_basic

Message to display if the user is a simple_animal or basic mob.

message_larva

Message displayed if the user is an alien larva.

message_mime

Message displayed if the user is a mime.

message_monkey

Message displayed if the user is a monkey.

message_param

Message with %t at the end to allow adding params to the message, like for mobs doing an emote relatively to something else.

message_robot

Message displayed if the user is a robot.

mob_type_allowed_typecache

Types that are allowed to use that emote.

mob_type_blacklist_typecache

Types that are NOT allowed to use that emote.

mob_type_ignore_stat_typecache

Types that can use this emote regardless of their state.

name

Needed for more user-friendly emote names, so emotes with keys like "aflap" will show as "flap angry". Defaulted to key.

only_forced_audio

Can only code call this event instead of the player.

sound

Sound to play when emote is called.

sound_wall_ignore

Does this emote's sound ignore walls?

specific_emote_audio_cooldown

How long is the specific emote cooldown triggered by this emote?

stat_allowed

In which state can you use this emote? (Check stat.dm for a full list of them)

trait_required

Trait that is required to use this emote.

vary

Does this emote vary in pitch?

Proc Details

can_run_emote

Check to see if the user is allowed to run the emote.

Arguments:

Returns a bool about whether or not the user can run the emote.

check_cooldown

For handling emote cooldown, return true to allow the emote to happen.

Arguments:

Returns FALSE if the cooldown is not over, TRUE if the cooldown is over.

get_sound

To get the sound that the emote plays, for special sound interactions depending on the mob.

Arguments:

Returns the sound that will be made while sending the emote.

replace_pronoun

To replace pronouns in the inputed string with the user's proper pronouns.

Arguments:

Returns the modified msg string.

run_emote

Handles the modifications and execution of emotes.

Arguments:

select_message_type

Selects the message type to override the message with.

Arguments:

Returns the new message, or msg directly, if no change was needed.

select_param

Replaces the %t in the message in message_param by params.

Arguments:

Returns the modified string.

should_play_sound

Check to see if the user should play a sound when performing the emote.

Arguments:

Returns a bool about whether or not the user should play a sound when performing the emote.