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 | |
alarms | List of active alarms. See /mob/living/simple_animal/drone/proc/triggerAlarm and /mob/living/simple_animal/drone/proc/cancelAlarm |
---|---|
colour | Stored drone color, restored when unhacked |
default_hatmask | Default /mob/living/simple_animal/drone/var/head item |
default_storage | Default /mob/living/simple_animal/drone/var/internal_storage item |
flavortext | Flavor text announced to drones on /mob/proc/Login |
hacked | Hacked state, see /mob/living/simple_animal/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 |
picked | TRUE if we have picked our visual appearance, FALSE otherwise (default) |
visualAppearance | icon_state of drone from icons/mobs/drone.dmi |
Procs | |
alert_drones | Wraps /proc/_alert_drones with defaults |
cancelAlarm | Clears alarm and alerts drones |
check_laws | Echoes drone laws to the user |
check_menu | check_menu: Checks if we are allowed to interact with a radial menu |
drone_chat | Wraps /mob/living/simple_animal/drone/proc/alert_drones as a Drone Chat |
drone_ping | Creates an alert to drones in the same network |
freeCamera | This isn't currently needed since drones do jack shit with cameras. I hate this code so much |
liberate | |
pickVisualAppearance | Prompt for usr to pick /mob/living/simple_animal/drone/var/visualAppearance |
triggerAlarm | Alerts drones about different priorities of alarms |
try_reactivate | Called when a drone attempts to reactivate a dead drone |
update_drone_hack | Hack or unhack a drone |
update_drone_icon_hacked | Changes the icon state to a hacked version |
Var Details
alarms
List of active alarms. See /mob/living/simple_animal/drone/proc/triggerAlarm and /mob/living/simple_animal/drone/proc/cancelAlarm
colour
Stored drone color, restored when unhacked
default_hatmask
Default /mob/living/simple_animal/drone/var/head item
default_storage
Default /mob/living/simple_animal/drone/var/internal_storage item
flavortext
Flavor text announced to drones on /mob/proc/Login
hacked
Hacked state, see /mob/living/simple_animal/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
picked
TRUE
if we have picked our visual appearance, FALSE
otherwise (default)
visualAppearance
icon_state of drone from icons/mobs/drone.dmi
Possible states are:
Proc Details
alert_drones
Wraps /proc/_alert_drones with defaults
- source -
src
- faction_check_mob -
src
- dead_can_hear -
TRUE
cancelAlarm
Clears alarm and alerts drones
Arguments:
- class - One of the keys listed in /mob/living/simple_animal/drone/var/alarms
- A - /area the alarm occurs
- alarmsource - /atom source of the alarm
check_laws
Echoes drone laws to the user
See /mob/living/simple_animal/drone/var/laws
check_menu
check_menu: Checks if we are allowed to interact with a radial menu
drone_chat
Wraps /mob/living/simple_animal/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:
- Low
- Medium
- High
- Critical
Attaches area name to message
freeCamera
This isn't currently needed since drones do jack shit with cameras. I hate this code so much
liberate
pickVisualAppearance
Prompt for usr to pick /mob/living/simple_animal/drone/var/visualAppearance
Does nothing if there is no usr
Called on /mob/proc/Login
triggerAlarm
Alerts drones about different priorities of alarms
Arguments:
- class - One of the keys listed in /mob/living/simple_animal/drone/var/alarms
- A - /area the alarm occurs
- O - unused argument, see [/mob/living/silicon/robot/triggerAlarm]
- alarmsource - /atom source of the alarm
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:
- user - The /mob/living attempting to reactivate the drone
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
- hack - Boolean if the drone is being hacked or unhacked
update_drone_icon_hacked
Changes the icon state to a hacked version
See also