Initial implementation of holo HUDs.

This commit is contained in:
Zattarra
2023-10-13 21:29:11 -07:00
parent 505f9bf58f
commit 52ff793b33
4 changed files with 73 additions and 0 deletions
@@ -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")
@@ -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