Drone Designators (#12302)

This commit is contained in:
Geeves
2021-08-19 19:18:38 -03:00
committed by GitHub
parent dcfd8f7214
commit 2cb2152d6a
6 changed files with 57 additions and 20 deletions
@@ -20,8 +20,7 @@
/mob/living/silicon/robot/drone
// Look and feel
name = "drone"
real_name = "drone"
name = "maintenance drone"
desc_info = "Drones are player-controlled synthetics which are lawed to maintain the station and not \
interact with anyone else, except for other drones. They hold a wide array of tools to build, repair, maintain, and clean. \
They fuction similarly to other synthetics, in that they require recharging regularly, have laws, and are resilient to many hazards, \
@@ -122,6 +121,7 @@
/mob/living/silicon/robot/drone/construction
// Look and feel
name = "construction drone"
icon_state = "constructiondrone"
// Components
@@ -168,9 +168,6 @@
/mob/living/silicon/robot/drone/construction/matriarch/request_player()
SSghostroles.add_spawn_atom("matriarchmaintdrone", src)
/mob/living/silicon/robot/drone/construction/matriarch/updatename()
return
/mob/living/silicon/robot/drone/Initialize()
. = ..()
@@ -215,8 +212,7 @@
name = real_name
/mob/living/silicon/robot/drone/updatename()
real_name = "maintenance drone ([rand(100,999)])"
name = real_name
return
/mob/living/silicon/robot/drone/setup_icon_cache()
cached_eye_overlays = list(
@@ -516,10 +512,6 @@
to_chat(src, SPAN_NOTICE("Use <b>:d</b> to talk to other drones and <b>say</b> to speak silently to your nearby fellows."))
to_chat(src, SPAN_NOTICE("<b>You do not follow orders from anyone; not the AI, not humans, and not other synthetics.</b>."))
/mob/living/silicon/robot/drone/construction/updatename()
real_name = "construction drone ([rand(100,999)])"
name = real_name
/mob/living/silicon/robot/drone/construction/process_level_restrictions()
//Abort if they should not get blown
if(lock_charge || scrambled_codes || emagged)
@@ -79,7 +79,7 @@
if(produce_drones && drone_progress >= 100 && istype(user,/mob/abstract) && config.allow_drone_spawn && count_drones() < config.max_maint_drones)
to_chat(user, SPAN_NOTICE("<B>A drone is prepared. use 'Ghost Spawner' from the Ghost tab to spawn as a maintenance drone.</B>"))
/obj/machinery/drone_fabricator/proc/create_drone(var/client/player)
/obj/machinery/drone_fabricator/proc/create_drone(var/client/player, var/drone_tag)
if(stat & NOPOWER)
return
if(!produce_drones || !config.allow_drone_spawn || count_drones() >= config.max_maint_drones)
@@ -95,7 +95,11 @@
if(player.mob?.mind)
player.mob.mind.reset()
if(!drone_tag)
drone_tag = "MT"
var/mob/living/silicon/robot/drone/new_drone = new drone_type(get_turf(src))
new_drone.set_name("[initial(new_drone.name)] ([drone_tag]-[rand(100,999)])")
new_drone.transfer_personality(player)
new_drone.master_fabricator = src