Files
Paradise/client.html

59 lines
55 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>/client - 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="client.html#var">Var Details</a> - <a href="client.html#proc">Proc Details</a></header><main><h1>client <aside>/<a href="client.html">client</a></aside><aside> inherits /<a href="datum.html">datum</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L1"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 1"></a></h1><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="client.html#var/ViewMods">ViewMods</a></th><td>Was used to handle view modifications. Now only used for a mecha module. Please just edit the string in the future</td></tr><tr><th><a href="client.html#var/ViewModsActive">ViewModsActive</a></th><td>Stores the viewmod we set using this system. Only used for a mecha module</td></tr><tr><th><a href="client.html#var/ViewPreferedIconSize">ViewPreferedIconSize</a></th><td>Stores the icon size we use for skins. As the server has control freak enabled, this is always static</td></tr><tr><th><a href="client.html#var/active_keybindings">active_keybindings</a></th><td>The client's active keybindings, depending on their active mob.</td></tr><tr><th><a href="client.html#var/admin_music_volume">admin_music_volume</a></th><td>Copyright (c) 2020 Aleksej Komarov
SPDX-License-Identifier: MIT
Admin music volume, from 0 to 1.</td></tr><tr><th><a href="client.html#var/byondacc_age">byondacc_age</a></th><td>Days since the client's BYOND account was created</td></tr><tr><th><a href="client.html#var/byondacc_date">byondacc_date</a></th><td>Date the client registered their BYOND account on</td></tr><tr><th><a href="client.html#var/click_intercept_time">click_intercept_time</a></th><td>Time when the click was intercepted</td></tr><tr><th><a href="client.html#var/completed_asset_jobs">completed_asset_jobs</a></th><td>List of all completed blocking send jobs awaiting acknowledgement by send_asset</td></tr><tr><th><a href="client.html#var/connection_time">connection_time</a></th><td>world.time they connected</td></tr><tr><th><a href="client.html#var/credits">credits</a></th><td>list of all credit object bound to this client</td></tr><tr><th><a href="client.html#var/cui_entries">cui_entries</a></th><td>List of the clients CUIs</td></tr><tr><th><a href="client.html#var/description_holders">description_holders</a></th><td>Persistent storage for the flavour text of examined atoms.</td></tr><tr><th><a href="client.html#var/drag_details">drag_details</a></th><td>The params we passed at the start of the drag, in list form</td></tr><tr><th><a href="client.html#var/drag_start">drag_start</a></th><td>When we started the currently active drag</td></tr><tr><th><a href="client.html#var/fullscreen">fullscreen</a></th><td>The current fullscreen state for /client/toggle_fullscreen()</td></tr><tr><th><a href="client.html#var/input_data">input_data</a></th><td>Input datum, what the client is pressing.</td></tr><tr><th><a href="client.html#var/jbh">jbh</a></th><td>The client's job ban holder</td></tr><tr><th><a href="client.html#var/last_asset_job">last_asset_job</a></th><td>The ID of the last asset job</td></tr><tr><th><a href="client.html#var/last_completed_asset_job">last_completed_asset_job</a></th><td>The ID of the last asset job that was properly finished</td></tr><tr><th><a href="client.html#var/last_discord_pm_time">last_discord_pm_time</a></th><td>Last world.time that a PM was send to discord by a player</td></tr><tr><th><a href="client.html#var/last_parallax_shift">last_parallax_shift</a></th><td>Stored world.tim of the last parallax update. Used to make sure parallax isn't updated too often</td></tr><tr><th><a href="client.html#var/m5_uid_cache">m5_uid_cache</a></th><td>Cache of MD5'd UIDs. This is to stop clients from poking at object UIDs and being exploity with them</td></tr><tr><th><a href="client.html#var/macro_sets">macro_sets</a></th><td>Basically a local variable on a client datum. Used when setting macros and nowhere else</td></tr><tr><th><a href="client.html#var/mouseParams">mouseParams</a></th><td>Used in MouseDrag to preserve the original mouse click parameters</td></tr><tr><th><a href="client.html#var/mouse_location_UID">mouse_location_UID</a></th><td>Used in MouseDrag to preserve the last mouse-entered location.</td></tr><tr><th><a href="client.html#var/mouse_object_UID">mouse_object_UID</a></th><td>Used in MouseDrag to preserve the last mouse-entered object.</td></tr><tr><th><a href="client.html#var/moused_over">moused_over</a></th><td>The client's currently moused over datum, limited to movable and stored as UID</td></tr><tr><th><a href="client.html#var/movement_kb_dirs">movement_kb_dirs</a></th><td>The client's movement keybindings to directions, which work regardless of modifiers.</td></tr><tr><th><a href="client.html#var/movingmob">movingmob</a></th><td>Used with parallax to update the parallax offsets when the subsystem fires. Compared to the clients Eye variable</td></tr><tr><th><a href="client.html#var/next_mouse_macro_warning">next_mouse_macro_warning</a></th><td>Used to throw an admin warning if someone used a mouse macro. Also stores the world time so we can send funny noises to them</td></tr><tr><th><a href="client.html#var/obj_window">obj_window</a></th><td>Our object window datum. It stores info about and handles behavior for the object tab</td></tr><tr><th><a href="client.html#var/pai_save">pai_save</a></th><td>Client's pAI save</td></tr><tr><th><a href="client.html#var/panel_tabs">panel_tabs</a></th><td>list of all tabs</td></tr><tr><th><a href="client.html#var/parallax_animate_timer">parallax_animate_timer</a></th><td>Handles how parallax loops in situations like shuttles leaving. Stores the timer that handles that</td></tr><tr><th><a href="client.html#var/parallax_layers">parallax_layers</a></th><td>List of parallax layers a client is viewing. Accessed when paralax is updated</td></tr><tr><th><a href="client.html#var/parallax_layers_cached">parallax_layers_cached</a></th><td>A cached list of available parallax layers. This may potentially be changeable to a static variable. Updated upon changing parallax prefs</td></tr><tr><th><a href="client.html#var/parallax_layers_max">parallax_layers_max</a></th><td>The amount of parallax layers that will exist on your screen. Affected by the parallax preference</td></tr><tr><th><a href="client.html#var/parallax_movedir">parallax_movedir</a></th><td>The direction parallax will be moved it. References parallax_move_direction on areas</td></tr><tr><th><a href="client.html#var/parallax_static_layers_tail">parallax_static_layers_tail</a></th><td>Added to parallax layers when parallax settings are changed</td></tr><tr><th><a href="client.html#var/parallax_throttle">parallax_throttle</a></th><td>Deciseconds of added delay to parallax by client preferences</td></tr><tr><th><a href="client.html#var/parent_type">parent_type</a></th><td>Client is casted to /datum so that we're able to use datum variables, search for clients through datums, and not need to duplicate code for GCing</td></tr><tr><th><a href="client.html#var/previous_turf">previous_turf</a></th><td>Used with parallax to grab the offset needed. Uses the X and Y coords of the turf stored here</td></tr><tr><th><a href="client.html#var/received_discord_pm">received_discord_pm</a></th><td>Last world/time that a PM was sent to the player by an admin</td></tr><tr><th><a href="client.html#var/recent_examines">recent_examines</a></th><td>A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call <a href="atom.html#proc/examine_more" title="/atom">/atom/proc/examine_more</a> instead of [/atom/proc/examine] on them when examining
A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call <a href="atom.html#proc/examine_more" title="/atom">/atom/proc/examine_more</a> instead of [/atom/proc/examine] on them when examining</td></tr><tr><th><a href="client.html#var/screen_maps">screen_maps</a></th><td>Used with the camera console to clear out the screen objects it adds to the client when the console is deleted</td></tr><tr><th><a href="client.html#var/seen_messages">seen_messages</a></th><td>Messages currently seen by this client</td></tr><tr><th><a href="client.html#var/selected_target">selected_target</a></th><td>Autoclick list of two elements, first being the clicked thing, second being the parameters.</td></tr><tr><th><a href="client.html#var/sent_assets">sent_assets</a></th><td>List of all asset filenames sent to this client by the asset cache, along with their assoicated md5s</td></tr><tr><th><a href="client.html#var/show_verb_panel">show_verb_panel</a></th><td>hides the byond verb panel as we use our own custom version</td></tr><tr><th><a href="client.html#var/spell_tabs">spell_tabs</a></th><td>list of tabs containing spells and abilities</td></tr><tr><th><a href="client.html#var/stat_panel">stat_panel</a></th><td>Stat panel window declaration, we don't usually allow this but tgui windows/panels are exceptions</td></tr><tr><th><a href="client.html#var/stat_tab">stat_tab</a></th><td>our current tab</td></tr><tr><th><a href="client.html#var/tgui_cache_reloaded">tgui_cache_reloaded</a></th><td>global</td></tr><tr><th><a href="client.html#var/tgui_panel">tgui_panel</a></th><td>Copyright (c) 2020 Aleksej Komarov
SPDX-License-Identifier: MIT</td></tr><tr><th><a href="client.html#var/tgui_say">tgui_say</a></th><td>Assigned say modal of the client</td></tr><tr><th><a href="client.html#var/tgui_windows">tgui_windows</a></th><td>global</td></tr><tr><th><a href="client.html#var/topiclimiter">topiclimiter</a></th><td>Used for limiting the rate of topic sends by the client to avoid abuse</td></tr><tr><th><a href="client.html#var/tos_consent">tos_consent</a></th><td>Has the client accepted the TOS about data collection and other stuff</td></tr><tr><th><a href="client.html#var/version_blocked">version_blocked</a></th><td>If true, client cannot ready up, late join, or observe. Used for players with EXTREMELY old byond versions.</td></tr><tr><th><a href="client.html#var/visual_delay">visual_delay</a></th><td>The visual delay to use for the current client.Move(), mostly used for making a client based move look like it came from some other slower source</td></tr><tr><th><a href="client.html#var/watchlisted">watchlisted</a></th><td>Is the client watchlisted</td></tr><tr><th><a href="client.html#var/window_scaling">window_scaling</a></th><td>If this client has any windows scaling applied</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="client.html#proc/Process_Grab">Process_Grab</a></th><td>Process_Grab()
Called by client/Move()
Checks to see if you are being grabbed and if so attemps to break it</td></tr><tr><th><a href="client.html#proc/Process_Incorpmove">Process_Incorpmove</a></th><td>Process_Incorpmove
Called by client/Move()
Allows mobs to run though walls</td></tr><tr><th><a href="client.html#proc/_Topic">_Topic</a></th><td>dumb workaround because byond doesnt seem to recognize the Topic() typepath for /datum/proc/Topic() from the client Topic,
so we cant queue it without this</td></tr><tr><th><a href="client.html#proc/asset_cache_confirm_arrival">asset_cache_confirm_arrival</a></th><td>Process asset cache client topic calls for &quot;asset_cache_confirm_arrival=[INT]&quot;</td></tr><tr><th><a href="client.html#proc/asset_cache_preload_data">asset_cache_preload_data</a></th><td>Process asset cache client topic calls for &quot;asset_cache_preload_data=[HTML+JSON_STRING]</td></tr><tr><th><a href="client.html#proc/asset_cache_update_json">asset_cache_update_json</a></th><td>Updates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.</td></tr><tr><th><a href="client.html#proc/browse_queue_flush">browse_queue_flush</a></th><td>Blocks until all currently sending browse and browse_rs assets have been sent.
Due to byond limitations, this proc will sleep for 1 client round trip even if the client has no pending asset sends.
This proc will return an untrue value if it had to return before confirming the send, such as timeout or the client going away.</td></tr><tr><th><a href="client.html#proc/clear_all_maps">clear_all_maps</a></th><td>Clears all the maps of registered screen objects.</td></tr><tr><th><a href="client.html#proc/clear_map">clear_map</a></th><td>Clears the map of registered screen objects.</td></tr><tr><th><a href="client.html#proc/close_popup">close_popup</a></th><td>Closes a popup.</td></tr><tr><th><a href="client.html#proc/create_popup">create_popup</a></th><td>Creates a popup window with a basic map element in it, without any
further initialization.</td></tr><tr><th><a href="client.html#proc/display_job_bans">display_job_bans</a></th><td>Lists all active jobbans for src client</td></tr><tr><th><a href="client.html#proc/fix_tgui_panel">fix_tgui_panel</a></th><td>tgui panel / chat troubleshooting verb</td></tr><tr><th><a href="client.html#proc/get_byond_account_date">get_byond_account_date</a></th><td>Sets the clients BYOND date up properly</td></tr><tr><th><a href="client.html#proc/handle_popup_close">handle_popup_close</a></th><td>When the popup closes in any way (player or proc call) it calls this.</td></tr><tr><th><a href="client.html#proc/init_verbs">init_verbs</a></th><td>Compiles a full list of verbs and sends it to the browser</td></tr><tr><th><a href="client.html#proc/maxview">maxview</a></th><td>Returns the biggest number from client.view so we can do easier maths</td></tr><tr><th><a href="client.html#proc/on_stat_panel_message">on_stat_panel_message</a></th><td>Handles incoming messages from the stat-panel TGUI.</td></tr><tr><th><a href="client.html#proc/register_map_obj">register_map_obj</a></th><td>Registers screen obj with the client, which makes it visible on the
assigned map, and becomes a part of the assigned map's lifecycle.</td></tr><tr><th><a href="client.html#proc/retrieve_byondacc_data">retrieve_byondacc_data</a></th><td>Retrieves the BYOND accounts data from the BYOND servers</td></tr><tr><th><a href="client.html#proc/set_macros">set_macros</a></th><td>This proc sets the built in BYOND macros for keypresses to pass inputs on to the rebindable input system or the legacy system
If you plan on ripping out the legacy system, see the set_macros() proc at the following commit: https://github.com/S34NW/Paradise/commit/83a0a0b0c633807cc5a88a630f623cec24e16027</td></tr><tr><th><a href="client.html#proc/setup_popup">setup_popup</a></th><td>Create the popup, and get it ready for generic use by giving
it a background.</td></tr><tr><th><a href="client.html#proc/tgui_say_create_open_command">tgui_say_create_open_command</a></th><td>Creates a JSON encoded message to open TGUI say modals properly.</td></tr><tr><th><a href="client.html#proc/toggle_fullscreen">toggle_fullscreen</a></th><td>Handles fullscreen on the client.</td></tr><tr><th><a href="client.html#proc/uiclose">uiclose</a></th><td>verb</td></tr><tr><th><a href="client.html#proc/vv_core_topics">vv_core_topics</a></th><td>Core topics are VV topics which should work even if the code responsible
for processing vv topics for that datum is runtiming. They're kept separately
from <a href="datum.html#proc/vv_do_topic" title="/datum">/datum/proc/vv_do_topic</a> for that reason.</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/ViewMods"><aside class="declaration">var </aside>ViewMods <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L167"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 167"></a></h3><p>Was used to handle view modifications. Now only used for a mecha module. Please just edit the string in the future</p><h3 id="var/ViewModsActive"><aside class="declaration">var </aside>ViewModsActive <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L169"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 169"></a></h3><p>Stores the viewmod we set using this system. Only used for a mecha module</p><h3 id="var/ViewPreferedIconSize"><aside class="declaration">var </aside>ViewPreferedIconSize <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L171"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 171"></a></h3><p>Stores the icon size we use for skins. As the server has control freak enabled, this is always static</p><h3 id="var/active_keybindings"><aside class="declaration">var </aside>active_keybindings <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L136"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 136"></a></h3><p>The client's active keybindings, depending on their active mob.</p><h3 id="var/admin_music_volume"><aside class="declaration">var </aside>admin_music_volume <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/tgui_panel/audio.dm#L7"><img src="git.png" width="16" height="16" title="code/modules/tgui/tgui_panel/audio.dm 7"></a></h3><p>Copyright (c) 2020 Aleksej Komarov
SPDX-License-Identifier: MIT
Admin music volume, from 0 to 1.</p><h3 id="var/byondacc_age"><aside class="declaration">var </aside>byondacc_age <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L102"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 102"></a></h3><p>Days since the client's BYOND account was created</p><h3 id="var/byondacc_date"><aside class="declaration">var </aside>byondacc_date <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L100"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 100"></a></h3><p>Date the client registered their BYOND account on</p><h3 id="var/click_intercept_time"><aside class="declaration">var </aside>click_intercept_time <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L64"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 64"></a></h3><p>Time when the click was intercepted</p><h3 id="var/completed_asset_jobs"><aside class="declaration">var </aside>completed_asset_jobs <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L179"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 179"></a></h3><p>List of all completed blocking send jobs awaiting acknowledgement by send_asset</p><h3 id="var/connection_time"><aside class="declaration">var </aside>connection_time <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L113"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 113"></a></h3><p>world.time they connected</p><h3 id="var/credits"><aside class="declaration">var </aside>credits <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L122"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 122"></a></h3><p>list of all credit object bound to this client</p><h3 id="var/cui_entries"><aside class="declaration">var </aside>cui_entries <aside> /list/<a href="datum.html">datum</a>/<a href="datum/custom_user_item.html">custom_user_item</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L128"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 128"></a></h3><p>List of the clients CUIs</p><h3 id="var/description_holders"><aside class="declaration">var </aside>description_holders <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L73"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 73"></a></h3><p>Persistent storage for the flavour text of examined atoms.</p><h3 id="var/drag_details"><aside class="declaration">var </aside>drag_details <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L151"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 151"></a></h3><p>The params we passed at the start of the drag, in list form</p><h3 id="var/drag_start"><aside class="declaration">var </aside>drag_start <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L149"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 149"></a></h3><p>When we started the currently active drag</p><h3 id="var/fullscreen"><aside class="declaration">var </aside>fullscreen <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L223"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 223"></a></h3><p>The current fullscreen state for /client/toggle_fullscreen()</p><h3 id="var/input_data"><aside class="declaration">var </aside>input_data <aside> /<a href="datum.html">datum</a>/<a href="datum/input_data.html">input_data</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L134"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 134"></a></h3><p>Input datum, what the client is pressing.</p><h3 id="var/jbh"><aside class="declaration">var </aside>jbh <aside> /<a href="datum.html">datum</a>/<a href="datum/job_ban_holder.html">job_ban_holder</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L131"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 131"></a></h3><p>The client's job ban holder</p><h3 id="var/last_asset_job"><aside class="declaration">var </aside>last_asset_job <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L185"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 185"></a></h3><p>The ID of the last asset job</p><h3 id="var/last_completed_asset_job"><aside class="declaration">var </aside>last_completed_asset_job <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L187"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 187"></a></h3><p>The ID of the last asset job that was properly finished</p><h3 id="var/last_discord_pm_time"><aside class="declaration">var </aside>last_discord_pm_time <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L107"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 107"></a></h3><p>Last world.time that a PM was send to discord by a player</p><h3 id="var/last_parallax_shift"><aside class="declaration">var </aside>last_parallax_shift <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L203"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 203"></a></h3><p>Stored world.tim of the last parallax update. Used to make sure parallax isn't updated too often</p><h3 id="var/m5_uid_cache"><aside class="declaration">var </aside>m5_uid_cache <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L226"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 226"></a></h3><p>Cache of MD5'd UIDs. This is to stop clients from poking at object UIDs and being exploity with them</p><h3 id="var/macro_sets"><aside class="declaration">var </aside>macro_sets <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L174"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 174"></a></h3><p>Basically a local variable on a client datum. Used when setting macros and nowhere else</p><h3 id="var/mouseParams"><aside class="declaration">var </aside>mouseParams <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L143"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 143"></a></h3><p>Used in MouseDrag to preserve the original mouse click parameters</p><h3 id="var/mouse_location_UID"><aside class="declaration">var </aside>mouse_location_UID <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L145"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 145"></a></h3><p>Used in MouseDrag to preserve the last mouse-entered location.</p><h3 id="var/mouse_object_UID"><aside class="declaration">var </aside>mouse_object_UID <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L147"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 147"></a></h3><p>Used in MouseDrag to preserve the last mouse-entered object.</p><h3 id="var/moused_over"><aside class="declaration">var </aside>moused_over <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/client/client_defines.dm#L154"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 154"></a></h3><p>The client's currently moused over datum, limited to movable and stored as UID</p><h3 id="var/movement_kb_dirs"><aside class="declaration">var </aside>movement_kb_dirs <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L138"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 138"></a></h3><p>The client's movement keybindings to directions, which work regardless of modifiers.</p><h3 id="var/movingmob"><aside class="declaration">var </aside>movingmob <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/client/client_defines.dm#L199"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 199"></a></h3><p>Used with parallax to update the parallax offsets when the subsystem fires. Compared to the clients Eye variable</p><h3 id="var/next_mouse_macro_warning"><aside class="declaration">var </aside>next_mouse_macro_warning <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L161"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 161"></a></h3><p>Used to throw an admin warning if someone used a mouse macro. Also stores the world time so we can send funny noises to them</p><h3 id="var/obj_window"><aside class="declaration">var </aside>obj_window <aside> /<a href="datum.html">datum</a>/<a href="datum/object_window_info.html">object_window_info</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L220"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 220"></a></h3><p>Our object window datum. It stores info about and handles behavior for the object tab</p><h3 id="var/pai_save"><aside class="declaration">var </aside>pai_save <aside> /<a href="datum.html">datum</a>/<a href="datum/pai_save.html">pai_save</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L125"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 125"></a></h3><p>Client's pAI save</p><h3 id="var/panel_tabs"><aside class="declaration">var </aside>panel_tabs <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L91"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 91"></a></h3><p>list of all tabs</p><h3 id="var/parallax_animate_timer"><aside class="declaration">var </aside>parallax_animate_timer <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L211"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 211"></a></h3><p>Handles how parallax loops in situations like shuttles leaving. Stores the timer that handles that</p><h3 id="var/parallax_layers"><aside class="declaration">var </aside>parallax_layers <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L193"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 193"></a></h3><p>List of parallax layers a client is viewing. Accessed when paralax is updated</p><h3 id="var/parallax_layers_cached"><aside class="declaration">var </aside>parallax_layers_cached <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L195"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 195"></a></h3><p>A cached list of available parallax layers. This may potentially be changeable to a static variable. Updated upon changing parallax prefs</p><h3 id="var/parallax_layers_max"><aside class="declaration">var </aside>parallax_layers_max <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L209"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 209"></a></h3><p>The amount of parallax layers that will exist on your screen. Affected by the parallax preference</p><h3 id="var/parallax_movedir"><aside class="declaration">var </aside>parallax_movedir <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L207"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 207"></a></h3><p>The direction parallax will be moved it. References parallax_move_direction on areas</p><h3 id="var/parallax_static_layers_tail"><aside class="declaration">var </aside>parallax_static_layers_tail <aside> /static/list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L197"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 197"></a></h3><p>Added to parallax layers when parallax settings are changed</p><h3 id="var/parallax_throttle"><aside class="declaration">var </aside>parallax_throttle <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L205"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 205"></a></h3><p>Deciseconds of added delay to parallax by client preferences</p><h3 id="var/parent_type"><aside class="declaration">var </aside>parent_type <aside> /const</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L3"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 3"></a></h3><p>Client is casted to /datum so that we're able to use datum variables, search for clients through datums, and not need to duplicate code for GCing</p><h3 id="var/previous_turf"><aside class="declaration">var </aside>previous_turf <aside> /<a href="turf.html">turf</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L201"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 201"></a></h3><p>Used with parallax to grab the offset needed. Uses the X and Y coords of the turf stored here</p><h3 id="var/received_discord_pm"><aside class="declaration">var </aside>received_discord_pm <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L110"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 110"></a></h3><p>Last world/time that a PM was sent to the player by an admin</p><h3 id="var/recent_examines"><aside class="declaration">var </aside>recent_examines <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L158"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 158"></a></h3><p>A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call <a href="atom.html#proc/examine_more" title="/atom">/atom/proc/examine_more</a> instead of [/atom/proc/examine] on them when examining
A lazy list of atoms we've examined in the last RECENT_EXAMINE_MAX_WINDOW (default 2) seconds, so that we will call <a href="atom.html#proc/examine_more" title="/atom">/atom/proc/examine_more</a> instead of [/atom/proc/examine] on them when examining</p><h3 id="var/screen_maps"><aside class="declaration">var </aside>screen_maps <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L213"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 213"></a></h3><p>Used with the camera console to clear out the screen objects it adds to the client when the console is deleted</p><h3 id="var/seen_messages"><aside class="declaration">var </aside>seen_messages <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L82"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 82"></a></h3><p>Messages currently seen by this client</p><h3 id="var/selected_target"><aside class="declaration">var </aside>selected_target <aside> /list/list/<a href="atom.html">atom</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L141"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 141"></a></h3><p>Autoclick list of two elements, first being the clicked thing, second being the parameters.</p><h3 id="var/sent_assets"><aside class="declaration">var </aside>sent_assets <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L177"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 177"></a></h3><p>List of all asset filenames sent to this client by the asset cache, along with their assoicated md5s</p><h3 id="var/show_verb_panel"><aside class="declaration">var </aside>show_verb_panel <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L8"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 8"></a></h3><p>hides the byond verb panel as we use our own custom version</p><h3 id="var/spell_tabs"><aside class="declaration">var </aside>spell_tabs <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L85"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 85"></a></h3><p>list of tabs containing spells and abilities</p><h3 id="var/stat_panel"><aside class="declaration">var </aside>stat_panel <aside> /<a href="datum.html">datum</a>/<a href="datum/tgui_window.html">tgui_window</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSstatpanel.dm#L247"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSstatpanel.dm 247"></a></h3><p>Stat panel window declaration, we don't usually allow this but tgui windows/panels are exceptions</p><h3 id="var/stat_tab"><aside class="declaration">var </aside>stat_tab <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L88"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 88"></a></h3><p>our current tab</p><h3 id="var/tgui_cache_reloaded"><aside class="declaration">var </aside>tgui_cache_reloaded <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/external.dm#L143"><img src="git.png" width="16" height="16" title="code/modules/tgui/external.dm 143"></a></h3><p>global</p>
<p>TRUE if cache was reloaded by tgui dev server at least once.</p><h3 id="var/tgui_panel"><aside class="declaration">var </aside>tgui_panel <aside> /<a href="datum.html">datum</a>/<a href="datum/tgui_panel.html">tgui_panel</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/tgui_panel/tgui_panel_external.dm#L6"><img src="git.png" width="16" height="16" title="code/modules/tgui/tgui_panel/tgui_panel_external.dm 6"></a></h3><p>Copyright (c) 2020 Aleksej Komarov
SPDX-License-Identifier: MIT</p><h3 id="var/tgui_say"><aside class="declaration">var </aside>tgui_say <aside> /<a href="datum.html">datum</a>/<a href="datum/tgui_say.html">tgui_say</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L217"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 217"></a></h3><p>Assigned say modal of the client</p><h3 id="var/tgui_windows"><aside class="declaration">var </aside>tgui_windows <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/external.dm#L136"><img src="git.png" width="16" height="16" title="code/modules/tgui/external.dm 136"></a></h3><p>global</p>
<p>Tracks open windows for a user.</p><h3 id="var/topiclimiter"><aside class="declaration">var </aside>topiclimiter <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L41"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 41"></a></h3><p>Used for limiting the rate of topic sends by the client to avoid abuse</p><h3 id="var/tos_consent"><aside class="declaration">var </aside>tos_consent <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L116"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 116"></a></h3><p>Has the client accepted the TOS about data collection and other stuff</p><h3 id="var/version_blocked"><aside class="declaration">var </aside>version_blocked <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L97"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 97"></a></h3><p>If true, client cannot ready up, late join, or observe. Used for players with EXTREMELY old byond versions.</p><h3 id="var/visual_delay"><aside class="declaration">var </aside>visual_delay <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L23"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 23"></a></h3><p>The visual delay to use for the current client.Move(), mostly used for making a client based move look like it came from some other slower source</p><h3 id="var/watchlisted"><aside class="declaration">var </aside>watchlisted <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L119"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 119"></a></h3><p>Is the client watchlisted</p><h3 id="var/window_scaling"><aside class="declaration">var </aside>window_scaling <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_defines.dm#L229"><img src="git.png" width="16" height="16" title="code/modules/client/client_defines.dm 229"></a></h3><p>If this client has any windows scaling applied</p><h2 id="proc">Proc Details</h2><h3 id="proc/Process_Grab"><aside class="declaration">proc </aside>Process_Grab<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_movement.dm#L221"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_movement.dm 221"></a></aside></h3><p>Process_Grab()
Called by client/Move()
Checks to see if you are being grabbed and if so attemps to break it</p><h3 id="proc/Process_Incorpmove"><aside class="declaration">proc </aside>Process_Incorpmove<aside>(direct) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/mob/mob_movement.dm#L264"><img src="git.png" width="16" height="16" title="code/modules/mob/mob_movement.dm 264"></a></aside></h3><p>Process_Incorpmove
Called by client/Move()
Allows mobs to run though walls</p><h3 id="proc/_Topic"><aside class="declaration">proc </aside>_Topic<aside>(/<a href="datum.html">datum</a>/hsrc, href, /list/href_list) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L215"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 215"></a></aside></h3><p>dumb workaround because byond doesnt seem to recognize the Topic() typepath for /datum/proc/Topic() from the client Topic,
so we cant queue it without this</p><h3 id="proc/asset_cache_confirm_arrival"><aside class="declaration">proc </aside>asset_cache_confirm_arrival<aside>(job_id) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/asset_cache/asset_cache_client.dm#L2"><img src="git.png" width="16" height="16" title="code/modules/asset_cache/asset_cache_client.dm 2"></a></aside></h3><p>Process asset cache client topic calls for &quot;asset_cache_confirm_arrival=[INT]&quot;</p><h3 id="proc/asset_cache_preload_data"><aside class="declaration">proc </aside>asset_cache_preload_data<aside>(data) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/asset_cache/asset_cache_client.dm#L13"><img src="git.png" width="16" height="16" title="code/modules/asset_cache/asset_cache_client.dm 13"></a></aside></h3><p>Process asset cache client topic calls for &quot;asset_cache_preload_data=[HTML+JSON_STRING]</p><h3 id="proc/asset_cache_update_json"><aside class="declaration">proc </aside>asset_cache_update_json<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/asset_cache/asset_cache_client.dm#L24"><img src="git.png" width="16" height="16" title="code/modules/asset_cache/asset_cache_client.dm 24"></a></aside></h3><p>Updates the client side stored json file used to keep track of what assets the client has between restarts/reconnects.</p><h3 id="proc/browse_queue_flush"><aside class="declaration">proc </aside>browse_queue_flush<aside>(timeout) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/asset_cache/asset_cache_client.dm#L33"><img src="git.png" width="16" height="16" title="code/modules/asset_cache/asset_cache_client.dm 33"></a></aside></h3><p>Blocks until all currently sending browse and browse_rs assets have been sent.
Due to byond limitations, this proc will sleep for 1 client round trip even if the client has no pending asset sends.
This proc will return an untrue value if it had to return before confirming the send, such as timeout or the client going away.</p><h3 id="proc/clear_all_maps"><aside class="declaration">proc </aside>clear_all_maps<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L80"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 80"></a></aside></h3><p>Clears all the maps of registered screen objects.</p><h3 id="proc/clear_map"><aside class="declaration">proc </aside>clear_map<aside>(map_name) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L68"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 68"></a></aside></h3><p>Clears the map of registered screen objects.</p>
<p>Not really needed most of the time, as the client's screen list gets reset
on relog. any of the buttons are going to get caught by garbage collection
anyway. they're effectively qdel'd.</p><h3 id="proc/close_popup"><aside class="declaration">proc </aside>close_popup<aside>(popup) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L137"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 137"></a></aside></h3><p>Closes a popup.</p><h3 id="proc/create_popup"><aside class="declaration">proc </aside>create_popup<aside>(name, ratiox, ratioy) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L92"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 92"></a></aside></h3><p>Creates a popup window with a basic map element in it, without any
further initialization.</p>
<p>Ratio is how many pixels by how many pixels (keep it simple).</p>
<p>Returns a map name.</p><h3 id="proc/display_job_bans"><aside class="declaration">proc </aside>display_job_bans<aside>(from_client_connection) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/admin/banjob.dm#L40"><img src="git.png" width="16" height="16" title="code/modules/admin/banjob.dm 40"></a></aside></h3><p>Lists all active jobbans for src client</p>
<p>from_client_connection - If true, user will not receive any info in chat if they have no job bans, used when a player loads into to the lobby.</p><h3 id="proc/fix_tgui_panel"><aside class="declaration">verb </aside>fix_tgui_panel<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/tgui_panel/tgui_panel_external.dm#L11"><img src="git.png" width="16" height="16" title="code/modules/tgui/tgui_panel/tgui_panel_external.dm 11"></a></aside></h3><p>tgui panel / chat troubleshooting verb</p><h3 id="proc/get_byond_account_date"><aside class="declaration">proc </aside>get_byond_account_date<aside>(notify) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L1053"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 1053"></a></aside></h3><p>Sets the clients BYOND date up properly</p>
<p>If the client does not have a saved BYOND account creation date, retrieve it from the website
If they do have a saved date, use that from the DB, because this value will never change
Arguments:</p>
<ul>
<li>notify - Do we notify admins of this new accounts date</li>
</ul><h3 id="proc/handle_popup_close"><aside class="declaration">verb </aside>handle_popup_close<aside>(window_id<span class="as"> as </span>text) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L144"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 144"></a></aside></h3><p>When the popup closes in any way (player or proc call) it calls this.</p><h3 id="proc/init_verbs"><aside class="declaration">proc </aside>init_verbs<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L1214"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 1214"></a></aside></h3><p>Compiles a full list of verbs and sends it to the browser</p><h3 id="proc/maxview"><aside class="declaration">proc </aside>maxview<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L1204"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 1204"></a></aside></h3><p>Returns the biggest number from client.view so we can do easier maths</p><h3 id="proc/on_stat_panel_message"><aside class="declaration">proc </aside>on_stat_panel_message<aside>(type, payload) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L1245"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 1245"></a></aside></h3><p>Handles incoming messages from the stat-panel TGUI.</p><h3 id="proc/register_map_obj"><aside class="declaration">proc </aside>register_map_obj<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/<a href="atom/movable/screen.html">screen</a>/screen_obj) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L49"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 49"></a></aside></h3><p>Registers screen obj with the client, which makes it visible on the
assigned map, and becomes a part of the assigned map's lifecycle.</p><h3 id="proc/retrieve_byondacc_data"><aside class="declaration">proc </aside>retrieve_byondacc_data<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L993"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 993"></a></aside></h3><p>Retrieves the BYOND accounts data from the BYOND servers</p>
<p>Makes a web request to byond.com to retrieve the details for the BYOND account associated with the clients ckey.
Returns the data in a parsed, associative list</p><h3 id="proc/set_macros"><aside class="declaration">proc </aside>set_macros<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/input/input.dm#L17"><img src="git.png" width="16" height="16" title="code/modules/input/input.dm 17"></a></aside></h3><p>This proc sets the built in BYOND macros for keypresses to pass inputs on to the rebindable input system or the legacy system
If you plan on ripping out the legacy system, see the set_macros() proc at the following commit: https://github.com/S34NW/Paradise/commit/83a0a0b0c633807cc5a88a630f623cec24e16027</p><h3 id="proc/setup_popup"><aside class="declaration">proc </aside>setup_popup<aside>(popup_name, width, height, tilesize, bg_icon) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/_onclick/hud/map_popups.dm#L116"><img src="git.png" width="16" height="16" title="code/_onclick/hud/map_popups.dm 116"></a></aside></h3><p>Create the popup, and get it ready for generic use by giving
it a background.</p>
<p>Width and height are multiplied by 64 by default.</p><h3 id="proc/tgui_say_create_open_command"><aside class="declaration">proc </aside>tgui_say_create_open_command<aside>(channel) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui_input/say_modal/tgui_say_modal.dm#L9"><img src="git.png" width="16" height="16" title="code/modules/tgui_input/say_modal/tgui_say_modal.dm 9"></a></aside></h3><p>Creates a JSON encoded message to open TGUI say modals properly.</p>
<p>Arguments:
channel - The channel to open the modal in.
Returns:
string - A JSON encoded message to open the modal.</p><h3 id="proc/toggle_fullscreen"><aside class="declaration">verb </aside>toggle_fullscreen<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/client/client_procs.dm#L1288"><img src="git.png" width="16" height="16" title="code/modules/client/client_procs.dm 1288"></a></aside></h3><p>Handles fullscreen on the client.</p><h3 id="proc/uiclose"><aside class="declaration">verb </aside>uiclose<aside>(window_id<span class="as"> as </span>text) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/modules/tgui/external.dm#L162"><img src="git.png" width="16" height="16" title="code/modules/tgui/external.dm 162"></a></aside></h3><p>verb</p>
<p>Called by UIs when they are closed.
Must be a verb so winset() can call it.</p>
<p>required uiref ref The UI that was closed.</p><h3 id="proc/vv_core_topics"><aside class="declaration">proc </aside>vv_core_topics<aside>(/<a href="datum.html">datum</a>/target, href_list) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/datums/vv_core_topics.dm#L4"><img src="git.png" width="16" height="16" title="code/datums/vv_core_topics.dm 4"></a></aside></h3><p>Core topics are VV topics which should work even if the code responsible
for processing vv topics for that datum is runtiming. They're kept separately
from <a href="datum.html#proc/vv_do_topic" title="/datum">/datum/proc/vv_do_topic</a> for that reason.</p></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>