AIs can now use the crew monitor console for tracking.

Due to balance concerns, the headache of handling fake identities, meta, etc., this only works for crew members with tracking sensors enabled.
This commit is contained in:
PsiOmega
2015-03-17 10:11:18 +01:00
parent 722d808f04
commit f2d3f7833b
2 changed files with 28 additions and 6 deletions

View File

@@ -17,6 +17,13 @@
if(href_list["update"])
src.updateDialog()
return 1
if(href_list["track"])
if(usr.isAI())
var/mob/living/silicon/ai/AI = usr
var/mob/living/carbon/human/H = locate(href_list["track"]) in mob_list
if(hassensorlevel(H, SUIT_SENSOR_TRACKING))
AI.ai_actual_track(H)
return 1
/obj/nano_module/crew_monitor/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
user.set_machine(src)
@@ -36,7 +43,7 @@
if(H.w_uniform != C)
continue
var/list/crewmemberData = list("dead"=0, "oxy"=-1, "tox"=-1, "fire"=-1, "brute"=-1, "area"="", "x"=-1, "y"=-1)
var/list/crewmemberData = list("dead"=0, "oxy"=-1, "tox"=-1, "fire"=-1, "brute"=-1, "area"="", "x"=-1, "y"=-1, "ref" = "\ref[H]")
crewmemberData["sensor_type"] = C.sensor_mode
crewmemberData["name"] = H.get_authentification_name(if_no_id="Unknown")
@@ -62,6 +69,7 @@
crewmembers = sortByKey(crewmembers, "name")
data["isAI"] = user.isAI()
data["crewmembers"] = crewmembers
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)