diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index d5ed4b88fd3..488417fb183 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -220,6 +220,7 @@ if(4) H.equip_or_collect(new /obj/item/weapon/storage/backpack/satchel(H), slot_back) H.equip_or_collect(new /obj/item/clothing/under/rank/medical(H), slot_w_uniform) H.equip_or_collect(new /obj/item/clothing/suit/storage/fr_jacket(H), slot_wear_suit) + H.equip_or_collect(new /obj/item/clothing/glasses/hud/health_advanced, slot_glasses) H.equip_or_collect(new /obj/item/clothing/shoes/white(H), slot_shoes) H.equip_or_collect(new /obj/item/device/pda/medical(H), slot_wear_pda) H.equip_or_collect(new /obj/item/weapon/storage/firstaid/adv(H), slot_l_hand) diff --git a/code/game/jobs/job/supervisor.dm b/code/game/jobs/job/supervisor.dm index 082fcde8558..b9ce36780d8 100644 --- a/code/game/jobs/job/supervisor.dm +++ b/code/game/jobs/job/supervisor.dm @@ -216,6 +216,7 @@ H.equip_or_collect(new /obj/item/weapon/storage/box/survival(H.back), slot_in_backpack) H.equip_or_collect(new /obj/item/clothing/gloves/combat(H), slot_gloves) H.equip_or_collect(new /obj/item/clothing/shoes/jackboots(H), slot_shoes) + H.equip_or_collect(new /obj/item/clothing/glasses/hud/health_advanced, slot_glasses) H.equip_if_possible(new /obj/item/clothing/under/rank/centcom/representative(H), slot_w_uniform) H.equip_if_possible(new /obj/item/clothing/suit/armor/vest/fluff/deus_blueshield(H), slot_wear_suit) H.equip_or_collect(new /obj/item/device/pda/heads/hop(H), slot_wear_pda) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index ef344311839..9b7693fdc48 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -222,6 +222,7 @@ new /obj/item/clothing/under/rank/centcom_officer(src) new /obj/item/device/flash(src) new /obj/item/weapon/handcuffs(src) + new /obj/item/clothing/glasses/hud/health_advanced return diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index f541c837e6a..2d31c71d53e 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -15,6 +15,11 @@ desc = "A heads-up display that scans the humans in view and provides accurate data about their health status." icon_state = "healthhud" +/obj/item/clothing/glasses/hud/health_advanced + name = "Advanced Health Scanner HUD" + desc = "A heads-up display that scans the humans in view and provides accurate data about their health status. Includes anti-flash filter." + icon_state = "healthhud" + /obj/item/clothing/glasses/hud/health/process_hud(var/mob/M) @@ -27,12 +32,22 @@ C.images += patient.hud_list[HEALTH_HUD] C.images += patient.hud_list[STATUS_HUD] +/obj/item/clothing/glasses/hud/health_advanced/process_hud(var/mob/M) + if(!M) return + if(!M.client) return + var/client/C = M.client + for(var/mob/living/carbon/human/patient in view(get_turf(M))) + if(M.see_invisible < patient.invisibility) + continue + C.images += patient.hud_list[HEALTH_HUD] + C.images += patient.hud_list[STATUS_HUD] + /obj/item/clothing/glasses/hud/security name = "Security HUD" desc = "A heads-up display that scans the humans in view and provides accurate data about their ID status and security records." icon_state = "securityhud" - var/global/list/jobs[0] + var/global/list/jobs[0] /obj/item/clothing/glasses/hud/security/jensenshades name = "Augmented shades" diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 3fead57a28d..222a096b136 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -470,7 +470,7 @@ if("security") return istype(H.glasses, /obj/item/clothing/glasses/hud/security) || istype(H.glasses, /obj/item/clothing/glasses/sunglasses/sechud) if("medical") - return istype(H.glasses, /obj/item/clothing/glasses/hud/health) + return istype(H.glasses, /obj/item/clothing/glasses/hud/health) || istype(H.glasses, /obj/item/clothing/glasses/hud/health_advanced) else return 0 else if(istype(M, /mob/living/silicon/robot)) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 7fa3fb75415..8229d3646dc 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -955,6 +955,8 @@ number -= 1 if(istype(src.glasses, /obj/item/clothing/glasses/sunglasses)) number += 1 + if(istype(src.glasses, /obj/item/clothing/glasses/hud/health_advanced)) // New blueshield / brig phys no flash medi hud + number += 1 if(istype(src.glasses, /obj/item/clothing/glasses/welding)) var/obj/item/clothing/glasses/welding/W = src.glasses if(!W.up)