Paradise Station 13 - Modules - TypesVar Details - Proc Details

client

Vars

active_keybindingsThe client's active keybindings, depending on their active mob.
byondacc_ageDays since the client's BYOND account was created
byondacc_dateDate the client registered their BYOND account on
cui_entriesList of the clients CUIs
description_holdersPersistent storage for the flavour text of examined atoms.
input_dataInput datum, what the client is pressing.
jbhThe client's job ban holder
last_discord_pm_timeLast world.time that a PM was send to discord by a player
movement_kb_dirsThe client's movement keybindings to directions, which work regardless of modifiers.
pai_saveClient's pAI save
received_discord_pmLast world/time that a PM was sent to the player by an admin
screen_mapsAssoc list with all the active maps - when a screen obj is added to a map, it's put in here as well.
seen_messagesMessages currently seen by this client
topiclimiterUsed for limiting the rate of topic sends by the client to avoid abuse
tos_consentHas the client accepted the TOS about data collection and other stuff
version_blockedIf true, client cannot ready up, late join, or observe. Used for players with EXTREMELY old byond versions.
watchlistedIs the client watchlisted

Procs

KeyDownThis list defines the keys in legacy mode that get passed on to the rebindable input system It cannot be bigger since, while typing, the keys would be passed to whatever they are set in the rebind input system
Process_GrabProcess_Grab() Called by client/Move() Checks to see if you are being grabbed and if so attemps to break it
Process_IncorpmoveProcess_Incorpmove Called by client/Move() Allows mobs to run though walls
_Topicdumb 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
clear_all_mapsClears all the maps of registered screen objects.
clear_mapClears the map of registered screen objects.
close_popupCloses a popup.
create_eventmob_forWARNING!** The jobban stuff looks mangled and disgusting But it looks beautiful in-game -Nodrak **WARNING!
create_popupCreates a popup window with a basic map element in it, without any further initialization.
deactivate_darkmodeBUTTONS UI ELEMENTS
generate_clickcatcherBUTTONS UI ELEMENTS NOTIFY USER
get_byond_account_dateSets the clients BYOND date up properly
handle_popup_closeWhen the popup closes in any way (player or proc call) it calls this.
maxviewReturns the biggest number from client.view so we can do easier maths
register_map_objRegisters screen obj with the client, which makes it visible on the assigned map, and becomes a part of the assigned map's lifecycle.
retrieve_byondacc_dataRetrieves the BYOND accounts data from the BYOND servers
set_macrosThis 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
setup_popupCreate the popup, and get it ready for generic use by giving it a background.
timer_logOpens a log of timers
uicloseverb
uid_logOpens a log of UIDs

Var Details

active_keybindings

The client's active keybindings, depending on their active mob.

byondacc_age

Days since the client's BYOND account was created

byondacc_date

Date the client registered their BYOND account on

cui_entries

List of the clients CUIs

description_holders

Persistent storage for the flavour text of examined atoms.

input_data

Input datum, what the client is pressing.

jbh

The client's job ban holder

last_discord_pm_time

Last world.time that a PM was send to discord by a player

movement_kb_dirs

The client's movement keybindings to directions, which work regardless of modifiers.

pai_save

Client's pAI save

received_discord_pm

Last world/time that a PM was sent to the player by an admin

screen_maps

Assoc list with all the active maps - when a screen obj is added to a map, it's put in here as well.

Format: list( = list(/obj/screen))

seen_messages

Messages currently seen by this client

topiclimiter

Used for limiting the rate of topic sends by the client to avoid abuse

Has the client accepted the TOS about data collection and other stuff

version_blocked

If true, client cannot ready up, late join, or observe. Used for players with EXTREMELY old byond versions.

watchlisted

Is the client watchlisted

Proc Details

KeyDown

This list defines the keys in legacy mode that get passed on to the rebindable input system It cannot be bigger since, while typing, the keys would be passed to whatever they are set in the rebind input system

Process_Grab

Process_Grab() Called by client/Move() Checks to see if you are being grabbed and if so attemps to break it

Process_Incorpmove

Process_Incorpmove Called by client/Move() Allows mobs to run though walls

_Topic

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

clear_all_maps

Clears all the maps of registered screen objects.

clear_map

Clears the map of registered screen objects.

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.

close_popup

Closes a popup.

create_eventmob_for

WARNING!** The jobban stuff looks mangled and disgusting But it looks beautiful in-game -Nodrak **WARNING!

create_popup

Creates a popup window with a basic map element in it, without any further initialization.

Ratio is how many pixels by how many pixels (keep it simple).

Returns a map name.

deactivate_darkmode

BUTTONS UI ELEMENTS

generate_clickcatcher

BUTTONS UI ELEMENTS NOTIFY USER

get_byond_account_date

Sets the clients BYOND date up properly

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:

handle_popup_close

When the popup closes in any way (player or proc call) it calls this.

maxview

Returns the biggest number from client.view so we can do easier maths

register_map_obj

Registers screen obj with the client, which makes it visible on the assigned map, and becomes a part of the assigned map's lifecycle.

retrieve_byondacc_data

Retrieves the BYOND accounts data from the BYOND servers

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

set_macros

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

setup_popup

Create the popup, and get it ready for generic use by giving it a background.

Width and height are multiplied by 64 by default.

timer_log

Opens a log of timers

In-round ability to view what has created a timer, and how many times a timer for that path has been created

uiclose

verb

Called by UIs when they are closed. Must be a verb so winset() can call it.

uid_log

Opens a log of UIDs

In-round ability to view what has created a UID, and how many times a UID for that path has been declared