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

fax

Fax machine. Sends messages, receives messages, sends paperwork, receives paperwork.

Vars

can_receive_paperworkWhether this fax machine can receive paperwork to process on SSeconomy ticks.
fax_cooldownCooldown between sending faxes
is_allowed_to_toggle_paperworkWhether this fax can toggle paperwork on or off
lockedWhether this fax machine is locked.
max_paperworkMax amount of paperwork we can hold. Any more and the UI gets less readable.
received_paperThe paper received that was sent FROM admins. Reference to something in our contents.
received_paperworkLazylist of all paperwork we have in this fax machine. List of references to things in our contents.
receiving_enabledWhether this machine can receive faxes
room_tagThe area string this fax machine is set to.
sending_enabledWhether this machine can send faxes
stored_paperThe paper stored that we can send to admins. Reference to something in our contents.
unread_messageWhether we have an unread message

Procs

alert_received_paperDisplay an alert that [src] received a message from [source]. [source] is a string of a location or company.
check_paperworkCheck if [checked_paper] has had its paperwork fulfilled successfully. [checked_paper] is an instantiated paper. [user] is the mob who triggered the check.
eject_all_paperworkCall [proc/eject_select_paperwork] on all papers in [received_paperwork]. if [user] is specified, pass it into [proc/eject_select_paperwork], dispensing as much paper into their hands as possible.
eject_all_paperwork_with_delayRecursively call [proc/eject_select_paperwork] on the first index of [received_paperwork], applying a delay in between each call.
eject_select_paperworkRemove [paper] from the list of [received_paperwork] and dispense it into [user]'s hands, if user is supplied.
emag_actSends messages to the syndicate when emagged.
find_overlay_stateReturns an appropriate icon state to represent a passed item. Arguments:
history_addA procedure that makes entries in the history of fax transactions.
history_clearClears the history of fax operations.
insert_paperInsert [inserted_paper] into the fax machine, setting [stored_paper] to [inserted_paper]. [inserted_paper] is an instantiated paper. [user] is the mob placing the paper into the machine.
insert_processed_paperInsert [inserted_paper] into the fax machine, adding it to the list of [received_paperwork] if possible. [inserted_paper] is an instantiated paper. [user] is the mob placing the paper into the machine.
receive_paperreceive [new_paper] as a fax from [source]. Ejects any [received_paper] we may have, and sets [received_paper] to [new_paper]. If [source] is null or empty, we go with a preset name.
send_fax_to_adminsSend the content of admin faxes to admins directly. [sender] - the mob who sent the fax [fax_contents] - the contents of the fax [destination_color] - the color of the span that encompasses [destination_string] [destination_string] - the string that says where this fax was sent (syndiate or centcom)
send_stored_paperSend [stored_paper] from [user] to [destinatoin]. if [destination] is an admin fax machine, send it to admins. Otherwise, send it to the corresponding fax machine in the world, looking for (room_tag == [destination])
set_room_tagSet this fax machine's [room_tag] to the current room or null.

Var Details

can_receive_paperwork

Whether this fax machine can receive paperwork to process on SSeconomy ticks.

fax_cooldown

Cooldown between sending faxes

is_allowed_to_toggle_paperwork

Whether this fax can toggle paperwork on or off

locked

Whether this fax machine is locked.

max_paperwork

Max amount of paperwork we can hold. Any more and the UI gets less readable.

received_paper

The paper received that was sent FROM admins. Reference to something in our contents.

received_paperwork

Lazylist of all paperwork we have in this fax machine. List of references to things in our contents.

receiving_enabled

Whether this machine can receive faxes

room_tag

The area string this fax machine is set to.

sending_enabled

Whether this machine can send faxes

stored_paper

The paper stored that we can send to admins. Reference to something in our contents.

unread_message

Whether we have an unread message

Proc Details

alert_received_paper

Display an alert that [src] received a message from [source]. [source] is a string of a location or company.

check_paperwork

Check if [checked_paper] has had its paperwork fulfilled successfully. [checked_paper] is an instantiated paper. [user] is the mob who triggered the check.

returns TRUE if the paperwork was correct, FALSE otherwise.

eject_all_paperwork

Call [proc/eject_select_paperwork] on all papers in [received_paperwork]. if [user] is specified, pass it into [proc/eject_select_paperwork], dispensing as much paper into their hands as possible.

Then, null the list after all is done.

eject_all_paperwork_with_delay

Recursively call [proc/eject_select_paperwork] on the first index of [received_paperwork], applying a delay in between each call.

If [user] is specified, pass [user] into the [proc/eject_select_paperwork] call, dispensing as much paper into their hands as possible.

eject_select_paperwork

Remove [paper] from the list of [received_paperwork] and dispense it into [user]'s hands, if user is supplied.

[paper] must be an instantiated paper already in [list/received_paperwork]. if [silent] is FALSE, give feedback and play a sound.

emag_act

Sends messages to the syndicate when emagged.

find_overlay_state

Returns an appropriate icon state to represent a passed item. Arguments:

history_add

A procedure that makes entries in the history of fax transactions.

Called to record the operation in the fax history list. Records the type of operation, the name of the fax machine with which the operation was performed, and the station time. Arguments:

history_clear

Clears the history of fax operations.

insert_paper

Insert [inserted_paper] into the fax machine, setting [stored_paper] to [inserted_paper]. [inserted_paper] is an instantiated paper. [user] is the mob placing the paper into the machine.

insert_processed_paper

Insert [inserted_paper] into the fax machine, adding it to the list of [received_paperwork] if possible. [inserted_paper] is an instantiated paper. [user] is the mob placing the paper into the machine.

receive_paper

receive [new_paper] as a fax from [source]. Ejects any [received_paper] we may have, and sets [received_paper] to [new_paper]. If [source] is null or empty, we go with a preset name.

[new_paper] is a reference to an instantiated, written paper. [source] is a string of the location or company sending the fax. [forced] will always send the fax if TRUE even if the machine is broken, unpowered, or disabled.

returns TRUE if the fax was received.

send_fax_to_admins

Send the content of admin faxes to admins directly. [sender] - the mob who sent the fax [fax_contents] - the contents of the fax [destination_color] - the color of the span that encompasses [destination_string] [destination_string] - the string that says where this fax was sent (syndiate or centcom)

send_stored_paper

Send [stored_paper] from [user] to [destinatoin]. if [destination] is an admin fax machine, send it to admins. Otherwise, send it to the corresponding fax machine in the world, looking for (room_tag == [destination])

returns TRUE if the fax was sent.

set_room_tag

Set this fax machine's [room_tag] to the current room or null.

if to_curr_room is TRUE, sets the room_tag to the current area's name. otherwise, sets it to null.

if update_all_faxes is TRUE, updates all fax machines in the world.