diff --git a/code/ZAS/Phoron.dm b/code/ZAS/Phoron.dm index 4a4c29dcfb..acee6a8b65 100644 --- a/code/ZAS/Phoron.dm +++ b/code/ZAS/Phoron.dm @@ -103,19 +103,23 @@ obj/var/phoronproof = 0 //Burn eyes if exposed. if(vsc.plc.EYE_BURNS && (species.breath_type != "phoron")) - if(!head) - if(!wear_mask) - burn_eyes() - else - if(!(wear_mask.body_parts_covered & EYES)) - burn_eyes() - else - if(!(head.body_parts_covered & EYES)) - if(!wear_mask) - burn_eyes() - else - if(!(wear_mask.body_parts_covered & EYES)) - burn_eyes() + var/burn_eyes = 1 + + //Check for protective glasses + if(glasses && (glasses.body_parts_covered & EYES) && (glasses.item_flags & AIRTIGHT)) + burn_eyes = 0 + + //Check for protective maskwear + if(burn_eyes && wear_mask && (wear_mask.body_parts_covered & EYES) && (wear_mask.item_flags & AIRTIGHT)) + burn_eyes = 0 + + //Check for protective helmets + if(burn_eyes && head && (head.body_parts_covered & EYES) && (head.item_flags & AIRTIGHT)) + burn_eyes = 0 + + //If we still need to, burn their eyes + if(burn_eyes) + burn_eyes() //Genetic Corruption if(vsc.plc.GENETIC_CORRUPTION && (species.breath_type != "phoron")) diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index 4fb748f73a..65d6697df4 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -89,11 +89,20 @@ BLIND // can't see anything item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses") toggleable = 1 action_button_name = "Toggle Goggles" + item_flags = AIRTIGHT /obj/item/clothing/glasses/science/New() ..() overlay = global_hud.science +/obj/item/clothing/glasses/goggles + name = "Goggles" + desc = "Just some plain old goggles." + icon_state = "plaingoggles" + item_state_slots = list(slot_r_hand_str = "glasses", slot_l_hand_str = "glasses") + item_flags = AIRTIGHT + body_parts_covered = EYES + /obj/item/clothing/glasses/night name = "Night Vision Goggles" desc = "You can totally see in the dark now!" @@ -200,6 +209,7 @@ BLIND // can't see anything item_state_slots = list(slot_r_hand_str = "welding-g", slot_l_hand_str = "welding-g") action_button_name = "Flip Welding Goggles" matter = list(DEFAULT_WALL_MATERIAL = 1500, "glass" = 1000) + item_flags = AIRTIGHT var/up = 0 /obj/item/clothing/glasses/welding/attack_self() diff --git a/icons/mob/eyes.dmi b/icons/mob/eyes.dmi index 1f4bd4a68f..763ce78990 100644 Binary files a/icons/mob/eyes.dmi and b/icons/mob/eyes.dmi differ diff --git a/icons/mob/species/seromi/eyes.dmi b/icons/mob/species/seromi/eyes.dmi index 17a41de747..94d8f6d000 100644 Binary files a/icons/mob/species/seromi/eyes.dmi and b/icons/mob/species/seromi/eyes.dmi differ diff --git a/icons/mob/species/vox/eyes.dmi b/icons/mob/species/vox/eyes.dmi index 6e15b3e58c..c81f6217a2 100644 Binary files a/icons/mob/species/vox/eyes.dmi and b/icons/mob/species/vox/eyes.dmi differ diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index 0e86367473..920880e155 100644 Binary files a/icons/obj/clothing/glasses.dmi and b/icons/obj/clothing/glasses.dmi differ