Files

190 lines
75 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><link rel="stylesheet" href="dmdoc.css"><title>/mob - Space Station 13</title></head><body><header><a href="index.html">Space Station 13</a> - <a href="index.html#modules">Modules</a> - <a href="index.html#types">Types</a><a href="mob.html#var">Var Details</a> - <a href="mob.html#proc">Proc Details</a></header><main><h1>mob <aside>/<a href="mob.html">mob</a></aside><aside> inherits /<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L1"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 1"></a></h1><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="mob.html#var/active_mutations">active_mutations</a></th><td>List of the active mutation types</td></tr><tr><th><a href="mob.html#var/alerts">alerts</a></th><td>lazy list. contains /atom/movable/screen/alert only, On /mob so clientless mobs will throw alerts properly</td></tr><tr><th><a href="mob.html#var/audio_emote_cd_status">audio_emote_cd_status</a></th><td>Cooldown on audio effects from emotes.</td></tr><tr><th><a href="mob.html#var/audio_emote_unintentional_cd_status">audio_emote_unintentional_cd_status</a></th><td>Cooldown on audio effects from unintentional emotes.</td></tr><tr><th><a href="mob.html#var/blood_state">blood_state</a></th><td>Weirdly named, effects how blood transfers onto objects</td></tr><tr><th><a href="mob.html#var/bloody_feet">bloody_feet</a></th><td>Assoc list for tracking how &quot;bloody&quot; a mobs feet are, used for creating bloody foot/shoeprints on turfs when moving</td></tr><tr><th><a href="mob.html#var/bloody_hands">bloody_hands</a></th><td>Makes items bloody if you touch them</td></tr><tr><th><a href="mob.html#var/buckled">buckled</a></th><td>movable atoms buckled to this mob</td></tr><tr><th><a href="mob.html#var/canon_client">canon_client</a></th><td>The current client inhabiting this mob. Managed by login/logout
This exists so we can do cleanup in logout for occasions where a client was transfere rather then destroyed
We need to do this because the mob on logout never actually has a reference to client
We also need to clear this var/do other cleanup in client/Destroy, since that happens before logout</td></tr><tr><th><a href="mob.html#var/click_interceptor">click_interceptor</a></th><td>Allows a datum to intercept all click calls this mob is the source of.
This is <em>not</em> necessarily an instance of <a href="datum/click_intercept.html" title="/datum/click_intercept">/datum/click_intercept</a>.</td></tr><tr><th><a href="mob.html#var/do_afters">do_afters</a></th><td>For storing what do_after's something has, key = string, value = amount of interactions of that type happening.</td></tr><tr><th><a href="mob.html#var/emote_cooldown_override">emote_cooldown_override</a></th><td>Override for cooldowns on non-audio emotes. Should be a number in deciseconds.</td></tr><tr><th><a href="mob.html#var/emotes_used">emotes_used</a></th><td>Tracks last uses of emotes for cooldown purposes</td></tr><tr><th><a href="mob.html#var/feet_blood_DNA">feet_blood_DNA</a></th><td>Basically a lazy list, copies the DNA of blood you step in</td></tr><tr><th><a href="mob.html#var/feet_blood_color">feet_blood_color</a></th><td>affects the blood color of your feet, color taken from the blood you step in</td></tr><tr><th><a href="mob.html#var/gunshot_residue">gunshot_residue</a></th><td>gunshot residue for det work. holds the caliber of any BALLISTIC weapon fired by this mob without gloves.</td></tr><tr><th><a href="mob.html#var/hand">hand</a></th><td>True for left hand active, otherwise for right hand active</td></tr><tr><th><a href="mob.html#var/health_hud_override">health_hud_override</a></th><td>Overrides the health HUD element state if set.</td></tr><tr><th><a href="mob.html#var/hud_type">hud_type</a></th><td>The type of HUD that this mob uses. Not to</td></tr><tr><th><a href="mob.html#var/hud_used">hud_used</a></th><td>The instantiated version of the mob's hud.</td></tr><tr><th><a href="mob.html#var/input_focus">input_focus</a></th><td>The datum receiving keyboard input. parent mob by default.</td></tr><tr><th><a href="mob.html#var/last_movement_dir">last_movement_dir</a></th><td>The direction they last moved</td></tr><tr><th><a href="mob.html#var/last_typed">last_typed</a></th><td>Last thing we typed in to the typing indicator, probably does not need to exist</td></tr><tr><th><a href="mob.html#var/last_typed_time">last_typed_time</a></th><td>Last time we typed something in to the typing popup</td></tr><tr><th><a href="mob.html#var/memory">memory</a></th><td>other mobs we wont move when we're grab pulled. Not empty only when being grab pulled</td></tr><tr><th><a href="mob.html#var/next_click">next_click</a></th><td>This is mainly modified by click code, to modify click delays elsewhere, use next_move and changeNext_move(), Controls the click delay. Changed with</td></tr><tr><th><a href="mob.html#var/next_click_adjust">next_click_adjust</a></th><td>Unused</td></tr><tr><th><a href="mob.html#var/next_click_modifier">next_click_modifier</a></th><td>Unused</td></tr><tr><th><a href="mob.html#var/next_move_adjust">next_move_adjust</a></th><td>Unused, used to adjust our next move on a linar skill world.time + (how_many_deciseconds + Next move adjust) = Next move</td></tr><tr><th><a href="mob.html#var/next_move_modifier">next_move_modifier</a></th><td>Value to multiply action delays by, actually used world.time + (how_many_deciseconds * Next move Adjust) = Next move</td></tr><tr><th><a href="mob.html#var/nutrition_hud_override">nutrition_hud_override</a></th><td>Overrides the nutrition HUD element state if set.</td></tr><tr><th><a href="mob.html#var/observers">observers</a></th><td>List of observers currently observing us.</td></tr><tr><th><a href="mob.html#var/open_uis">open_uis</a></th><td>Tracks the open UIs that a mob has, used in TGUI for various things, such as updating UIs</td></tr><tr><th><a href="mob.html#var/runechat_msg_location">runechat_msg_location</a></th><td>A soft reference to the location where this mob's runechat message will appear. Uses <code>UID()</code>.</td></tr><tr><th><a href="mob.html#var/s_active">s_active</a></th><td>Active storage container</td></tr><tr><th><a href="mob.html#var/screens">screens</a></th><td>Used for some screen objects</td></tr><tr><th><a href="mob.html#var/sound_environment_override">sound_environment_override</a></th><td>Override for sound_environments. If this is set the user will always hear a specific type of reverb (Instead of the area defined reverb)</td></tr><tr><th><a href="mob.html#var/speaks_ooc">speaks_ooc</a></th><td>Does this mob speak OOC?
Controls whether they can say some symbols.</td></tr><tr><th><a href="mob.html#var/stat">stat</a></th><td>Is this mob alive, unconscious or dead?</td></tr><tr><th><a href="mob.html#var/suiciding">suiciding</a></th><td>Is our mob currently suiciding? Used for suicide code along with many different revival checks</td></tr><tr><th><a href="mob.html#var/tgui_open_uis">tgui_open_uis</a></th><td>global</td></tr><tr><th><a href="mob.html#var/thinking">thinking</a></th><td>Affects if you have a thinking indicator</td></tr><tr><th><a href="mob.html#var/typing">typing</a></th><td>Affects if you have a typing indicator</td></tr><tr><th><a href="mob.html#var/wear_mask">wear_mask</a></th><td>The currently worn mask</td></tr><tr><th><a href="mob.html#var/zone_selected">zone_selected</a></th><td>The zone this mob is currently targeting</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="mob.html#proc/AddDisease">AddDisease</a></th><td>Directly adds a disease to a mob.</td></tr><tr><th><a href="mob.html#proc/ForceContractDisease">ForceContractDisease</a></th><td>Forces the mob to contract a virus. If the mob can have viruses. Ignores clothing and other protection
Returns TRUE if it succeeds. False if it doesn't</td></tr><tr><th><a href="mob.html#proc/HasDisease">HasDisease</a></th><td>Returns whether or not the mob has the disease</td></tr><tr><th><a href="mob.html#proc/Process_Spacemove">Process_Spacemove</a></th><td>Handles mob/living movement in space (or no gravity)</td></tr><tr><th><a href="mob.html#proc/add_quirk_to_save">add_quirk_to_save</a></th><td>Mob Procs, mostly for many mob/new_player in the lobby screen</td></tr><tr><th><a href="mob.html#proc/adjust_disgust">adjust_disgust</a></th><td>Adjust the disgust level of a mob</td></tr><tr><th><a href="mob.html#proc/adjust_nutrition">adjust_nutrition</a></th><td>Adjust the nutrition of a mob</td></tr><tr><th><a href="mob.html#proc/become_mouse">become_mouse</a></th><td>Returns true if the player successfully becomes a mouse</td></tr><tr><th><a href="mob.html#proc/become_uncliented">become_uncliented</a></th><td>Cleanup proc that's called when a mob loses a client, either through client destroy or logout
Logout happens post client del, so we can't just copypaste this there. This keeps things clean and consistent</td></tr><tr><th><a href="mob.html#proc/broadcast_examine">broadcast_examine</a></th><td>Tells nearby mobs about our examination.</td></tr><tr><th><a href="mob.html#proc/buckle_mob">buckle_mob</a></th><td>Buckle to another mob</td></tr><tr><th><a href="mob.html#proc/can_block_magic">can_block_magic</a></th><td>Checks to see if the mob can block magic</td></tr><tr><th><a href="mob.html#proc/can_buckle">can_buckle</a></th><td>can the mob be buckled to something by default?</td></tr><tr><th><a href="mob.html#proc/can_cast_magic">can_cast_magic</a></th><td>Checks to see if the mob can cast normal magic spells.</td></tr><tr><th><a href="mob.html#proc/can_contract_disease">can_contract_disease</a></th><td>Checks if a mob can contract the disease</td></tr><tr><th><a href="mob.html#proc/can_resist">can_resist</a></th><td>Can this mob resist (default FALSE)</td></tr><tr><th><a href="mob.html#proc/can_unbuckle">can_unbuckle</a></th><td>can the mob be unbuckled from something by default?</td></tr><tr><th><a href="mob.html#proc/can_use_audio_emote">can_use_audio_emote</a></th><td>Helper proc to determine if a mob can use emotes that make sound or not.</td></tr><tr><th><a href="mob.html#proc/can_use_clickbinds">can_use_clickbinds</a></th><td>Can this mob use keybinded click actions? (Altclick, Ctrlclick, ect)</td></tr><tr><th><a href="mob.html#proc/clear_important_client_contents">clear_important_client_contents</a></th><td>Clears the clients channel of this mob</td></tr><tr><th><a href="mob.html#proc/compressor_grind">compressor_grind</a></th><td>Grinds a mob in the turbine</td></tr><tr><th><a href="mob.html#proc/create_chat_message">create_chat_message</a></th><td>Creates a message overlay at a defined location for a given speaker</td></tr><tr><th><a href="mob.html#proc/custom_emote">custom_emote</a></th><td>Perform a custom emote.</td></tr><tr><th><a href="mob.html#proc/drop_item_to_ground">drop_item_to_ground</a></th><td>Unequip <code>target</code> and drop it at our current location.</td></tr><tr><th><a href="mob.html#proc/emote">emote</a></th><td>Send an emote.</td></tr><tr><th><a href="mob.html#proc/enable_client_mobs_in_contents">enable_client_mobs_in_contents</a></th><td>Propogates ourselves through our nested contents, similar to other important_recursive_contents procs
Main difference is that client contents need to possibly duplicate recursive contents for the clients mob AND its eye</td></tr><tr><th><a href="mob.html#proc/flash_screen_color">flash_screen_color</a></th><td>Flash up a color as an overlay on a player's screen, then fade back to normal.</td></tr><tr><th><a href="mob.html#proc/get_empty_held_indexes">get_empty_held_indexes</a></th><td>Returns a number corresponding to an open hand, or null if no open hands.</td></tr><tr><th><a href="mob.html#proc/get_mob_buckling_height">get_mob_buckling_height</a></th><td>returns the height in pixel the mob should have when buckled to another mob.</td></tr><tr><th><a href="mob.html#proc/get_random_valid_zone">get_random_valid_zone</a></th><td>[/proc/ran_zone] but only returns bodyzones that the mob actually has.</td></tr><tr><th><a href="mob.html#proc/get_spacemove_backup">get_spacemove_backup</a></th><td>Finds a target near a mob that is viable for pushing off when moving.
Takes the intended movement direction as input, alongside if the context is checking if we're allowed to continue drifting</td></tr><tr><th><a href="mob.html#proc/get_telepathic_targets">get_telepathic_targets</a></th><td>Returns an assoc list which contains the mobs in range and their &quot;visible&quot; name.
Mobs out of view but in range will be listed as unknown. Else they will have their visible name</td></tr><tr><th><a href="mob.html#proc/ghost_can_reenter">ghost_can_reenter</a></th><td>Checks if a mob's ghost can reenter their body or not. Used to check for DNR or AntagHUD.</td></tr><tr><th><a href="mob.html#proc/grant_actions_by_list">grant_actions_by_list</a></th><td>Takes in an associated list (key <code>/datum/action</code> typepaths, value is the AI
blackboard key) and handles granting the action and adding it to the mob's
AI controller blackboard. This is only useful in instances where you don't
want to store the reference to the action on a variable on the mob. You can
set the value to null if you don't want to add it to the blackboard (like in
player controlled instances). Is also safe with null AI controllers. Assumes
that the action will be initialized and held in the mob itself, which is
typically standard.</td></tr><tr><th><a href="mob.html#proc/held_items">held_items</a></th><td>Returns a list of items being held</td></tr><tr><th><a href="mob.html#proc/hide_other_mob_action_buttons">hide_other_mob_action_buttons</a></th><td>Hide another mob's action buttons from this mob</td></tr><tr><th><a href="mob.html#proc/is_holding">is_holding</a></th><td>Check if an item is in one of our hands</td></tr><tr><th><a href="mob.html#proc/manual_emote">manual_emote</a></th><td>Allows the intrepid coder to send a basic emote
Takes text as input, sends it out to those who need to know after some light parsing
If you need something more complex, make it into a datum emote
Arguments:</td></tr><tr><th><a href="mob.html#proc/on_block_magic_effects">on_block_magic_effects</a></th><td>Called whenever a magic effect with a charge cost is blocked and we haven't recently blocked magic.</td></tr><tr><th><a href="mob.html#proc/on_observing_action_granted">on_observing_action_granted</a></th><td>Signal proc for <a href="code/__DEFINES/dcs/datum_signals.html#define/COMSIG_MOB_GRANTED_ACTION" title="COMSIG_MOB_GRANTED_ACTION">COMSIG_MOB_GRANTED_ACTION</a> - If we're viewing another mob's action buttons,
we need to update with any newly added buttons granted to the mob.</td></tr><tr><th><a href="mob.html#proc/on_observing_action_removed">on_observing_action_removed</a></th><td>Signal proc for <a href="code/__DEFINES/dcs/datum_signals.html#define/COMSIG_MOB_REMOVED_ACTION" title="COMSIG_MOB_REMOVED_ACTION">COMSIG_MOB_REMOVED_ACTION</a> - If we're viewing another mob's action buttons,
we need to update with any removed buttons from the mob.</td></tr><tr><th><a href="mob.html#proc/pointed">pointed</a></th><td>Point at an atom</td></tr><tr><th><a href="mob.html#proc/post_buckle_mob">post_buckle_mob</a></th><td>Call back post buckle to a mob to offset your visual height</td></tr><tr><th><a href="mob.html#proc/post_unbuckle_mob">post_unbuckle_mob</a></th><td>Call back post unbuckle from a mob, (reset your visual height here)</td></tr><tr><th><a href="mob.html#proc/remove_quirk_from_save">remove_quirk_from_save</a></th><td>Returns true if a quirk was removed, false otherwise</td></tr><tr><th><a href="mob.html#proc/run_mode">run_mode</a></th><td>proc version to finish /mob/verb/mode() execution. used in case the proc needs to be queued for the tick after its first called</td></tr><tr><th><a href="mob.html#proc/run_pointed">run_pointed</a></th><td>possibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()].
either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro</td></tr><tr><th><a href="mob.html#proc/run_quick_equip">run_quick_equip</a></th><td>proc extender of [/mob/verb/quick_equip] used to make the verb queuable if the server is overloaded</td></tr><tr><th><a href="mob.html#proc/say_understands">say_understands</a></th><td>Checks if the mob can understand the other speaker</td></tr><tr><th><a href="mob.html#proc/set_invisible">set_invisible</a></th><td>Proc to PROPERLY set mob invisibility, huds gotta get set too!</td></tr><tr><th><a href="mob.html#proc/set_nutrition">set_nutrition</a></th><td>Force set the mob nutrition</td></tr><tr><th><a href="mob.html#proc/set_thinking_indicator">set_thinking_indicator</a></th><td>Toggles the floating thought bubble above a players head.</td></tr><tr><th><a href="mob.html#proc/set_typing_indicator">set_typing_indicator</a></th><td>Toggles the floating chat bubble above a players head.</td></tr><tr><th><a href="mob.html#proc/shared_ui_interaction">shared_ui_interaction</a></th><td>public</td></tr><tr><th><a href="mob.html#proc/show_other_mob_action_buttons">show_other_mob_action_buttons</a></th><td>Show (most) of the another mob's action buttons to this mob</td></tr><tr><th><a href="mob.html#proc/show_rads">show_rads</a></th><td>Show an overlay of radiation levels on radioactive objects.</td></tr><tr><th><a href="mob.html#proc/shuttleRotate">shuttleRotate</a></th><td>Turf rotate procs</td></tr><tr><th><a href="mob.html#proc/special_get_hands_check">special_get_hands_check</a></th><td>Specal proc for special mobs that use &quot;hands&quot; in weird ways</td></tr><tr><th><a href="mob.html#proc/start_audio_emote_cooldown">start_audio_emote_cooldown</a></th><td>Start the cooldown for an emote that plays audio.</td></tr><tr><th><a href="mob.html#proc/tamed">tamed</a></th><td>Called after the atom is 'tamed' for type-specific operations, Usually called by the tameable component but also other things.</td></tr><tr><th><a href="mob.html#proc/throw_alert">throw_alert</a></th><td>Proc to create or update an alert. Returns the alert if the alert is new or updated, 0 if it was thrown already.
Each mob may only have one alert per category.</td></tr><tr><th><a href="mob.html#proc/transfer_item_to">transfer_item_to</a></th><td>Unequip <code>target</code> and relocate it to <code>destination</code>.</td></tr><tr><th><a href="mob.html#proc/unequip">unequip</a></th><td>Unequip <code>target</code> without relocating it.</td></tr><tr><th><a href="mob.html#proc/unequip_to">unequip_to</a></th><td>Central proc for unequipping items. Cannot be called but can be overridden so
long as default arg values are preserved. Use <a href="mob.html#proc/unequip" title="/mob">/mob/proc/unequip</a>,
<a href="mob.html#proc/drop_item_to_ground" title="/mob">/mob/proc/drop_item_to_ground</a>, or <a href="mob.html#proc/transfer_item_to" title="/mob">/mob/proc/transfer_item_to</a> instead.</td></tr><tr><th><a href="mob.html#proc/update_runechat_msg_location">update_runechat_msg_location</a></th><td>Updates the mob's runechat maptext display location.</td></tr><tr><th><a href="mob.html#proc/usable_emote_keys">usable_emote_keys</a></th><td>Get a list of all emote keys usable by the current mob.</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/active_mutations"><aside class="declaration">var </aside>active_mutations <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L182"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 182"></a></h3><p>List of the active mutation types</p><h3 id="var/alerts"><aside class="declaration">var </aside>alerts <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L219"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 219"></a></h3><p>lazy list. contains /atom/movable/screen/alert only, On /mob so clientless mobs will throw alerts properly</p><h3 id="var/audio_emote_cd_status"><aside class="declaration">var </aside>audio_emote_cd_status <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L112"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 112"></a></h3><p>Cooldown on audio effects from emotes.</p><h3 id="var/audio_emote_unintentional_cd_status"><aside class="declaration">var </aside>audio_emote_unintentional_cd_status <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L115"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 115"></a></h3><p>Cooldown on audio effects from unintentional emotes.</p><h3 id="var/blood_state"><aside class="declaration">var </aside>blood_state <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L227"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 227"></a></h3><p>Weirdly named, effects how blood transfers onto objects</p><h3 id="var/bloody_feet"><aside class="declaration">var </aside>bloody_feet <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L229"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 229"></a></h3><p>Assoc list for tracking how &quot;bloody&quot; a mobs feet are, used for creating bloody foot/shoeprints on turfs when moving</p><h3 id="var/bloody_hands"><aside class="declaration">var </aside>bloody_hands <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L221"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 221"></a></h3><p>Makes items bloody if you touch them</p><h3 id="var/buckled"><aside class="declaration">var </aside>buckled <aside> /<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L83"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 83"></a></h3><p>movable atoms buckled to this mob</p><h3 id="var/canon_client"><aside class="declaration">var </aside>canon_client <aside> /<a href="client.html">client</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L15"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 15"></a></h3><p>The current client inhabiting this mob. Managed by login/logout
This exists so we can do cleanup in logout for occasions where a client was transfere rather then destroyed
We need to do this because the mob on logout never actually has a reference to client
We also need to clear this var/do other cleanup in client/Destroy, since that happens before logout</p><h3 id="var/click_interceptor"><aside class="declaration">var </aside>click_interceptor <aside> /<a href="datum.html">datum</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L262"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 262"></a></h3><p>Allows a datum to intercept all click calls this mob is the source of.
This is <em>not</em> necessarily an instance of <a href="datum/click_intercept.html" title="/datum/click_intercept">/datum/click_intercept</a>.</p><h3 id="var/do_afters"><aside class="declaration">var </aside>do_afters <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L267"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 267"></a></h3><p>For storing what do_after's something has, key = string, value = amount of interactions of that type happening.</p><h3 id="var/emote_cooldown_override"><aside class="declaration">var </aside>emote_cooldown_override <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L118"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 118"></a></h3><p>Override for cooldowns on non-audio emotes. Should be a number in deciseconds.</p><h3 id="var/emotes_used"><aside class="declaration">var </aside>emotes_used <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L121"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 121"></a></h3><p>Tracks last uses of emotes for cooldown purposes</p><h3 id="var/feet_blood_DNA"><aside class="declaration">var </aside>feet_blood_DNA <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L223"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 223"></a></h3><p>Basically a lazy list, copies the DNA of blood you step in</p><h3 id="var/feet_blood_color"><aside class="declaration">var </aside>feet_blood_color <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L225"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 225"></a></h3><p>affects the blood color of your feet, color taken from the blood you step in</p><h3 id="var/gunshot_residue"><aside class="declaration">var </aside>gunshot_residue <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L265"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 265"></a></h3><p>gunshot residue for det work. holds the caliber of any BALLISTIC weapon fired by this mob without gloves.</p><h3 id="var/hand"><aside class="declaration">var </aside>hand <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L57"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 57"></a></h3><p>True for left hand active, otherwise for right hand active</p><h3 id="var/health_hud_override"><aside class="declaration">var </aside>health_hud_override <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L207"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 207"></a></h3><p>Overrides the health HUD element state if set.</p><h3 id="var/hud_type"><aside class="declaration">var </aside>hud_type <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L135"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 135"></a></h3><p>The type of HUD that this mob uses. Not to</p><h3 id="var/hud_used"><aside class="declaration">var </aside>hud_used <aside> /<a href="datum.html">datum</a>/<a href="datum/hud.html">hud</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L95"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 95"></a></h3><p>The instantiated version of the mob's hud.</p><h3 id="var/input_focus"><aside class="declaration">var </aside>input_focus <aside> /<a href="datum.html">datum</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L213"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 213"></a></h3><p>The datum receiving keyboard input. parent mob by default.</p><h3 id="var/last_movement_dir"><aside class="declaration">var </aside>last_movement_dir <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L187"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 187"></a></h3><p>The direction they last moved</p><h3 id="var/last_typed"><aside class="declaration">var </aside>last_typed <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L235"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 235"></a></h3><p>Last thing we typed in to the typing indicator, probably does not need to exist</p><h3 id="var/last_typed_time"><aside class="declaration">var </aside>last_typed_time <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L237"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 237"></a></h3><p>Last time we typed something in to the typing popup</p><h3 id="var/memory"><aside class="declaration">var </aside>memory <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L54"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 54"></a></h3><p>other mobs we wont move when we're grab pulled. Not empty only when being grab pulled</p><h3 id="var/next_click"><aside class="declaration">var </aside>next_click <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L246"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 246"></a></h3><p>This is mainly modified by click code, to modify click delays elsewhere, use next_move and changeNext_move(), Controls the click delay. Changed with</p><h3 id="var/next_click_adjust"><aside class="declaration">var </aside>next_click_adjust <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L250"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 250"></a></h3><p>Unused</p><h3 id="var/next_click_modifier"><aside class="declaration">var </aside>next_click_modifier <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L252"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 252"></a></h3><p>Unused</p><h3 id="var/next_move_adjust"><aside class="declaration">var </aside>next_move_adjust <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L241"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 241"></a></h3><p>Unused, used to adjust our next move on a linar skill world.time + (how_many_deciseconds + Next move adjust) = Next move</p><h3 id="var/next_move_modifier"><aside class="declaration">var </aside>next_move_modifier <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L243"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 243"></a></h3><p>Value to multiply action delays by, actually used world.time + (how_many_deciseconds * Next move Adjust) = Next move</p><h3 id="var/nutrition_hud_override"><aside class="declaration">var </aside>nutrition_hud_override <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L209"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 209"></a></h3><p>Overrides the nutrition HUD element state if set.</p><h3 id="var/observers"><aside class="declaration">var </aside>observers <aside> /list/<a href="mob.html">mob</a>/<a href="mob/dead/observer.html">dead/observer</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L256"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 256"></a></h3><p>List of observers currently observing us.</p><h3 id="var/open_uis"><aside class="declaration">var </aside>open_uis <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L254"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 254"></a></h3><p>Tracks the open UIs that a mob has, used in TGUI for various things, such as updating UIs</p><h3 id="var/runechat_msg_location"><aside class="declaration">var </aside>runechat_msg_location <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L211"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 211"></a></h3><p>A soft reference to the location where this mob's runechat message will appear. Uses <code>UID()</code>.</p><h3 id="var/s_active"><aside class="declaration">var </aside>s_active <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/<a href="obj/item/storage.html">storage</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L90"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 90"></a></h3><p>Active storage container</p><h3 id="var/screens"><aside class="declaration">var </aside>screens <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L217"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 217"></a></h3><p>Used for some screen objects</p><h3 id="var/sound_environment_override"><aside class="declaration">var </aside>sound_environment_override <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L140"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 140"></a></h3><p>Override for sound_environments. If this is set the user will always hear a specific type of reverb (Instead of the area defined reverb)</p><h3 id="var/speaks_ooc"><aside class="declaration">var </aside>speaks_ooc <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L259"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 259"></a></h3><p>Does this mob speak OOC?
Controls whether they can say some symbols.</p><h3 id="var/stat"><aside class="declaration">var </aside>stat <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L21"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 21"></a></h3><p>Is this mob alive, unconscious or dead?</p><h3 id="var/suiciding"><aside class="declaration">var </aside>suiciding <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L215"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 215"></a></h3><p>Is our mob currently suiciding? Used for suicide code along with many different revival checks</p><h3 id="var/tgui_open_uis"><aside class="declaration">var </aside>tgui_open_uis <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/external.dm#L129"><img src="git.png" width="16" height="16" title="code/modules/tgui/external.dm 129"></a></h3><p>global</p>
<p>Tracks open UIs for a user.</p><h3 id="var/thinking"><aside class="declaration">var </aside>thinking <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L233"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 233"></a></h3><p>Affects if you have a thinking indicator</p><h3 id="var/typing"><aside class="declaration">var </aside>typing <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L231"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 231"></a></h3><p>Affects if you have a typing indicator</p><h3 id="var/wear_mask"><aside class="declaration">var </aside>wear_mask <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L92"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 92"></a></h3><p>The currently worn mask</p><h3 id="var/zone_selected"><aside class="declaration">var </aside>zone_selected <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_vars.dm#L24"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_vars.dm 24"></a></h3><p>The zone this mob is currently targeting</p><h2 id="proc">Proc Details</h2><h3 id="proc/AddDisease"><aside class="declaration">proc </aside>AddDisease<aside>(/<a href="datum.html">datum</a>/<a href="datum/disease.html">disease</a>/D, respect_carrier, start_stage) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/diseases/_MobProcs.dm#L178"><img src="git.png" width="16" height="16" title="code/datums/diseases/_MobProcs.dm 178"></a></aside></h3><p>Directly adds a disease to a mob.</p><h3 id="proc/ForceContractDisease"><aside class="declaration">proc </aside>ForceContractDisease<aside>(/<a href="datum.html">datum</a>/<a href="datum/disease.html">disease</a>/D, respect_carrier, notify_ghosts) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/diseases/_MobProcs.dm#L166"><img src="git.png" width="16" height="16" title="code/datums/diseases/_MobProcs.dm 166"></a></aside></h3><p>Forces the mob to contract a virus. If the mob can have viruses. Ignores clothing and other protection
Returns TRUE if it succeeds. False if it doesn't</p>
<p>Arguments:</p>
<ul>
<li>D - the disease the mob will try to contract</li>
<li>respect_carrier - if set to TRUE will not ignore the disease carrier flag</li>
<li>notify_ghosts - will notify ghosts of infection if set to TRUE</li>
</ul><h3 id="proc/HasDisease"><aside class="declaration">proc </aside>HasDisease<aside>(/<a href="datum.html">datum</a>/<a href="datum/disease.html">disease</a>/D) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/diseases/_MobProcs.dm#L136"><img src="git.png" width="16" height="16" title="code/datums/diseases/_MobProcs.dm 136"></a></aside></h3><p>Returns whether or not the mob has the disease</p><h3 id="proc/Process_Spacemove"><aside class="parent"><a title="/atom/movable" href="atom/movable.html#proc/Process_Spacemove"></a></aside>Process_Spacemove<aside>(movement_dir, continuous_move) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_movement.dm#L332"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_movement.dm 332"></a></aside></h3><p>Handles mob/living movement in space (or no gravity)</p>
<p>Called by /client/Move()</p>
<p>return TRUE for movement or FALSE for none</p><h3 id="proc/add_quirk_to_save"><aside class="declaration">proc </aside>add_quirk_to_save<aside>(/<a href="datum.html">datum</a>/<a href="datum/quirk.html">quirk</a>/to_add) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/preference/quirks/quirk.dm#L102"><img src="git.png" width="16" height="16" title="code/modules/client/preference/quirks/quirk.dm 102"></a></aside></h3><p>Mob Procs, mostly for many mob/new_player in the lobby screen</p><h3 id="proc/adjust_disgust"><aside class="declaration">proc </aside>adjust_disgust<aside>(amount) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/living/living_status_procs.dm#L928"><img src="git.png" width="16" height="16" title="code/modules/mob/living/living_status_procs.dm 928"></a></aside></h3><p>Adjust the disgust level of a mob</p><h3 id="proc/adjust_nutrition"><aside class="declaration">proc </aside>adjust_nutrition<aside>(change) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1388"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1388"></a></aside></h3><p>Adjust the nutrition of a mob</p><h3 id="proc/become_mouse"><aside class="declaration">proc </aside>become_mouse<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1110"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1110"></a></aside></h3><p>Returns true if the player successfully becomes a mouse</p><h3 id="proc/become_uncliented"><aside class="declaration">proc </aside>become_uncliented<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1497"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1497"></a></aside></h3><p>Cleanup proc that's called when a mob loses a client, either through client destroy or logout
Logout happens post client del, so we can't just copypaste this there. This keeps things clean and consistent</p><h3 id="proc/broadcast_examine"><aside class="declaration">proc </aside>broadcast_examine<aside>(/<a href="atom.html">atom</a>/examined) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L675"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 675"></a></aside></h3><p>Tells nearby mobs about our examination.</p><h3 id="proc/buckle_mob">buckle_mob<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/M, force, check_loc) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1191"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1191"></a></aside></h3><p>Buckle to another mob</p>
<p>You can buckle on mobs if you're next to them since most are dense</p>
<p>Turns you to face the other mob too</p><h3 id="proc/can_block_magic"><aside class="declaration">proc </aside>can_block_magic<aside>(casted_magic_flags, charge_cost) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1561"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1561"></a></aside></h3><p>Checks to see if the mob can block magic</p>
<p>args:</p>
<ul>
<li>casted_magic_flags (optional) A bitfield with the types of magic resistance being checked (see flags at: /datum/component/anti_magic)</li>
<li>charge_cost (optional) The cost of charge to block a spell that will be subtracted from the protection used</li>
</ul><h3 id="proc/can_buckle"><aside class="declaration">proc </aside>can_buckle<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1225"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1225"></a></aside></h3><p>can the mob be buckled to something by default?</p><h3 id="proc/can_cast_magic"><aside class="declaration">proc </aside>can_cast_magic<aside>(magic_flags) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1547"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1547"></a></aside></h3><p>Checks to see if the mob can cast normal magic spells.</p>
<p>args:</p>
<ul>
<li>magic_flags (optional) A bitfield with the type of magic being cast (see flags at: /datum/component/anti_magic)</li>
</ul><h3 id="proc/can_contract_disease"><aside class="declaration">proc </aside>can_contract_disease<aside>(/<a href="datum.html">datum</a>/<a href="datum/disease.html">disease</a>/D, spread_method) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/diseases/_MobProcs.dm#L143"><img src="git.png" width="16" height="16" title="code/datums/diseases/_MobProcs.dm 143"></a></aside></h3><p>Checks if a mob can contract the disease</p><h3 id="proc/can_resist"><aside class="declaration">proc </aside>can_resist<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1308"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1308"></a></aside></h3><p>Can this mob resist (default FALSE)</p><h3 id="proc/can_unbuckle"><aside class="declaration">proc </aside>can_unbuckle<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1229"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1229"></a></aside></h3><p>can the mob be unbuckled from something by default?</p><h3 id="proc/can_use_audio_emote"><aside class="declaration">proc </aside>can_use_audio_emote<aside>(intentional) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_misc_procs.dm#L823"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_misc_procs.dm 823"></a></aside></h3><p>Helper proc to determine if a mob can use emotes that make sound or not.</p><h3 id="proc/can_use_clickbinds"><aside class="declaration">proc </aside>can_use_clickbinds<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/click.dm#L240"><img src="git.png" width="16" height="16" title="code/_onclick/click.dm 240"></a></aside></h3><p>Can this mob use keybinded click actions? (Altclick, Ctrlclick, ect)</p><h3 id="proc/clear_important_client_contents"><aside class="declaration">proc </aside>clear_important_client_contents<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/game/atoms_movable.dm#L1341"><img src="git.png" width="16" height="16" title="code/game/atoms_movable.dm 1341"></a></aside></h3><p>Clears the clients channel of this mob</p><h3 id="proc/compressor_grind">compressor_grind<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/diseases/_MobProcs.dm#L132"><img src="git.png" width="16" height="16" title="code/datums/diseases/_MobProcs.dm 132"></a></aside></h3><p>Grinds a mob in the turbine</p><h3 id="proc/create_chat_message"><aside class="declaration">proc </aside>create_chat_message<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/speaker, raw_message, italics, size, symbol) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/chatmessage.dm#L253"><img src="git.png" width="16" height="16" title="code/datums/chatmessage.dm 253"></a></aside></h3><p>Creates a message overlay at a defined location for a given speaker</p>
<p>Arguments:</p>
<ul>
<li>speaker - The atom who is saying this message</li>
<li>raw_message - The text content of the message</li>
<li>italics - Vacuum and other things</li>
<li>size - Size of the message</li>
<li>symbol - The symbol type of the message</li>
</ul><h3 id="proc/custom_emote"><aside class="declaration">proc </aside>custom_emote<aside>(m_type, message, intentional) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_emote.dm#L51"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_emote.dm 51"></a></aside></h3><p>Perform a custom emote.</p>
<ul>
<li>m_type: Type of message to send.</li>
<li>message: Content of the message. If none is provided, the user will be prompted to choose the input.</li>
<li>intentional: Whether or not the user intendeded to perform the emote.</li>
</ul><h3 id="proc/drop_item_to_ground"><aside class="declaration">proc </aside>drop_item_to_ground<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/target, force, silent, drop_inventory) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L201"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 201"></a></aside></h3><p>Unequip <code>target</code> and drop it at our current location.</p>
<p>Returns <code>FALSE</code> if the unequip failed, and <code>target</code> if it succeeded. Returns
<code>FALSE</code> if there is no target to drop. If the caller cares about handling the
resultant dropped object, they are responsible for ensuring that the thing
actually exists. This is to ensure that the return value is meaningful and that
a nonexistant item being unequipped and returning null is not interpreted as
a failure.</p>
<p>However, if you don't care about the return value, feel free to pass in possibly
nonexistant objects, such as when dropping anything in a slot for a spell/virus
that replaces existing clothing.</p><h3 id="proc/emote"><aside class="declaration">proc </aside>emote<aside>(emote_key, type_override, message, intentional, force_silence) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_emote.dm#L13"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_emote.dm 13"></a></aside></h3><p>Send an emote.</p>
<ul>
<li>emote_key: Key of the emote being triggered</li>
<li>m_type: Type of the emote, like EMOTE_AUDIBLE. If this is not null, the default type of the emote will be overridden.</li>
<li>message: Custom parameter for the emote. This should be used if you want to pass something like a target programmatically.</li>
<li>intentional: Whether or not the emote was deliberately triggered by the mob. If true, it's forced, which skips some checks when calling the emote.</li>
<li>force_silence: If true, unusable/nonexistent emotes will not notify the user.</li>
</ul><h3 id="proc/enable_client_mobs_in_contents"><aside class="declaration">proc </aside>enable_client_mobs_in_contents<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/game/atoms_movable.dm#L1327"><img src="git.png" width="16" height="16" title="code/game/atoms_movable.dm 1327"></a></aside></h3><p>Propogates ourselves through our nested contents, similar to other important_recursive_contents procs
Main difference is that client contents need to possibly duplicate recursive contents for the clients mob AND its eye</p><h3 id="proc/flash_screen_color"><aside class="declaration">proc </aside>flash_screen_color<aside>(flash_color, flash_time) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_misc_procs.dm#L86"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_misc_procs.dm 86"></a></aside></h3><p>Flash up a color as an overlay on a player's screen, then fade back to normal.</p>
<p>Arguments:</p>
<ul>
<li>flash_color - The color to overlay on the screen.</li>
<li>flash_time - The time it takes for the color to fade back to normal.</li>
</ul><h3 id="proc/get_empty_held_indexes"><aside class="declaration">proc </aside>get_empty_held_indexes<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L43"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 43"></a></aside></h3><p>Returns a number corresponding to an open hand, or null if no open hands.</p><h3 id="proc/get_mob_buckling_height"><aside class="declaration">proc </aside>get_mob_buckling_height<aside>(/<a href="mob.html">mob</a>/seat) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1217"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1217"></a></aside></h3><p>returns the height in pixel the mob should have when buckled to another mob.</p><h3 id="proc/get_random_valid_zone"><aside class="declaration">proc </aside>get_random_valid_zone<aside>(base_zone, base_probability, /list/blacklisted_parts, even_weights, bypass_warning) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/__HELPERS/mob_helpers.dm#L809"><img src="git.png" width="16" height="16" title="code/__HELPERS/mob_helpers.dm 809"></a></aside></h3><p>[/proc/ran_zone] but only returns bodyzones that the mob actually has.</p>
<ul>
<li>
<p><code>blacklisted_parts</code> allows you to specify zones that will not be chosen.
e.g.: list(<code>BODY_ZONE_CHEST</code>, <code>BODY_ZONE_R_LEG</code>). <strong>Blacklisting
<code>BODY_ZONE_CHEST</code> is really risky since it's the only bodypart guaranteed
to always exist. Only do that if you're certain they have limbs, otherwise
we'll crash!</strong></p>
</li>
<li>
<p>[/proc/ran_zone] has a base <code>prob(80)</code> to return the <code>base_zone</code> (or if null,
<code>BODY_ZONE_CHEST</code>) vs something in our generated list of limbs. This
probability is overriden when either blacklisted_parts contains
BODY_ZONE_CHEST and we aren't passed a base_zone (since the default
fallback for ran_zone would be the chest in that scenario), or if
even_weights is enabled. You can also manually adjust this probability by
altering <code>base_probability</code>.</p>
</li>
<li>
<p>even_weights - ran_zone has a 40% chance (after the prob(80) mentioned
above) of picking a limb, vs the torso &amp; head which have an additional 10%
chance. Setting even_weights to TRUE will make it just a straight up pick()
between all possible bodyparts.</p>
</li>
</ul><h3 id="proc/get_spacemove_backup">get_spacemove_backup<aside>(moving_direction, continuous_move) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_movement.dm#L355"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_movement.dm 355"></a></aside></h3><p>Finds a target near a mob that is viable for pushing off when moving.
Takes the intended movement direction as input, alongside if the context is checking if we're allowed to continue drifting</p><h3 id="proc/get_telepathic_targets"><aside class="declaration">proc </aside>get_telepathic_targets<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L567"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 567"></a></aside></h3><p>Returns an assoc list which contains the mobs in range and their &quot;visible&quot; name.
Mobs out of view but in range will be listed as unknown. Else they will have their visible name</p><h3 id="proc/ghost_can_reenter"><aside class="declaration">proc </aside>ghost_can_reenter<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_misc_procs.dm#L641"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_misc_procs.dm 641"></a></aside></h3><p>Checks if a mob's ghost can reenter their body or not. Used to check for DNR or AntagHUD.</p>
<p>Returns FALSE if there is a ghost, and it can't reenter the body. Returns TRUE otherwise.</p><h3 id="proc/grant_actions_by_list"><aside class="declaration">proc </aside>grant_actions_by_list<aside>(/list/input) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/__HELPERS/mob_helpers.dm#L773"><img src="git.png" width="16" height="16" title="code/__HELPERS/mob_helpers.dm 773"></a></aside></h3><p>Takes in an associated list (key <code>/datum/action</code> typepaths, value is the AI
blackboard key) and handles granting the action and adding it to the mob's
AI controller blackboard. This is only useful in instances where you don't
want to store the reference to the action on a variable on the mob. You can
set the value to null if you don't want to add it to the blackboard (like in
player controlled instances). Is also safe with null AI controllers. Assumes
that the action will be initialized and held in the mob itself, which is
typically standard.</p><h3 id="proc/held_items"><aside class="declaration">proc </aside>held_items<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L36"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 36"></a></aside></h3><p>Returns a list of items being held</p><h3 id="proc/hide_other_mob_action_buttons"><aside class="declaration">proc </aside>hide_other_mob_action_buttons<aside>(/<a href="mob.html">mob</a>/take_from) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/action_button.dm#L631"><img src="git.png" width="16" height="16" title="code/_onclick/hud/action_button.dm 631"></a></aside></h3><p>Hide another mob's action buttons from this mob</p>
<p>Used for observers viewing another mob's screen</p><h3 id="proc/is_holding"><aside class="declaration">proc </aside>is_holding<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/I) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L32"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 32"></a></aside></h3><p>Check if an item is in one of our hands</p><h3 id="proc/manual_emote"><aside class="declaration">proc </aside>manual_emote<aside>(text) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/emote.dm#L645"><img src="git.png" width="16" height="16" title="code/datums/emote.dm 645"></a></aside></h3><p>Allows the intrepid coder to send a basic emote
Takes text as input, sends it out to those who need to know after some light parsing
If you need something more complex, make it into a datum emote
Arguments:</p>
<ul>
<li>text - The text to send out</li>
</ul>
<p>Returns TRUE if it was able to run the emote, FALSE otherwise.</p><h3 id="proc/on_block_magic_effects"><aside class="declaration">proc </aside>on_block_magic_effects<aside>(magic_flags, /list/antimagic_sources) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1582"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1582"></a></aside></h3><p>Called whenever a magic effect with a charge cost is blocked and we haven't recently blocked magic.</p><h3 id="proc/on_observing_action_granted"><aside class="declaration">proc </aside>on_observing_action_granted<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/source, /<a href="datum.html">datum</a>/<a href="datum/action.html">action</a>/action) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/action_button.dm#L638"><img src="git.png" width="16" height="16" title="code/_onclick/hud/action_button.dm 638"></a></aside></h3><p>Signal proc for <a href="code/__DEFINES/dcs/datum_signals.html#define/COMSIG_MOB_GRANTED_ACTION" title="COMSIG_MOB_GRANTED_ACTION">COMSIG_MOB_GRANTED_ACTION</a> - If we're viewing another mob's action buttons,
we need to update with any newly added buttons granted to the mob.</p><h3 id="proc/on_observing_action_removed"><aside class="declaration">proc </aside>on_observing_action_removed<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/source, /<a href="datum.html">datum</a>/<a href="datum/action.html">action</a>/action) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/action_button.dm#L647"><img src="git.png" width="16" height="16" title="code/_onclick/hud/action_button.dm 647"></a></aside></h3><p>Signal proc for <a href="code/__DEFINES/dcs/datum_signals.html#define/COMSIG_MOB_REMOVED_ACTION" title="COMSIG_MOB_REMOVED_ACTION">COMSIG_MOB_REMOVED_ACTION</a> - If we're viewing another mob's action buttons,
we need to update with any removed buttons from the mob.</p><h3 id="proc/pointed"><aside class="declaration">verb </aside>pointed<aside>(/<a href="atom.html">atom</a>/A<span class="as"> as </span><a href="turf.html">turf</a> | <a href="atom/movable.html">movable</a>) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/point/point.dm#L132"><img src="git.png" width="16" height="16" title="code/modules/point/point.dm 132"></a></aside></h3><p>Point at an atom</p>
<p>mob verbs are faster than object verbs. See
<a href="https://secure.byond.com/forum/?post=1326139&amp;page=2#comment8198716">this byond forum post</a>
for why this isn't atom/verb/pointed()</p>
<p>note: ghosts can point, this is intended</p>
<p>visible_message will handle invisibility properly</p>
<p>overridden here and in /mob/dead/observer for different point span classes and sanity checks</p><h3 id="proc/post_buckle_mob">post_buckle_mob<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/M) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1205"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1205"></a></aside></h3><p>Call back post buckle to a mob to offset your visual height</p><h3 id="proc/post_unbuckle_mob">post_unbuckle_mob<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/M) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1212"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1212"></a></aside></h3><p>Call back post unbuckle from a mob, (reset your visual height here)</p><h3 id="proc/remove_quirk_from_save"><aside class="declaration">proc </aside>remove_quirk_from_save<aside>(/<a href="datum.html">datum</a>/<a href="datum/quirk.html">quirk</a>/to_remove) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/preference/quirks/quirk.dm#L122"><img src="git.png" width="16" height="16" title="code/modules/client/preference/quirks/quirk.dm 122"></a></aside></h3><p>Returns true if a quirk was removed, false otherwise</p><h3 id="proc/run_mode"><aside class="declaration">proc </aside>run_mode<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L803"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 803"></a></aside></h3><p>proc version to finish /mob/verb/mode() execution. used in case the proc needs to be queued for the tick after its first called</p><h3 id="proc/run_pointed"><aside class="declaration">proc </aside>run_pointed<aside>(/<a href="atom.html">atom</a>/A) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/point/point.dm#L147"><img src="git.png" width="16" height="16" title="code/modules/point/point.dm 147"></a></aside></h3><p>possibly delayed verb that finishes the pointing process starting in [/mob/verb/pointed()].
either called immediately or in the tick after pointed() was called, as per the [DEFAULT_QUEUE_OR_CALL_VERB()] macro</p><h3 id="proc/run_quick_equip"><aside class="declaration">proc </aside>run_quick_equip<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L21"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 21"></a></aside></h3><p>proc extender of [/mob/verb/quick_equip] used to make the verb queuable if the server is overloaded</p><h3 id="proc/say_understands"><aside class="declaration">proc </aside>say_understands<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/other, /<a href="datum.html">datum</a>/<a href="datum/language.html">language</a>/speaking) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_say_base.dm#L77"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_say_base.dm 77"></a></aside></h3><p>Checks if the mob can understand the other speaker</p>
<p>If it return FALSE, then the message will have some letters replaced with stars from the heard message</p><h3 id="proc/set_invisible"><aside class="declaration">proc </aside>set_invisible<aside>(invis_value) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_misc_procs.dm#L886"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_misc_procs.dm 886"></a></aside></h3><p>Proc to PROPERLY set mob invisibility, huds gotta get set too!</p><h3 id="proc/set_nutrition"><aside class="declaration">proc </aside>set_nutrition<aside>(change) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1392"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1392"></a></aside></h3><p>Force set the mob nutrition</p><h3 id="proc/set_thinking_indicator"><aside class="declaration">proc </aside>set_thinking_indicator<aside>(state) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/typing_indicator.dm#L48"><img src="git.png" width="16" height="16" title="code/modules/mob/typing_indicator.dm 48"></a></aside></h3><p>Toggles the floating thought bubble above a players head.</p>
<p>Arguments:</p>
<ul>
<li>state - Should a thought bubble be shown or hidden</li>
</ul><h3 id="proc/set_typing_indicator"><aside class="declaration">proc </aside>set_typing_indicator<aside>(state, me) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/typing_indicator.dm#L11"><img src="git.png" width="16" height="16" title="code/modules/mob/typing_indicator.dm 11"></a></aside></h3><p>Toggles the floating chat bubble above a players head.</p>
<p>Arguments:</p>
<ul>
<li>state - Should a chat bubble be shown or hidden</li>
<li>me - Is the bubble being caused by the 'me' emote command</li>
</ul><h3 id="proc/shared_ui_interaction"><aside class="declaration">proc </aside>shared_ui_interaction<aside>(src_object) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/states.dm#L62"><img src="git.png" width="16" height="16" title="code/modules/tgui/states.dm 62"></a></aside></h3><p>public</p>
<p>Standard interaction/sanity checks. Different mob types may have overrides.</p>
<p>return UI_state The state of the UI.</p><h3 id="proc/show_other_mob_action_buttons"><aside class="declaration">proc </aside>show_other_mob_action_buttons<aside>(/<a href="mob.html">mob</a>/take_from) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/action_button.dm#L615"><img src="git.png" width="16" height="16" title="code/_onclick/hud/action_button.dm 615"></a></aside></h3><p>Show (most) of the another mob's action buttons to this mob</p>
<p>Used for observers viewing another mob's screen</p><h3 id="proc/show_rads"><aside class="declaration">proc </aside>show_rads<aside>(range) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1432"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1432"></a></aside></h3><p>Show an overlay of radiation levels on radioactive objects.</p><h3 id="proc/shuttleRotate"><aside class="parent"><a title="/atom" href="atom.html#proc/shuttleRotate"></a></aside>shuttleRotate<aside>(rotation, params) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/shuttle/shuttle_rotate.dm#L45"><img src="git.png" width="16" height="16" title="code/modules/shuttle/shuttle_rotate.dm 45"></a></aside></h3><p>Turf rotate procs</p>
<p>Mob rotate procs</p><h3 id="proc/special_get_hands_check"><aside class="declaration">proc </aside>special_get_hands_check<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L10"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 10"></a></aside></h3><p>Specal proc for special mobs that use &quot;hands&quot; in weird ways</p><h3 id="proc/start_audio_emote_cooldown"><aside class="declaration">proc </aside>start_audio_emote_cooldown<aside>(intentional, cooldown) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_misc_procs.dm#L844"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_misc_procs.dm 844"></a></aside></h3><p>Start the cooldown for an emote that plays audio.</p>
<p>Arguments:</p>
<ul>
<li>intentional - Whether or not the user deliberately triggered this emote.</li>
<li>cooldown - The amount of time that should be waited before any other audio emote can fire.</li>
</ul><h3 id="proc/tamed"><aside class="declaration">proc </aside>tamed<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/tamer, /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/food) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_misc_procs.dm#L904"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_misc_procs.dm 904"></a></aside></h3><p>Called after the atom is 'tamed' for type-specific operations, Usually called by the tameable component but also other things.</p><h3 id="proc/throw_alert"><aside class="declaration">proc </aside>throw_alert<aside>(category, type, severity, /<a href="obj.html">obj</a>/new_master, override, timeout_override, no_anim, icon_override, /list/alert_args) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/alert.dm#L20"><img src="git.png" width="16" height="16" title="code/_onclick/hud/alert.dm 20"></a></aside></h3><p>Proc to create or update an alert. Returns the alert if the alert is new or updated, 0 if it was thrown already.
Each mob may only have one alert per category.</p>
<p>Arguments:</p>
<ul>
<li>category - a text string corresponding to what type of alert it is</li>
<li>type - a type path of the actual alert type to throw</li>
<li>severity - is an optional number that will be placed at the end of the icon_state for this alert
For example, high pressure's icon_state is &quot;highpressure&quot; and can be serverity 1 or 2 to get &quot;highpressure1&quot; or &quot;highpressure2&quot;</li>
<li>obj/new_master - optional argument. Sets the alert's icon state to &quot;template&quot; in the ui_style icons with the master as an overlay. Clicks are forwarded to master</li>
<li>no_anim - whether the alert should play a small sliding animation when created on the player's screen</li>
<li>icon_override - makes it so the alert is not replaced until cleared by a clear_alert with clear_override, and it's used for hallucinations.</li>
<li>list/alert_args - a list of arguments to pass to the alert when creating it</li>
</ul><h3 id="proc/transfer_item_to"><aside class="declaration">proc </aside>transfer_item_to<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/target, /<a href="atom.html">atom</a>/destination, force, silent) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L217"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 217"></a></aside></h3><p>Unequip <code>target</code> and relocate it to <code>destination</code>.</p>
<p>Returns <code>FALSE</code> if the transfer failed for any reason, and <code>TRUE</code> if it succeeded.</p><h3 id="proc/unequip"><aside class="declaration">proc </aside>unequip<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/target, force, drop_inventory) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L229"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 229"></a></aside></h3><p>Unequip <code>target</code> without relocating it.</p>
<p>Returns <code>FALSE</code> if the transfer failed for any reason, and <code>TRUE</code> if it succeeded.</p>
<p>A destination cannot be specified; you must either <code>forceMove</code> or <code>qdel</code> it.
If you intend to <code>qdel</code> it immediately, it is not necessary to call this;
[/obj/item/proc/Destroy] will perform the necessary unequipping.</p><h3 id="proc/unequip_to"><aside class="declaration">proc </aside>unequip_to<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/target, /<a href="atom.html">atom</a>/destination, force, silent, drop_inventory, no_move) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/inventory_procs.dm#L244"><img src="git.png" width="16" height="16" title="code/modules/mob/inventory_procs.dm 244"></a></aside></h3><p>Central proc for unequipping items. Cannot be called but can be overridden so
long as default arg values are preserved. Use <a href="mob.html#proc/unequip" title="/mob">/mob/proc/unequip</a>,
<a href="mob.html#proc/drop_item_to_ground" title="/mob">/mob/proc/drop_item_to_ground</a>, or <a href="mob.html#proc/transfer_item_to" title="/mob">/mob/proc/transfer_item_to</a> instead.</p>
<ul>
<li><code>target</code>: The object to unequip.</li>
<li><code>destination</code>: The location the object should be unequipped to, if applicable.</li>
<li><code>force</code>: Override <code>NODROP</code> for things like wizarditis and admin undress.</li>
<li><code>silent</code>: Whether the unequip should play a sound.</li>
<li><code>drop_inventory</code>: Whether items in the dropped item's slots (such as uniform pockets) should be dropped.</li>
<li><code>no_move</code>: Whether we should attempt to move the item to <code>destination</code> or expect the caller to.</li>
</ul><h3 id="proc/update_runechat_msg_location"><aside class="declaration">proc </aside>update_runechat_msg_location<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob.dm#L1425"><img src="git.png" width="16" height="16" title="code/modules/mob/mob.dm 1425"></a></aside></h3><p>Updates the mob's runechat maptext display location.</p>
<p>By default, we set this to the src mob's <code>UID()</code>.</p><h3 id="proc/usable_emote_keys"><aside class="declaration">proc </aside>usable_emote_keys<aside>(intentional_use) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_emote.dm#L67"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_emote.dm 67"></a></aside></h3><p>Get a list of all emote keys usable by the current mob.</p>
<ul>
<li>intentional_use: Whether or not to check based on if the action was intentional.</li>
</ul></main><footer>paradise.dme <a href="https://github.com/ParadiseSS13/Paradise/tree/8a8a00a2a9bec485351e5f219982b7315d3504fa">8a8a00a</a> (master) — <a href="https://github.com/SpaceManiac/SpacemanDMM/blob/master/crates/dmdoc/README.md">dmdoc 1.11.0</a></footer></body></html>