diff --git a/code/_onclick/hud/ai.dm b/code/_onclick/hud/ai.dm index b2af85d1b0..f50cf8dc87 100644 --- a/code/_onclick/hud/ai.dm +++ b/code/_onclick/hud/ai.dm @@ -162,7 +162,7 @@ if(..()) return var/mob/living/silicon/S = usr - S.sensor_mode() + S.toggle_sensors() /datum/hud/ai diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index bb057f7774..cc17d8e4bd 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -235,7 +235,8 @@ if(href_list["toggle"]) secHUD = !secHUD if(secHUD) - add_sec_hud() + var/datum/atom_hud/sec = GLOB.huds[sec_hud] + sec.add_hud_to(src) else var/datum/atom_hud/sec = GLOB.huds[sec_hud] sec.remove_hud_from(src) @@ -243,8 +244,8 @@ if(href_list["toggle"]) medHUD = !medHUD if(medHUD) - add_med_hud() - + var/datum/atom_hud/med = GLOB.huds[med_hud] + med.add_hud_to(src) else var/datum/atom_hud/med = GLOB.huds[med_hud] med.remove_hud_from(src) diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 5ed5bf5eb0..7df4c9fda0 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -30,6 +30,7 @@ var/ioncheck[1] var/devillawcheck[5] + var/sensors_on = 0 var/med_hud = DATA_HUD_MEDICAL_ADVANCED //Determines the med hud to use var/sec_hud = DATA_HUD_SECURITY_ADVANCED //Determines the sec hud to use var/d_hud = DATA_HUD_DIAGNOSTIC_BASIC //Determines the diag hud to use @@ -328,7 +329,7 @@ /mob/living/silicon/assess_threat(judgement_criteria, lasercolor = "", datum/callback/weaponcheck=null) //Secbots won't hunt silicon units return -10 -/mob/living/silicon/proc/remove_med_sec_hud() +/mob/living/silicon/proc/remove_sensors() var/datum/atom_hud/secsensor = GLOB.huds[sec_hud] var/datum/atom_hud/medsensor = GLOB.huds[med_hud] var/datum/atom_hud/diagsensor = GLOB.huds[d_hud] @@ -336,36 +337,24 @@ medsensor.remove_hud_from(src) diagsensor.remove_hud_from(src) -/mob/living/silicon/proc/add_sec_hud() +/mob/living/silicon/proc/add_sensors() var/datum/atom_hud/secsensor = GLOB.huds[sec_hud] - secsensor.add_hud_to(src) - -/mob/living/silicon/proc/add_med_hud() var/datum/atom_hud/medsensor = GLOB.huds[med_hud] - medsensor.add_hud_to(src) - -/mob/living/silicon/proc/add_diag_hud() var/datum/atom_hud/diagsensor = GLOB.huds[d_hud] + secsensor.add_hud_to(src) + medsensor.add_hud_to(src) diagsensor.add_hud_to(src) -/mob/living/silicon/proc/sensor_mode() +/mob/living/silicon/proc/toggle_sensors() if(incapacitated()) return - var/sensor_type = input("Please select sensor type.", "Sensor Integration", null) in list("Security", "Medical","Diagnostic","Disable") - remove_med_sec_hud() - switch(sensor_type) - if ("Security") - add_sec_hud() - to_chat(src, "Security records overlay enabled.") - if ("Medical") - add_med_hud() - to_chat(src, "Life signs monitor overlay enabled.") - if ("Diagnostic") - add_diag_hud() - to_chat(src, "Robotics diagnostic overlay enabled.") - if ("Disable") - to_chat(src, "Sensor augmentations disabled.") - + sensors_on = !sensors_on + if (!sensors_on) + to_chat(src, "Sensor overlay deactivated.") + remove_sensors() + return + add_sensors() + to_chat(src, "Sensor overlay activated.") /mob/living/silicon/proc/GetPhoto() if (aicamera)