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

drone

Maintenance Drone

Small player controlled fixer-upper

The maintenace drone is a ghost role with the objective to repair and maintain the station.

Featuring two dexterous hands, and a built in toolbox stocked with tools.

They have laws to prevent them from doing anything else.

Vars

can_unhackWhether this drone can be un-hacked. Used for subtypes that cannot be meaningfully "fixed".
colourStored drone color, restored when unhacked
default_headwearDefault /mob/living/basic/drone/var/head item
default_storageDefault /mob/living/basic/drone/var/internal_storage item
drone_area_blacklist_flatblacklisted drone areas, direct
drone_area_blacklist_recursiveblacklisted drone areas, recursive/includes descendants
drone_item_whitelist_flatwhitelisted drone items, direct
drone_item_whitelist_recursivewhitelisted drone items, recursive/includes descendants
drone_machinery_blacklist_compiledblacklisted drone machine typecache, compiled from [var/drone_machinery_blacklist_flat], [var/list/drone_machinery_blacklist_recursive], negated by their whitelist counterparts
drone_machinery_blacklist_flatblacklisted drone machines, direct
drone_machinery_blacklist_recursiveblacklisted drone machines, recursive/includes descendants
drone_machinery_whitelist_flatcancels out blacklisted machines, direct
drone_machinery_whitelist_recursivecancels out blacklisted machines, recursive/includes descendants
flavortextFlavor text announced to drones on /mob/proc/Login
hackedHacked state, see /mob/living/basic/drone/proc/update_drone_hack
headHeadwear slot
heavy_emp_damageAmount of damage sustained if hit by a heavy EMP pulse
internal_storageInternal storage slot. Fits any item
lawsDrone laws announced on spawn
listenerAlarm listener datum, handes caring about alarm events and such
pickedTRUE if we have picked our visual appearance, FALSE otherwise (default)
shyIf we have laws to minimize bothering others. Enables or disables drone laws enforcement components (use [/mob/living/basic/drone/proc/set_shy] to set)
shy_machine_whitelistmachines whitelisted from being shy with
visualAppearanceicon_state of drone from icons/mobs/drone.dmi

Procs

alert_dronesWraps /proc/_alert_drones with defaults
check_lawsEchoes drone laws to the user
check_menucheck_menu: Checks if we are allowed to interact with a radial menu
drone_chatWraps /mob/living/basic/drone/proc/alert_drones as a Drone Chat
drone_pingCreates an alert to drones in the same network
get_armor_effectivenessReturns a multiplier for any head armor you wear as a drone.
liberateMakes the drone into a Free Drone, who have no real laws and can do whatever they like. Only currently used for players wabbajacked into drones.
pickVisualAppearancePrompt for user to pick /mob/living/basic/drone/var/visualAppearance
screwdriver_actScrewdrivering repairs the drone to full hp, if it isn't dead.
try_reactivateCalled when a drone attempts to reactivate a dead drone
update_drone_hackHack or unhack a drone
update_drone_icon_hackedChanges the icon state to a hacked version
wrench_actWrenching un-hacks hacked drones.

Var Details

can_unhack

Whether this drone can be un-hacked. Used for subtypes that cannot be meaningfully "fixed".

colour

Stored drone color, restored when unhacked

default_headwear

Default /mob/living/basic/drone/var/head item

default_storage

Default /mob/living/basic/drone/var/internal_storage item

drone_area_blacklist_flat

blacklisted drone areas, direct

drone_area_blacklist_recursive

blacklisted drone areas, recursive/includes descendants

drone_item_whitelist_flat

whitelisted drone items, direct

drone_item_whitelist_recursive

whitelisted drone items, recursive/includes descendants

drone_machinery_blacklist_compiled

blacklisted drone machine typecache, compiled from [var/drone_machinery_blacklist_flat], [var/list/drone_machinery_blacklist_recursive], negated by their whitelist counterparts

drone_machinery_blacklist_flat

blacklisted drone machines, direct

drone_machinery_blacklist_recursive

blacklisted drone machines, recursive/includes descendants

drone_machinery_whitelist_flat

cancels out blacklisted machines, direct

drone_machinery_whitelist_recursive

cancels out blacklisted machines, recursive/includes descendants

flavortext

Flavor text announced to drones on /mob/proc/Login

hacked

Hacked state, see /mob/living/basic/drone/proc/update_drone_hack

head

Headwear slot

heavy_emp_damage

Amount of damage sustained if hit by a heavy EMP pulse

internal_storage

Internal storage slot. Fits any item

laws

Drone laws announced on spawn

listener

Alarm listener datum, handes caring about alarm events and such

picked

TRUE if we have picked our visual appearance, FALSE otherwise (default)

shy

If we have laws to minimize bothering others. Enables or disables drone laws enforcement components (use [/mob/living/basic/drone/proc/set_shy] to set)

shy_machine_whitelist

machines whitelisted from being shy with

visualAppearance

icon_state of drone from icons/mobs/drone.dmi

Possible states are:

Proc Details

alert_drones

Wraps /proc/_alert_drones with defaults

check_laws

Echoes drone laws to the user

See /mob/living/basic/drone/var/laws

check_menu

check_menu: Checks if we are allowed to interact with a radial menu

drone_chat

Wraps /mob/living/basic/drone/proc/alert_drones as a Drone Chat

Shares the same radio code with binary

drone_ping

Creates an alert to drones in the same network

Prompts user for alert level of:

Attaches area name to message

get_armor_effectiveness

Returns a multiplier for any head armor you wear as a drone.

liberate

Makes the drone into a Free Drone, who have no real laws and can do whatever they like. Only currently used for players wabbajacked into drones.

pickVisualAppearance

Prompt for user to pick /mob/living/basic/drone/var/visualAppearance

Does nothing if there is no user

Called on /mob/proc/Login

screwdriver_act

Screwdrivering repairs the drone to full hp, if it isn't dead.

try_reactivate

Called when a drone attempts to reactivate a dead drone

If the owner is still ghosted, will notify them. If the owner cannot be found, fails with an error message.

Arguments:

update_drone_hack

Hack or unhack a drone

This changes the drone's laws to destroy the station or resets them to normal.

Some debuffs are applied like slowing the drone down and disabling vent crawling

Arguments

update_drone_icon_hacked

Changes the icon state to a hacked version

See also

wrench_act

Wrenching un-hacks hacked drones.