mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
[MIRROR] Rx AR Hud and slight loadout cleanup (#10854)
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
committed by
GitHub
parent
24721a5ec0
commit
cc58ddc278
@@ -164,7 +164,7 @@
|
||||
origin_tech = list(TECH_MAGNET = 6, TECH_ENGINEERING = 6)
|
||||
toggleable = 1
|
||||
vision_flags = SEE_TURFS|SEE_MOBS|SEE_OBJS
|
||||
prescription = 1 // So two versions of these aren't needed.
|
||||
prescription = TRUE // So two versions of these aren't needed.
|
||||
|
||||
/datum/technomancer/equipment/med_hud
|
||||
name = "Medical HUD"
|
||||
|
||||
@@ -592,7 +592,7 @@ var/global/datum/controller/occupations/job_master
|
||||
var/equipped = H.equip_to_slot_or_del(new /obj/item/clothing/glasses/regular(H), slot_glasses)
|
||||
if(equipped != 1)
|
||||
var/obj/item/clothing/glasses/G = H.glasses
|
||||
G.prescription = 1
|
||||
G.prescription = TRUE
|
||||
|
||||
BITSET(H.hud_updateflag, ID_HUD)
|
||||
BITSET(H.hud_updateflag, IMPLOYAL_HUD)
|
||||
|
||||
@@ -106,12 +106,17 @@
|
||||
|
||||
/datum/gear/eyes/janitor
|
||||
display_name = "Contaminant HUD"
|
||||
description = "A heads-up display that scans the environment for contaminations. Can be taken with or without prescription lenses."
|
||||
path = /obj/item/clothing/glasses/hud/janitor
|
||||
allowed_roles = list(JOB_JANITOR)
|
||||
|
||||
/datum/gear/eyes/janitor/prescriptionjan
|
||||
display_name = "Contaminant HUD, prescription"
|
||||
path = /obj/item/clothing/glasses/hud/janitor/prescription
|
||||
/datum/gear/eyes/janitor/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard Contaminant HUD"=/obj/item/clothing/glasses/hud/health,
|
||||
"prescription Contaminant HUD"=/obj/item/clothing/glasses/hud/janitor/prescription
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/meson
|
||||
display_name = "Optical Meson Scanners selection"
|
||||
@@ -183,6 +188,14 @@
|
||||
display_name = "AR glasses"
|
||||
path = /obj/item/clothing/glasses/omnihud
|
||||
|
||||
/datum/gear/eyes/arglasses/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard AR glasses"=/obj/item/clothing/glasses/omnihud,
|
||||
"prescription AR glasses"=/obj/item/clothing/glasses/omnihud/prescription,
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/arglasses/visor
|
||||
display_name = "AR visor"
|
||||
path = /obj/item/clothing/glasses/omnihud/visor
|
||||
@@ -190,36 +203,73 @@
|
||||
/datum/gear/eyes/arglasses/visor/New()
|
||||
..()
|
||||
gear_tweaks = list(gear_tweak_free_color_choice)
|
||||
/datum/gear/eyes/arglassespres
|
||||
display_name = "AR glasses, prescription"
|
||||
path = /obj/item/clothing/glasses/omnihud/prescription
|
||||
|
||||
/datum/gear/eyes/arglasses/sec
|
||||
display_name = "AR-Security glasses"
|
||||
path = /obj/item/clothing/glasses/omnihud/sec
|
||||
allowed_roles = list(JOB_SECURITY_OFFICER,JOB_HEAD_OF_SECURITY,JOB_WARDEN,JOB_DETECTIVE)
|
||||
|
||||
/datum/gear/eyes/arglasses/sec/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard AR-Security glasses"=/obj/item/clothing/glasses/omnihud/sec,
|
||||
"prescription AR-Security glasses"=/obj/item/clothing/glasses/omnihud/sec/prescription
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/arglasses/sci
|
||||
display_name = "AR-Research glasses"
|
||||
path = /obj/item/clothing/glasses/omnihud/rnd
|
||||
allowed_roles = list(JOB_RESEARCH_DIRECTOR,JOB_SCIENTIST,JOB_XENOBIOLOGIST,JOB_XENOBOTANIST,JOB_ROBOTICIST)
|
||||
|
||||
/datum/gear/eyes/arglasses/sci/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard AR-Research glasses"=/obj/item/clothing/glasses/omnihud/rnd,
|
||||
"prescription AR-Research glasses"=/obj/item/clothing/glasses/omnihud/rnd/prescription
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/arglasses/eng
|
||||
display_name = "AR-Engineering glasses"
|
||||
path = /obj/item/clothing/glasses/omnihud/eng
|
||||
allowed_roles = list(JOB_ENGINEER,JOB_CHIEF_ENGINEER,JOB_ATMOSPHERIC_TECHNICIAN)
|
||||
|
||||
/datum/gear/eyes/arglasses/eng/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard AR-Engineering glasses"=/obj/item/clothing/glasses/omnihud/eng,
|
||||
"prescription AR-Engineering glasses"=/obj/item/clothing/glasses/omnihud/eng/prescription
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/arglasses/med
|
||||
display_name = "AR-Medical glasses"
|
||||
path = /obj/item/clothing/glasses/omnihud/med
|
||||
allowed_roles = list(JOB_MEDICAL_DOCTOR,JOB_CHIEF_MEDICAL_OFFICER,JOB_CHEMIST,JOB_PARAMEDIC,JOB_GENETICIST, JOB_PSYCHIATRIST,JOB_FIELD_MEDIC) //CHOMP keep explo
|
||||
|
||||
/datum/gear/eyes/arglasses/med/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard AR-Medical glasses"=/obj/item/clothing/glasses/omnihud/med,
|
||||
"prescription AR-Medical glasses"=/obj/item/clothing/glasses/omnihud/med/prescription
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/arglasses/all
|
||||
display_name = "AR-Command glasses"
|
||||
path = /obj/item/clothing/glasses/omnihud/all
|
||||
cost = 2
|
||||
allowed_roles = list(JOB_SITE_MANAGER,JOB_HEAD_OF_PERSONNEL)
|
||||
|
||||
/datum/gear/eyes/arglasses/all/New()
|
||||
..()
|
||||
var/list/selector_uniforms = list(
|
||||
"standard AR-Command glasses"=/obj/item/clothing/glasses/omnihud/all,
|
||||
"prescription AR-Command glasses"=/obj/item/clothing/glasses/omnihud/all/prescription
|
||||
)
|
||||
gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms))
|
||||
|
||||
/datum/gear/eyes/spiffygogs
|
||||
display_name = "slick orange goggles"
|
||||
path = /obj/item/clothing/glasses/fluff/spiffygogs
|
||||
|
||||
@@ -20,7 +20,7 @@ BLIND // can't see anything
|
||||
var/vision_flags = 0
|
||||
var/darkness_view = 0//Base human is 2
|
||||
var/see_invisible = -1
|
||||
var/prescription = 0
|
||||
var/prescription = FALSE
|
||||
var/toggleable = 0
|
||||
var/off_state = "degoggles"
|
||||
var/active = 1
|
||||
@@ -104,7 +104,7 @@ BLIND // can't see anything
|
||||
/obj/item/clothing/glasses/meson/prescription
|
||||
name = "prescription mesons"
|
||||
desc = "Optical Meson Scanner with prescription lenses."
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/meson/aviator
|
||||
name = "engineering aviators"
|
||||
@@ -117,7 +117,7 @@ BLIND // can't see anything
|
||||
/obj/item/clothing/glasses/meson/aviator/prescription
|
||||
name = "prescription engineering aviators"
|
||||
desc = "Engineering Aviators with prescription lenses."
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/hud/health/aviator
|
||||
name = "medical HUD aviators"
|
||||
@@ -131,7 +131,7 @@ BLIND // can't see anything
|
||||
/obj/item/clothing/glasses/hud/health/aviator/prescription
|
||||
name = "prescription medical HUD aviators"
|
||||
desc = "Modified aviator glasses with a toggled health HUD. Comes with bonus prescription lenses."
|
||||
prescription = 6
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/science
|
||||
name = "Science Goggles"
|
||||
@@ -248,7 +248,7 @@ BLIND // can't see anything
|
||||
|
||||
/obj/item/clothing/glasses/material/prescription
|
||||
name = "prescription optical material scanner"
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/graviton
|
||||
name = "graviton goggles"
|
||||
@@ -273,7 +273,7 @@ BLIND // can't see anything
|
||||
desc = "Made by Nerd. Co."
|
||||
icon_state = "glasses"
|
||||
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
body_parts_covered = 0
|
||||
|
||||
/obj/item/clothing/glasses/regular/scanners
|
||||
@@ -315,19 +315,17 @@ BLIND // can't see anything
|
||||
name = "rimless glasses"
|
||||
desc = "Sleek modern glasses with a single sculpted lens."
|
||||
icon_state = "glasses_rimless"
|
||||
prescription = 0
|
||||
|
||||
/obj/item/clothing/glasses/regular/thin
|
||||
name = "prescription thin-rimmed glasses"
|
||||
desc = "Glasses with frames are so last century."
|
||||
icon_state = "glasses_thin"
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/thin
|
||||
name = "thin-rimmed glasses"
|
||||
desc = "Glasses with frames are so last century."
|
||||
icon_state = "glasses_thin"
|
||||
prescription = 0
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/sunglasses
|
||||
@@ -451,7 +449,7 @@ BLIND // can't see anything
|
||||
|
||||
/obj/item/clothing/glasses/sunglasses/prescription
|
||||
name = "prescription sunglasses"
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/sunglasses/big
|
||||
desc = "Strangely ancient technology used to help provide rudimentary eye cover. Larger than average enhanced shielding blocks many flashes."
|
||||
@@ -517,7 +515,7 @@ BLIND // can't see anything
|
||||
/obj/item/clothing/glasses/sunglasses/sechud/aviator/prescription
|
||||
name = "prescription security HUD aviators"
|
||||
desc = "Modified aviator glasses that can be switch between HUD and flash protection modes. Comes with bonus prescription lenses."
|
||||
prescription = 6
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/sunglasses/medhud
|
||||
name = "\improper HUD sunglasses"
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
icon_override = 'icons/inventory/eyes/mob_vr.dmi'
|
||||
icon_state = "tajblind"
|
||||
item_state = "tajblind"
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
body_parts_covered = EYES
|
||||
glasses_layer_above = TRUE //ChompEDIT
|
||||
sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi')
|
||||
@@ -141,7 +141,7 @@
|
||||
icon_override = 'icons/inventory/eyes/mob_vr.dmi'
|
||||
icon_state = "tajblind_sec"
|
||||
item_state = "tajblind_sec"
|
||||
prescription = 1
|
||||
prescription = TRUE
|
||||
body_parts_covered = EYES
|
||||
sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi')
|
||||
|
||||
|
||||
@@ -13,9 +13,9 @@
|
||||
enables_planes = list(VIS_CH_STATUS,VIS_CH_HEALTH)
|
||||
|
||||
/obj/item/clothing/glasses/hud/health/prescription
|
||||
name = "Prescription Health Scanner HUD"
|
||||
desc = "A medical HUD integrated with a set of prescription glasses"
|
||||
prescription = 1
|
||||
desc = "A medical HUD integrated with a set of prescription glasses. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
icon_state = "healthhudpresc"
|
||||
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
|
||||
|
||||
@@ -28,9 +28,9 @@
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_WANTED,VIS_CH_IMPTRACK,VIS_CH_IMPLOYAL,VIS_CH_IMPCHEM)
|
||||
|
||||
/obj/item/clothing/glasses/hud/security/prescription
|
||||
name = "Prescription Security HUD"
|
||||
desc = "A security HUD integrated with a set of prescription glasses"
|
||||
prescription = 1
|
||||
desc = "A security HUD integrated with a set of prescription glasses. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
icon_state = "sechudpresc"
|
||||
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
|
||||
|
||||
@@ -51,8 +51,389 @@
|
||||
enables_planes = list(VIS_JANHUD)
|
||||
|
||||
/obj/item/clothing/glasses/hud/janitor/prescription
|
||||
name = "Prescription Contaminant Detector HUD"
|
||||
desc = "A heads-up display that scans the environment for contaminations."
|
||||
prescription = 1
|
||||
desc = "A heads-up display that scans the environment for contaminations. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
icon_state = "janhudpresc"
|
||||
item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses")
|
||||
|
||||
//Omnihuds
|
||||
/obj/item/clothing/glasses/omnihud
|
||||
name = "\improper AR glasses"
|
||||
desc = "The ARG-62 AR Glasses are capable of displaying information on individuals. \
|
||||
Commonly used to allow non-augmented crew to interact with virtual interfaces. \
|
||||
<br>They are also fitted with toggleable cosmetic electrochromic lenses. \
|
||||
The lenses will not protect against sudden bright flashes or welding."
|
||||
origin_tech = list(TECH_MAGNET = 3, TECH_BIO = 3)
|
||||
var/obj/item/clothing/glasses/hud/omni/hud = null
|
||||
var/mode = "civ"
|
||||
icon_state = "glasses"
|
||||
var/datum/tgui_module/tgarscreen
|
||||
var/tgarscreen_path
|
||||
var/flash_prot = 0 //0 for none, 1 for flash weapon protection, 2 for welder protection
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_HEALTH_VR,VIS_AUGMENTED)
|
||||
plane_slots = list(slot_glasses)
|
||||
var/ar_toggled = TRUE //Used for toggle_ar_planes() verb
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/Initialize(mapload)
|
||||
. = ..()
|
||||
if(tgarscreen_path)
|
||||
tgarscreen = new tgarscreen_path(src)
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/Destroy()
|
||||
QDEL_NULL(tgarscreen)
|
||||
. = ..()
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/dropped(mob/user)
|
||||
if(tgarscreen)
|
||||
SStgui.close_uis(src)
|
||||
..()
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/examine()
|
||||
. = ..()
|
||||
if(ar_toggled)
|
||||
. += "\n " + span_notice("The HUD indicator reads ON.")
|
||||
else
|
||||
. += "\n " + span_notice("The HUD indicator reads OFF.")
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/emp_act(var/severity)
|
||||
if(tgarscreen)
|
||||
SStgui.close_uis(src)
|
||||
var/disconnect_tgar = tgarscreen
|
||||
tgarscreen = null
|
||||
spawn(20 SECONDS)
|
||||
tgarscreen = disconnect_tgar
|
||||
|
||||
//extra fun for non-sci variants; a small chance flip the state to the dumb 3d glasses when EMP'd
|
||||
if(icon_state == "glasses" || icon_state == "sun")
|
||||
if(prob(10))
|
||||
icon_state = "3d"
|
||||
if(ishuman(loc))
|
||||
to_chat(loc, span_warning("The lenses of your [src.name] malfunction!"))
|
||||
..()
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/proc/flashed()
|
||||
if(flash_prot && ishuman(loc))
|
||||
to_chat(loc, span_warning("Your [src.name] darken to try and protect your eyes!"))
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/prescribe(var/mob/user)
|
||||
prescription = !prescription
|
||||
playsound(src,'sound/items/screwdriver.ogg', 50, 1)
|
||||
if(prescription)
|
||||
user.visible_message("[user] uploads new prescription data to the [src.name] and resets the lenses.")
|
||||
name = "[initial(name)] (pr)" //change the name *after* the text so the message above is accurate
|
||||
icon_state = "[initial(icon_state)]" //reset the icon state just to be safe
|
||||
else
|
||||
user.visible_message("[user] deletes the prescription data on the [src.name] and resets the lenses.")
|
||||
name = "[initial(name)]"
|
||||
icon_state = "[initial(icon_state)]"
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/attack_self(mob/user)
|
||||
if(!ishuman(user))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(!H.glasses || !(H.glasses == src))
|
||||
to_chat(user, span_warning("You must be wearing the [src] to see the display."))
|
||||
else
|
||||
if(!ar_interact(H))
|
||||
to_chat(user, span_warning("The [src] does not have any kind of special display."))
|
||||
|
||||
//cosmetic shading, doesn't enhance eye protection
|
||||
/obj/item/clothing/glasses/omnihud/verb/chromatize()
|
||||
set name = "Toggle AR Glasses Shading"
|
||||
set desc = "Toggle the cosmetic electrochromatic shading of your AR glasses."
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
if(!usr.canmove || usr.stat || usr.restrained())
|
||||
return
|
||||
if(icon_state == "3d")
|
||||
to_chat(usr, "You reset the electrochromic lenses of \the [src] back to normal.")
|
||||
if(prescription)
|
||||
name = "[initial(name)] (pr)"
|
||||
else
|
||||
name = "[initial(name)]"
|
||||
icon_state = "[initial(icon_state)]"
|
||||
else if(prescription)
|
||||
if(icon_state == "glasses")
|
||||
to_chat(usr, "You darken the electrochromic lenses of \the [src] to one-way transparency.")
|
||||
name = "[initial(name)] (shaded, pr)"
|
||||
flags_inv |= HIDEEYES
|
||||
icon_state = "sun"
|
||||
else if(icon_state == "sun")
|
||||
to_chat(usr, "You restore the electrochromic lenses of \the [src] to standard two-way transparency.")
|
||||
name = "[initial(name)] (pr)"
|
||||
flags_inv &= ~HIDEEYES
|
||||
icon_state = "glasses"
|
||||
else
|
||||
to_chat(usr, "The [src] don't seem to support this functionality.")
|
||||
else if(!prescription)
|
||||
if(icon_state == "glasses")
|
||||
to_chat(usr, "You darken the electrochromic lenses of \the [src] to one-way transparency.")
|
||||
name = "[initial(name)] (shaded)"
|
||||
flags_inv |= HIDEEYES
|
||||
icon_state = "sun"
|
||||
else if(icon_state == "sun")
|
||||
to_chat(usr, "You restore the electrochromic lenses of \the [src] to standard two-way transparency.")
|
||||
name = "[initial(name)]"
|
||||
flags_inv &= ~HIDEEYES
|
||||
icon_state = "glasses"
|
||||
else
|
||||
to_chat(usr, "The [src] don't seem to support this functionality.")
|
||||
update_clothing_icon()
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/verb/toggle_ar_planes()
|
||||
set name = "Toggle AR Heads-Up Display"
|
||||
set desc = "Toggles the job icon and other non-manually requested displays. Does not disable Crew monitor and similar."
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
|
||||
//We do not check if user can move or not, since this system is inspired to help see chat bubbles during scenes primarily.
|
||||
//Preventing turning off the HUD could get in the way of scene flow.
|
||||
if(ar_toggled)
|
||||
away_planes = enables_planes
|
||||
enables_planes = null
|
||||
to_chat(usr, span_notice("You disabled the Augmented Reality HUD of your [src.name]."))
|
||||
else
|
||||
enables_planes = away_planes
|
||||
away_planes = null
|
||||
to_chat(usr, span_notice("You enabled the Augmented Reality HUD of your [src.name]."))
|
||||
ar_toggled = !ar_toggled
|
||||
usr.update_mob_action_buttons()
|
||||
usr.recalculate_vis()
|
||||
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/proc/ar_interact(var/mob/living/carbon/human/user)
|
||||
return 0 //The base models do nothing.
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/visor
|
||||
name = "AR visor"
|
||||
desc = "The VZR-AR are a product based upon the classic AR Glasses, just more fashionable."
|
||||
icon_override = 'icons/inventory/eyes/mob_vr.dmi'
|
||||
icon = 'icons/inventory/eyes/mob_vr.dmi'
|
||||
icon_state = "visor_CIV"
|
||||
item_state = "visor_CIV"
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/med
|
||||
name = "\improper AR-M glasses"
|
||||
desc = "The ARG-62-M AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with medical records access and virus database integration. \
|
||||
They can also read data from active suit sensors using the crew monitoring system."
|
||||
mode = "med"
|
||||
actions_types = list(/datum/action/item_action/ar_console_crew)
|
||||
tgarscreen_path = /datum/tgui_module/crew_monitor/glasses
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_HEALTH_VR,VIS_CH_STATUS_R,VIS_CH_BACKUP,VIS_AUGMENTED)
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/med/ar_interact(var/mob/living/carbon/human/user)
|
||||
if(tgarscreen)
|
||||
tgarscreen.tgui_interact(user)
|
||||
return 1
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/sec
|
||||
name = "\improper AR-S glasses"
|
||||
desc = "The ARG-62-S AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with security records integration and flash protection. \
|
||||
They also have access to security alerts such as camera and motion sensor alarms."
|
||||
mode = "sec"
|
||||
flash_protection = FLASH_PROTECTION_MODERATE //weld protection is a little too widespread
|
||||
actions_types = list(/datum/action/item_action/ar_console_security_alerts)
|
||||
tgarscreen_path = /datum/tgui_module/alarm_monitor/security/glasses
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_HEALTH_VR,VIS_CH_WANTED,VIS_AUGMENTED)
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/sec/ar_interact(var/mob/living/carbon/human/user)
|
||||
if(tgarscreen)
|
||||
tgarscreen.tgui_interact(user)
|
||||
return 1
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/eng
|
||||
name = "\improper AR-E glasses"
|
||||
desc = "The ARG-62-E AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with advanced electrochromic lenses to protect your eyes during welding, \
|
||||
and can also display a list of atmospheric, fire, and power alarms."
|
||||
mode = "eng"
|
||||
flash_protection = FLASH_PROTECTION_MAJOR
|
||||
actions_types = list(/datum/action/item_action/ar_console_station_alerts)
|
||||
tgarscreen_path = /datum/tgui_module/alarm_monitor/engineering/glasses
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/eng/ar_interact(var/mob/living/carbon/human/user)
|
||||
if(tgarscreen)
|
||||
tgarscreen.tgui_interact(user)
|
||||
return 1
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/rnd
|
||||
name = "\improper AR-R glasses"
|
||||
desc = "The ARG-62-R AR Glasses are capable of displaying information on individuals. \
|
||||
They... don't seem to do anything particularly interesting? But hey, at least they look kinda science-y."
|
||||
mode = "sci"
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/eng/meson
|
||||
name = "meson scanner HUD"
|
||||
desc = "A headset equipped with a scanning lens and mounted retinal projector. It doesn't provide any eye protection, but it's less obtrusive than goggles."
|
||||
icon = 'icons/vore/custom_items_vr.dmi'
|
||||
icon_override = 'icons/vore/custom_clothes_vr.dmi'
|
||||
icon_state = "projector"
|
||||
off_state = "projector-off"
|
||||
body_parts_covered = 0
|
||||
toggleable = 1
|
||||
vision_flags = SEE_TURFS //but they can spot breaches. Due to the way HUDs work, they don't provide darkvision up-close the way mesons do.
|
||||
flash_protection = 0 //it's an open, single-eye retinal projector. there's no way it protects your eyes from flashes or welders.
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/eng/meson/attack_self(mob/user)
|
||||
if(!active)
|
||||
toggleprojector()
|
||||
..()
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/eng/meson/verb/toggleprojector()
|
||||
set name = "Toggle projector"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
if(!isliving(usr)) return
|
||||
if(usr.stat) return
|
||||
if(toggleable)
|
||||
if(active)
|
||||
active = 0
|
||||
icon_state = off_state
|
||||
item_state = "[initial(item_state)]-off"
|
||||
usr.update_inv_glasses()
|
||||
to_chat(usr, "You deactivate the retinal projector on the [src].")
|
||||
else
|
||||
active = 1
|
||||
icon_state = initial(icon_state)
|
||||
item_state = initial(item_state)
|
||||
usr.update_inv_glasses()
|
||||
to_chat(usr, "You activate the retinal projector on the [src].")
|
||||
usr.update_mob_action_buttons()
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/all
|
||||
name = "\improper AR-B glasses"
|
||||
desc = "The ARG-62-B AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with (almost) every feature the lesser models have. Now we're talkin'. \
|
||||
<br>Offers full protection against bright flashes/welders and full access to system alarm monitoring."
|
||||
mode = "best"
|
||||
flash_protection = FLASH_PROTECTION_MAJOR
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_HEALTH_VR,VIS_CH_STATUS_R,VIS_CH_BACKUP,VIS_CH_WANTED,VIS_AUGMENTED)
|
||||
actions_types = list(/datum/action/item_action/ar_console_all_alerts)
|
||||
tgarscreen_path = /datum/tgui_module/alarm_monitor/all/glasses
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/all/ar_interact(var/mob/living/carbon/human/user)
|
||||
if(tgarscreen)
|
||||
tgarscreen.tgui_interact(user)
|
||||
return 1
|
||||
|
||||
/obj/item/clothing/glasses/hud/security/eyepatch
|
||||
name = "Security Hudpatch"
|
||||
desc = "An eyepatch with built in scanners, that analyzes those in view and provides accurate data about their ID status and security records."
|
||||
icon_state = "eyepatch"
|
||||
item_state_slots = list(slot_r_hand_str = "blindfold", slot_l_hand_str = "blindfold")
|
||||
body_parts_covered = 0
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_WANTED,VIS_CH_IMPTRACK,VIS_CH_IMPLOYAL,VIS_CH_IMPCHEM)
|
||||
var/eye = null
|
||||
|
||||
/obj/item/clothing/glasses/hud/security/eyepatch/verb/switcheye()
|
||||
set name = "Switch Eyepatch"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
if(!isliving(usr)) return
|
||||
if(usr.stat) return
|
||||
|
||||
eye = !eye
|
||||
if(eye)
|
||||
icon_state = "[icon_state]_1"
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
update_clothing_icon()
|
||||
|
||||
/obj/item/clothing/glasses/hud/security/eyepatch2
|
||||
name = "Security Hudpatch MKII"
|
||||
desc = "An eyepatch with built in scanners, that analyzes those in view and provides accurate data about their ID status and security records. This updated model offers better ergonomics and updated sensors."
|
||||
icon = 'icons/inventory/eyes/item_vr.dmi'
|
||||
icon_override = 'icons/inventory/eyes/mob_vr.dmi'
|
||||
icon_state = "sec_eyepatch"
|
||||
item_state_slots = list(slot_r_hand_str = "blindfold", slot_l_hand_str = "blindfold")
|
||||
body_parts_covered = 0
|
||||
enables_planes = list(VIS_CH_ID,VIS_CH_WANTED,VIS_CH_IMPTRACK,VIS_CH_IMPLOYAL,VIS_CH_IMPCHEM)
|
||||
var/eye = null
|
||||
|
||||
/obj/item/clothing/glasses/hud/security/eyepatch2/verb/switcheye()
|
||||
set name = "Switch Eyepatch"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
if(!isliving(usr)) return
|
||||
if(usr.stat) return
|
||||
|
||||
eye = !eye
|
||||
if(eye)
|
||||
icon_state = "[icon_state]_1"
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
update_clothing_icon()
|
||||
|
||||
|
||||
/obj/item/clothing/glasses/hud/health/eyepatch
|
||||
name = "Medical Hudpatch"
|
||||
desc = "An eyepatch with built in scanners, that analyzes those in view and provides accurate data about their health status."
|
||||
icon_state = "eyepatch"
|
||||
item_state_slots = list(slot_r_hand_str = "blindfold", slot_l_hand_str = "blindfold")
|
||||
body_parts_covered = 0
|
||||
enables_planes = list(VIS_CH_STATUS,VIS_CH_HEALTH)
|
||||
var/eye = null
|
||||
|
||||
/obj/item/clothing/glasses/hud/health/eyepatch/verb/switcheye()
|
||||
set name = "Switch Eyepatch"
|
||||
set category = "Object"
|
||||
set src in usr
|
||||
if(!isliving(usr)) return
|
||||
if(usr.stat) return
|
||||
|
||||
eye = !eye
|
||||
if(eye)
|
||||
icon_state = "[icon_state]_1"
|
||||
else
|
||||
icon_state = initial(icon_state)
|
||||
update_clothing_icon()
|
||||
|
||||
//Rx Variants
|
||||
/obj/item/clothing/glasses/omnihud/med/prescription
|
||||
desc = "The ARG-62-M AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with medical records access and virus database integration. \
|
||||
They can also read data from active suit sensors using the crew monitoring system. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/sec/prescription
|
||||
desc = "The ARG-62-S AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with security records integration and flash protection. \
|
||||
They also have access to security alerts such as camera and motion sensor alarms. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/eng/prescription
|
||||
desc = "The ARG-62-E AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with advanced electrochromic lenses to protect your eyes during welding, \
|
||||
and can also display a list of atmospheric, fire, and power alarms. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/rnd/prescription
|
||||
desc = "The ARG-62-R AR Glasses are capable of displaying information on individuals. \
|
||||
They... don't seem to do anything particularly interesting? But hey, at least they look kinda science-y. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/all/prescription
|
||||
desc = "The ARG-62-B AR Glasses are capable of displaying information on individuals. \
|
||||
These have been upgraded with (almost) every feature the lesser models have. Now we're talkin'. \
|
||||
<br>Offers full protection against bright flashes/welders and full access to system alarm monitoring. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/omnihud/prescription
|
||||
desc = "The ARG-62 AR Glasses are capable of displaying information on individuals. \
|
||||
Commonly used to allow non-augmented crew to interact with virtual interfaces. \
|
||||
<br>They are also fitted with toggleable cosmetic electrochromic lenses. \
|
||||
The lenses will not protect against sudden bright flashes or welding. \
|
||||
These have been equipped with prescription lenses."
|
||||
prescription = TRUE
|
||||
|
||||
@@ -2361,7 +2361,6 @@
|
||||
#include "code\modules\clothing\glasses\glasses.dm"
|
||||
#include "code\modules\clothing\glasses\glasses_vr.dm"
|
||||
#include "code\modules\clothing\glasses\hud.dm"
|
||||
#include "code\modules\clothing\glasses\hud_vr.dm"
|
||||
#include "code\modules\clothing\gloves\antagonist.dm"
|
||||
#include "code\modules\clothing\gloves\arm_guards.dm"
|
||||
#include "code\modules\clothing\gloves\arm_guards_vr.dm"
|
||||
|
||||
Reference in New Issue
Block a user