diff --git a/modular_splurt/code/modules/client/loadout/glasses.dm b/modular_splurt/code/modules/client/loadout/glasses.dm index 74c8a440b1..61979e2bc8 100644 --- a/modular_splurt/code/modules/client/loadout/glasses.dm +++ b/modular_splurt/code/modules/client/loadout/glasses.dm @@ -36,3 +36,23 @@ /datum/gear/glasses/aviators name = "Aviators" path = /obj/item/clothing/glasses/aviators + +/datum/gear/glasses/blueshield/holo + name = "Holo Blueshield HUD Glasses" + path = /obj/item/clothing/glasses/hud/blueshield/holo + restricted_roles = list("Blueshield") + +/datum/gear/glasses/blueshield/holo/prescription + name = "Prescription Holo Blueshield HUD Glasses" + path = /obj/item/clothing/glasses/hud/blueshield/holo/prescription + restricted_roles = list("Blueshield") + +/datum/gear/glasses/security/sunglasses/holo + name = "Holo Secuirity HUD Glasses" + path = /obj/item/clothing/glasses/hud/security/sunglasses/holo + restricted_roles = list("Security Officer", "Warden", "Head of Security") + +/datum/gear/glasses/security/sunglasses/holo/prescription + name = "Prescription Holo Secuirity HUD Glasses" + path = /obj/item/clothing/glasses/hud/security/sunglasses/holo/prescription + restricted_roles = list("Security Officer", "Warden", "Head of Security") diff --git a/modular_splurt/code/modules/clothing/glasses/hud.dm b/modular_splurt/code/modules/clothing/glasses/hud.dm index e6df06cf4a..4ba68c4547 100644 --- a/modular_splurt/code/modules/clothing/glasses/hud.dm +++ b/modular_splurt/code/modules/clothing/glasses/hud.dm @@ -80,6 +80,46 @@ desc = "A HUD with multiple functions. Equipped with prescription lenses." vision_correction = 1 +/obj/item/clothing/glasses/hud/blueshield/holo + name = "holo blueshield HUD glasses" + desc = "A HUD with multiple functions. Nearly invisible when worn. Still protects from flashes." + actions_types = list(/datum/action/item_action/switch_hud) + icon_state = "holohudmed" + icon = 'modular_splurt/icons/obj/clothing/glasses.dmi' + item_state = "holo" + mob_overlay_icon = 'modular_splurt/icons/mobs/eyes.dmi' + flash_protect = 1 + +/obj/item/clothing/glasses/hud/blueshield/holo/attack_self(mob/user) + if(!ishuman(user)) + return + var/mob/living/carbon/human/wearer = user + if (wearer.glasses != src) + return + + if (hud_type) + var/datum/atom_hud/H = GLOB.huds[hud_type] + H.remove_hud_from(user) + + if (hud_type == DATA_HUD_MEDICAL_ADVANCED) + hud_type = null + icon_state = "holohud" + else if (hud_type == DATA_HUD_SECURITY_ADVANCED) + hud_type = DATA_HUD_MEDICAL_ADVANCED + icon_state = "holohudmed" + else + hud_type = DATA_HUD_SECURITY_ADVANCED + icon_state = "holohudsec" + + if (hud_type) + var/datum/atom_hud/H = GLOB.huds[hud_type] + H.add_hud_to(user) + +/obj/item/clothing/glasses/hud/blueshield/holo/prescription + name = "prescription holo blueshield HUD glasses" + desc = "A HUD with multiple functions. Nearly invisible when worn. Equipped with prescription lenses." + vision_correction = 1 + // Med HUDs /obj/item/clothing/glasses/hud/health/sunglasses/aviators @@ -108,6 +148,19 @@ desc = "aviators with a security HUD with prescription lenses." vision_correction = 1 +/obj/item/clothing/glasses/hud/security/sunglasses/holo + name = "holo security HUD glasses" + desc = "Sunglasses with a security HUD. Nearly invisible when worn." + icon_state = "holohudsec" + icon = 'modular_splurt/icons/obj/clothing/glasses.dmi' + item_state = "holo" + mob_overlay_icon = 'modular_splurt/icons/mobs/eyes.dmi' + +/obj/item/clothing/glasses/hud/security/sunglasses/holo/prescription + name = "prescription holo security HUD glasses" + desc = "Sunglasses with a security HUD. Nearly invisible when worn. Equipped with prescription lenses." + vision_correction = 1 + // Diag HUDs /obj/item/clothing/glasses/hud/diagnostic/sunglasses/aviators diff --git a/modular_splurt/icons/mobs/eyes.dmi b/modular_splurt/icons/mobs/eyes.dmi index 8b8e22abb9..ecb7098a4f 100644 Binary files a/modular_splurt/icons/mobs/eyes.dmi and b/modular_splurt/icons/mobs/eyes.dmi differ diff --git a/modular_splurt/icons/obj/clothing/glasses.dmi b/modular_splurt/icons/obj/clothing/glasses.dmi index 3c19a1f5f8..b74feabf85 100644 Binary files a/modular_splurt/icons/obj/clothing/glasses.dmi and b/modular_splurt/icons/obj/clothing/glasses.dmi differ