diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 5b7387e5867..146b7b318ff 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -178,7 +178,6 @@ datum/mind else text += "EMPLOYEE|headrev|rev" - if(current && current.client && current.client.prefs.be_special & BE_REV) text += "|Enabled in Prefs" else @@ -283,17 +282,14 @@ datum/mind text += "
Objectives are empty! Randomize!" else text += "yes|NO" + + if(src in ticker.mode.enthralled) + text += "YES|no" + else + text += "yes|NO" + /** Enthralled ***/ text += "
enthralled" - if(src in ticker.mode.enthralled) - text += " YES | no" - else - text += " yes | NO" - - if(current && current.client && current.client.prefs.be_special & BE_VAMPIRE) - text += "|Enabled in Prefs" - else - text += "|Disabled in Prefs" sections["vampire"] = text diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index 876dca62e30..4a6a299f318 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -216,6 +216,8 @@ H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/psych(H), slot_w_uniform) if("Psychologist") H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/psych/turtleneck(H), slot_w_uniform) + if("Therapist") + H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) else H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/labcoat(H), slot_wear_suit) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index af5790222ed..9893665e225 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -23,10 +23,11 @@ universal_speak = 1 var/atom/movable/following = null var/medHUD = 0 + var/secHUD = 0 /mob/dead/observer/New(var/mob/body=null, var/flags=1) sight |= SEE_TURFS | SEE_MOBS | SEE_OBJS | SEE_SELF - see_invisible = SEE_INVISIBLE_OBSERVER + see_invisible = SEE_INVISIBLE_OBSERVER_AI_EYE see_in_dark = 100 verbs += /mob/dead/observer/proc/dead_tele @@ -103,6 +104,8 @@ Works together with spawning an observer, noted above. assess_targets(target_list, src) if(medHUD) process_medHUD(src) + if(secHUD) + process_secHUD(src) /mob/dead/proc/process_medHUD(var/mob/M) @@ -110,6 +113,13 @@ Works together with spawning an observer, noted above. for(var/mob/living/carbon/human/patient in oview(M, 14)) C.images += patient.hud_list[HEALTH_HUD] C.images += patient.hud_list[STATUS_HUD_OOC] + +/mob/dead/proc/process_secHUD(var/mob/M) + var/client/C = M.client + for(var/mob/living/carbon/human/target in oview(M, 14)) + C.images += target.hud_list[IMPTRACK_HUD] + C.images += target.hud_list[IMPLOYAL_HUD] + C.images += target.hud_list[IMPCHEM_HUD] /mob/dead/proc/assess_targets(list/target_list, mob/dead/observer/U) var/client/C = U.client @@ -257,8 +267,8 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp /mob/dead/observer/verb/toggle_medHUD() set category = "Ghost" - set name = "Toggle MedicHUD" - set desc = "Toggles Medical HUD allowing you to see how everyone is doing" + set name = "Toggle HUD" + set desc = "Toggles the security and medical HUD." if(!client) return if(medHUD) @@ -450,14 +460,20 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp src << "\blue Heat Capacity: [round(environment.heat_capacity(),0.1)]" -/mob/dead/observer/verb/toggle_darkness() - set name = "Toggle Darkness" +/mob/dead/observer/verb/toggle_sight() + set name = "Toggle Sight" set category = "Ghost" - if (see_invisible == SEE_INVISIBLE_OBSERVER_NOLIGHTING) - see_invisible = SEE_INVISIBLE_OBSERVER - else - see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING + switch(see_invisible) + if(SEE_INVISIBLE_OBSERVER_AI_EYE) + see_invisible = SEE_INVISIBLE_OBSERVER_NOOBSERVERS + usr << "You no longer see other observers or the AI eye." + if(SEE_INVISIBLE_OBSERVER_NOOBSERVERS) + see_invisible = SEE_INVISIBLE_OBSERVER_NOLIGHTING + usr << "You no longer see darkness." + else + see_invisible = SEE_INVISIBLE_OBSERVER_AI_EYE + usr << "You again see everything." /mob/dead/observer/verb/view_manfiest() set name = "View Crew Manifest" diff --git a/code/modules/mob/living/silicon/ai/freelook/eye.dm b/code/modules/mob/living/silicon/ai/freelook/eye.dm index 3d833c8de21..c2c23b02188 100644 --- a/code/modules/mob/living/silicon/ai/freelook/eye.dm +++ b/code/modules/mob/living/silicon/ai/freelook/eye.dm @@ -1,17 +1,19 @@ // AI EYE // -// An invisible (no icon) mob that the AI controls to look around the station with. +// A mob that the AI controls to look around the station with. // It streams chunks as it moves around, which will show it what the AI can and cannot see. /mob/aiEye name = "Inactive AI Eye" - icon = 'icons/obj/status_display.dmi' // For AI friend secret shh :o + icon = 'icons/mob/AI.dmi' + icon_state = "eye" + alpha = 127 var/mob/living/silicon/ai/ai = null density = 0 status_flags = GODMODE // You can't damage it. mouse_opacity = 0 see_in_dark = 7 - invisibility = INVISIBILITY_MAXIMUM + invisibility = INVISIBILITY_AI_EYE /mob/aiEye/New() ..() diff --git a/code/setup.dm b/code/setup.dm index 8584fbf24b4..ce7ec7b3d02 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -596,8 +596,11 @@ var/list/liftable_structures = list(\ #define INVISIBILITY_SPIRIT 50 #define SEE_SPIRITS 50 +#define SEE_INVISIBLE_OBSERVER_NOOBSERVERS 59 #define INVISIBILITY_OBSERVER 60 #define SEE_INVISIBLE_OBSERVER 60 +#define INVISIBILITY_AI_EYE 61 +#define SEE_INVISIBLE_OBSERVER_AI_EYE 61 #define INVISIBILITY_MAXIMUM 100 diff --git a/icons/mob/AI.dmi b/icons/mob/AI.dmi index b8cb5064aae..c13a97fa50d 100644 Binary files a/icons/mob/AI.dmi and b/icons/mob/AI.dmi differ