/obj/item/organ/eyes name = "eyes" icon_state = "eyeballs" desc = "I see you!" zone = "eyes" slot = "eye_sight" gender = PLURAL var/sight_flags = 0 var/see_in_dark = 2 var/tint = 0 var/eye_color = "" //set to a hex code to override a mob's eye color var/old_eye_color = "fff" var/flash_protect = 0 var/see_invisible = SEE_INVISIBLE_LIVING var/lighting_alpha /obj/item/organ/eyes/Insert(mob/living/carbon/M, special = 0) ..() if(ishuman(owner)) var/mob/living/carbon/human/HMN = owner old_eye_color = HMN.eye_color if(eye_color) HMN.eye_color = eye_color HMN.regenerate_icons() else eye_color = HMN.eye_color M.update_tint() owner.update_sight() /obj/item/organ/eyes/Remove(mob/living/carbon/M, special = 0) ..() if(ishuman(M) && eye_color) var/mob/living/carbon/human/HMN = M HMN.eye_color = old_eye_color HMN.regenerate_icons() M.update_tint() M.update_sight() /obj/item/organ/eyes/night_vision name = "shadow eyes" desc = "A spooky set of eyes that can see in the dark." see_in_dark = 8 lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE actions_types = list(/datum/action/item_action/organ_action/use) var/night_vision = TRUE /obj/item/organ/eyes/night_vision/ui_action_click() switch(lighting_alpha) if (LIGHTING_PLANE_ALPHA_VISIBLE) lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE if (LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE) lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE if (LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE) lighting_alpha = LIGHTING_PLANE_ALPHA_INVISIBLE else lighting_alpha = LIGHTING_PLANE_ALPHA_VISIBLE owner.update_sight() /obj/item/organ/eyes/night_vision/alien name = "alien eyes" desc = "It turned out they had them after all!" see_in_dark = 8 lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE sight_flags = SEE_MOBS /obj/item/organ/eyes/night_vision/zombie name = "undead eyes" desc = "Somewhat counterintuitively, these half rotten eyes actually have superior vision to those of a living human." ///Robotic /obj/item/organ/eyes/robotic name = "robotic eyes" icon_state = "cybernetic_eyeballs" desc = "Your vision is augmented." status = ORGAN_ROBOTIC /obj/item/organ/eyes/robotic/emp_act(severity) if(!owner) return if(severity > 1) if(prob(10 * severity)) return to_chat(owner, "Static obfuscates your vision!") owner.flash_act(visual = 1) /obj/item/organ/eyes/robotic/xray name = "X-ray eyes" desc = "These cybernetic eyes will give you X-ray vision. Blinking is futile." eye_color = "000" see_in_dark = 8 sight_flags = SEE_MOBS | SEE_OBJS | SEE_TURFS /obj/item/organ/eyes/robotic/thermals name = "Thermals eyes" desc = "These cybernetic eye implants will give you Thermal vision. Vertical slit pupil included." eye_color = "FC0" origin_tech = "materials=5;programming=4;biotech=4;magnets=4;syndicate=1" sight_flags = SEE_MOBS lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_VISIBLE flash_protect = -1 see_in_dark = 8 /obj/item/organ/eyes/robotic/flashlight name = "flashlight eyes" desc = "It's two flashlights rigged together with some wire. Why would you put these in someones head?" eye_color ="fee5a3" icon = 'icons/obj/lighting.dmi' icon_state = "flashlight_eyes" flash_protect = 2 tint = INFINITY /obj/item/organ/eyes/robotic/flashlight/emp_act(severity) return /obj/item/organ/eyes/robotic/flashlight/Insert(var/mob/living/carbon/M, var/special = 0) ..() M.set_light(M.light_range + 15, M.light_power + 1) /obj/item/organ/eyes/robotic/flashlight/Remove(var/mob/living/carbon/M, var/special = 0) M.set_light(M.light_range -15, M.light_power - 1) ..() // Welding shield implant /obj/item/organ/eyes/robotic/shield name = "shielded robotic eyes" desc = "These reactive micro-shields will protect you from welders and flashes without obscuring your vision." origin_tech = "materials=4;biotech=3;engineering=4;plasmatech=3" flash_protect = 2 /obj/item/organ/eyes/robotic/shield/emp_act(severity) return