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

silicon

Vars

alarm_types_showIf this is a path, this gets created as an object in Initialize.
emaggedWhether we have been emagged
law_uiState laws UI datum which is also used to state laws even without the UI
no_law_rack_linkIf TRUE, the AI can't be linked to a law rack
sensors_onAre our siliconHUDs on? TRUE for yes, FALSE for no.

Procs

announce_law_changeThrows a screen alert indicating that the silicon's laws have changed
deadchat_lawchangeNotify's dead chat that a silicon's laws (may) have changed, with a link to view the new laws.
death_sequencePlays an animation of the player's hud flavored about their death somewhat
fully_replace_character_nameSame as the normal character name replacement, but updates the contents of the modular interface.
get_law_rackReturns the law rack this silicon is linked to, or null if not linked.
get_status_tab_itemsPlaces laws on the status panel for silicons
get_ui_accessReturns a UI status representing this silicon's capability to access the given source. Called by ui_status_silicon_has_access.
link_to_first_rackFind the first law rack we can link to and link to it
log_current_lawsLogs the silicon's current laws to the server log.
logeventRecords an IC event log entry in the cyborg's internal tablet.
replace_law_setWhen given a typepath to a law datum, replaces the silicon's current law set with a new one of that type.
set_genderSets cyborg gender from preferences. Expects a client.
show_lawsShows the silicon's current laws in chat.
try_sync_lawsFor AIs, iterates over connected cyborg and calls try_sync_laws For cyborgs, checks if we have a master AI and, if lawupdate is set, syncs law and misc. with it
unlink_from_law_rackUnlinks the silicon from the law rack, if it is linked.

Var Details

alarm_types_show

If this is a path, this gets created as an object in Initialize.

emagged

Whether we have been emagged

law_ui

State laws UI datum which is also used to state laws even without the UI

If TRUE, the AI can't be linked to a law rack

sensors_on

Are our siliconHUDs on? TRUE for yes, FALSE for no.

Proc Details

announce_law_change

Throws a screen alert indicating that the silicon's laws have changed

If announce is TRUE, also sends a chat message to the silicon and plays a sound, followed by printing the new laws to the silicon's chat and informing deadchat of the law change.

deadchat_lawchange

Notify's dead chat that a silicon's laws (may) have changed, with a link to view the new laws.

death_sequence

Plays an animation of the player's hud flavored about their death somewhat

fully_replace_character_name

Same as the normal character name replacement, but updates the contents of the modular interface.

get_law_rack

Returns the law rack this silicon is linked to, or null if not linked.

get_status_tab_items

Places laws on the status panel for silicons

get_ui_access

Returns a UI status representing this silicon's capability to access the given source. Called by ui_status_silicon_has_access.

Find the first law rack we can link to and link to it

log_current_laws

Logs the silicon's current laws to the server log.

logevent

Records an IC event log entry in the cyborg's internal tablet.

Creates an entry in the borglog list of the cyborg's internal tablet (if it's a borg), listing the current in-game time followed by the message given. These logs can be seen by the cyborg in their BorgUI tablet app. By design, logging fails if the cyborg is dead.

(This used to be in robot.dm. It's in here now.)

Arguments: arg1: a string containing the message to log.

replace_law_set

When given a typepath to a law datum, replaces the silicon's current law set with a new one of that type.

Before replacing the lawset, unlinks the silicon from any law rack

Handles informing the silicon of the law change + syncing borgs for AIs

set_gender

Sets cyborg gender from preferences. Expects a client.

show_laws

Shows the silicon's current laws in chat.

You can optionally pass a mob to show to instead of the silicon itself.

try_sync_laws

For AIs, iterates over connected cyborg and calls try_sync_laws For cyborgs, checks if we have a master AI and, if lawupdate is set, syncs law and misc. with it

Unlinks the silicon from the law rack, if it is linked.