diff --git a/code/__DEFINES/clothing.dm b/code/__DEFINES/clothing.dm
index 6e9734c1fa5..672a58facdd 100644
--- a/code/__DEFINES/clothing.dm
+++ b/code/__DEFINES/clothing.dm
@@ -85,4 +85,12 @@
#define NO_FEMALE_UNIFORM 0
#define FEMALE_UNIFORM_FULL 1
-#define FEMALE_UNIFORM_TOP 2
\ No newline at end of file
+#define FEMALE_UNIFORM_TOP 2
+
+
+//flags for covering body parts
+#define GLASSESCOVERSEYES 1
+#define MASKCOVERSEYES 2 // get rid of some of the other retardation in these flags
+#define HEADCOVERSEYES 4 // feel free to realloc these numbers for other purposes
+#define MASKCOVERSMOUTH 8 // on other items, these are just for mask/head
+#define HEADCOVERSMOUTH 16
\ No newline at end of file
diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm
index 3d704c12cf0..2996b1af708 100644
--- a/code/__DEFINES/flags.dm
+++ b/code/__DEFINES/flags.dm
@@ -19,12 +19,6 @@
#define ON_BORDER 512 // item has priority to check when entering or leaving
-#define GLASSESCOVERSEYES 1024
-#define MASKCOVERSEYES 1024 // get rid of some of the other retardation in these flags
-#define HEADCOVERSEYES 1024 // feel free to realloc these numbers for other purposes
-#define MASKCOVERSMOUTH 2048 // on other items, these are just for mask/head
-#define HEADCOVERSMOUTH 2048
-
#define HEADBANGPROTECT 4096
#define EARBANGPROTECT 1024
diff --git a/code/game/gamemodes/changeling/powers/mutations.dm b/code/game/gamemodes/changeling/powers/mutations.dm
index 40884bda963..1ff47bb9dda 100644
--- a/code/game/gamemodes/changeling/powers/mutations.dm
+++ b/code/game/gamemodes/changeling/powers/mutations.dm
@@ -271,8 +271,9 @@
name = "flesh mass"
icon_state = "lingspacehelmet"
desc = "A covering of pressure and temperature-resistant organic tissue with a glass-like chitin front."
- flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | NODROP //Again, no THICKMATERIAL.
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE | NODROP //Again, no THICKMATERIAL.
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/head/helmet/space/changeling/dropped()
qdel(src)
@@ -320,9 +321,10 @@
name = "chitinous mass"
desc = "A tough, hard covering of black chitin with transparent chitin in front."
icon_state = "lingarmorhelmet"
- flags = HEADCOVERSEYES | BLOCKHAIR | NODROP
+ flags = BLOCKHAIR | NODROP
armor = list(melee = 40, bullet = 15, laser = 30,energy = 10, bomb = 5, bio = 2, rad = 0)
flags_inv = HIDEEARS
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/helmet/changeling/dropped()
qdel(src)
diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm
index 90ebb2d9f93..bfdacd24ad3 100644
--- a/code/game/gamemodes/cult/cult_items.dm
+++ b/code/game/gamemodes/cult/cult_items.dm
@@ -34,7 +34,7 @@
icon_state = "culthood"
desc = "A hood worn by the followers of Nar-Sie."
flags_inv = HIDEFACE
- flags = HEADCOVERSEYES
+ flags_cover = HEADCOVERSEYES
armor = list(melee = 30, bullet = 10, laser = 5,energy = 5, bomb = 0, bio = 0, rad = 0)
cold_protection = HEAD
min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT
@@ -70,8 +70,9 @@
item_state = "magus"
desc = "A helm worn by the followers of Nar-Sie."
flags_inv = HIDEFACE
- flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
+ flags = BLOCKHAIR
armor = list(melee = 30, bullet = 30, laser = 30,energy = 20, bomb = 0, bio = 0, rad = 0)
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/suit/magusred
name = "magus robes"
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index 0468739411b..a782f6fbb51 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -77,6 +77,9 @@
/obj/machinery/r_n_d/experimentor,
/obj/machinery/autolathe
)
+
+ var/flags_cover = 0 //for flags such as GLASSESCOVERSEYES
+
/obj/item/proc/check_allowed_items(atom/target, not_inside)
if((src in target) || ((!istype(target.loc, /turf)) && (!istype(target, /turf)) && (not_inside)) || is_type_in_list(target, can_be_placed_into))
return 0
@@ -328,16 +331,16 @@
if(ishuman(M))
is_human_victim = 1
var/mob/living/carbon/human/H = M
- if((H.head && H.head.flags & HEADCOVERSEYES) || \
- (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || \
- (H.glasses && H.glasses.flags & GLASSESCOVERSEYES))
+ if((H.head && H.head.flags_cover & HEADCOVERSEYES) || \
+ (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || \
+ (H.glasses && H.glasses.flags_cover & GLASSESCOVERSEYES))
// you can't stab someone in the eyes wearing a mask!
user << "You're going to need to remove that mask/helmet/glasses first!"
return
if(ismonkey(M))
var/mob/living/carbon/monkey/Mo = M
- if(Mo.wear_mask && Mo.wear_mask.flags & MASKCOVERSEYES)
+ if(Mo.wear_mask && Mo.wear_mask.flags_cover & MASKCOVERSEYES)
// you can't stab someone in the eyes wearing a mask!
user << "You're going to need to remove that mask/helmet/glasses first!"
return
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index 5e8555d13ad..3d6f1a022b0 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -57,8 +57,8 @@
return
var/mob/living/carbon/human/H = M //mob has protective eyewear
- if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES)))
- user << "You're going to need to remove that [(H.head && H.head.flags & HEADCOVERSEYES) ? "helmet" : (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) ? "mask": "glasses"] first."
+ if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags_cover & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || (H.glasses && H.glasses.flags_cover & GLASSESCOVERSEYES)))
+ user << "You're going to need to remove that [(H.head && H.head.flags_cover & HEADCOVERSEYES) ? "helmet" : (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) ? "mask": "glasses"] first."
return
if(M == user) //they're using it on themselves
diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm
index 049e675e104..c655ee34d45 100644
--- a/code/modules/clothing/clothing.dm
+++ b/code/modules/clothing/clothing.dm
@@ -39,7 +39,7 @@
name = "glasses"
icon = 'icons/obj/clothing/glasses.dmi'
w_class = 2.0
- flags = GLASSESCOVERSEYES
+ flags_cover = GLASSESCOVERSEYES
slot_flags = SLOT_EYES
var/vision_flags = 0
var/darkness_view = 2//Base human is 2
@@ -167,7 +167,7 @@ BLIND // can't see anything
name = "space helmet"
icon_state = "spaceold"
desc = "A special helmet with solar UV shielding to protect your eyes from harmful rays."
- flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | THICKMATERIAL
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
item_state = "spaceold"
permeability_coefficient = 0.01
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
@@ -179,6 +179,7 @@ BLIND // can't see anything
flash_protect = 2
strip_delay = 50
put_on_delay = 50
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/suit/space
name = "space suit"
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index ef549cf4acb..8f5cc495877 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -2,7 +2,7 @@
name = "helmet"
desc = "Standard Security gear. Protects the head from impacts."
icon_state = "helmet"
- flags = HEADCOVERSEYES | HEADBANGPROTECT
+ flags = HEADBANGPROTECT
item_state = "helmet"
armor = list(melee = 25, bullet = 15, laser = 25,energy = 10, bomb = 25, bio = 0, rad = 0)
flags_inv = HIDEEARS|HIDEEYES
@@ -14,6 +14,7 @@
var/obj/machinery/camera/portable/helmetCam = null
var/spawnWithHelmetCam = 0
var/canAttachCam = 0
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/helmet/New()
@@ -49,7 +50,7 @@
toggle_message = "You pull the visor down on"
alt_toggle_message = "You push the visor up on"
can_toggle = 1
- flags = HEADCOVERSEYES|HEADCOVERSMOUTH|HEADBANGPROTECT
+ flags = HEADBANGPROTECT
armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0)
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
strip_delay = 80
@@ -57,6 +58,7 @@
visor_flags = HEADCOVERSEYES|HEADCOVERSMOUTH
visor_flags_inv = HIDEMASK|HIDEEYES|HIDEFACE
toggle_cooldown = 0
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/head/helmet/attack_self()
if(usr.canmove && !usr.stat && !usr.restrained() && can_toggle)
@@ -126,7 +128,7 @@
/obj/item/clothing/head/helmet/roman
name = "roman helmet"
desc = "An ancient helmet made of bronze and leather."
- flags = HEADCOVERSEYES
+ flags_cover = HEADCOVERSEYES
armor = list(melee = 25, bullet = 0, laser = 25, energy = 10, bomb = 10, bio = 0, rad = 0)
icon_state = "roman"
item_state = "roman"
@@ -142,15 +144,16 @@
name = "gladiator helmet"
desc = "Ave, Imperator, morituri te salutant."
icon_state = "gladiator"
- flags = HEADCOVERSEYES|BLOCKHAIR
+ flags = BLOCKHAIR
item_state = "gladiator"
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/helmet/redtaghelm
name = "red laser tag helmet"
desc = "They have chosen their own end."
icon_state = "redtaghelm"
- flags = HEADCOVERSEYES
+ flags_cover = HEADCOVERSEYES
item_state = "redtaghelm"
armor = list(melee = 15, bullet = 10, laser = 20,energy = 10, bomb = 20, bio = 0, rad = 0)
// Offer about the same protection as a hardhat.
@@ -160,7 +163,7 @@
name = "blue laser tag helmet"
desc = "They'll need more men."
icon_state = "bluetaghelm"
- flags = HEADCOVERSEYES
+ flags_cover = HEADCOVERSEYES
item_state = "bluetaghelm"
armor = list(melee = 15, bullet = 10, laser = 20,energy = 10, bomb = 20, bio = 0, rad = 0)
// Offer about the same protection as a hardhat.
diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm
index d19c7b7397c..7d2d81b6fa9 100644
--- a/code/modules/clothing/head/jobs.dm
+++ b/code/modules/clothing/head/jobs.dm
@@ -47,7 +47,8 @@
name = "nun hood"
desc = "Maximum piety in this star system."
icon_state = "nun_hood"
- flags = HEADCOVERSEYES|BLOCKHAIR
+ flags = BLOCKHAIR
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/det_hat
name = "detective's fedora"
diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm
index 7130556f958..e7fc2072172 100644
--- a/code/modules/clothing/head/misc.dm
+++ b/code/modules/clothing/head/misc.dm
@@ -41,7 +41,8 @@
name = "hastur's hood"
desc = "It's unspeakably stylish."
icon_state = "hasturhood"
- flags = HEADCOVERSEYES|BLOCKHAIR
+ flags = BLOCKHAIR
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/nursehat
name = "nurse's hat"
@@ -68,7 +69,7 @@
desc = "A helmet made out of a box."
icon_state = "cardborg_h"
item_state = "cardborg_h"
- flags = HEADCOVERSEYES
+ flags_cover = HEADCOVERSEYES
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
/obj/item/clothing/head/justice
@@ -76,7 +77,8 @@
desc = "Fight for what's righteous!"
icon_state = "justicered"
item_state = "justicered"
- flags = HEADCOVERSEYES|BLOCKHAIR
+ flags = BLOCKHAIR
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/head/justice/blue
icon_state = "justiceblue"
diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm
index 6eee2eaf8a0..fa58e31116a 100644
--- a/code/modules/clothing/head/misc_special.dm
+++ b/code/modules/clothing/head/misc_special.dm
@@ -15,7 +15,7 @@
name = "welding helmet"
desc = "A head-mounted face cover designed to protect the wearer completely from space-arc eye."
icon_state = "welding"
- flags = HEADCOVERSEYES | HEADCOVERSMOUTH
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
item_state = "welding"
m_amt = 1750
g_amt = 400
@@ -47,7 +47,7 @@
name = "cake-hat"
desc = "It's tasty looking!"
icon_state = "cake0"
- flags = HEADCOVERSEYES
+ flags_cover = HEADCOVERSEYES
var/onfire = 0.0
var/status = 0
var/fire_resist = T0C+1300 //this is the max temp it can stand before you start to cook. although it might not burn away, you take damage
@@ -116,11 +116,12 @@
icon_state = "hardhat0_pumpkin"
item_state = "hardhat0_pumpkin"
item_color = "pumpkin"
- flags = HEADCOVERSEYES | BLOCKHAIR
+ flags = BLOCKHAIR
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
action_button_name = "Toggle Pumpkin Light"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
brightness_on = 2 //luminosity when on
+ flags_cover = HEADCOVERSEYES
/*
* Kitty ears
diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm
index 4735d9325b9..a3b54c55779 100644
--- a/code/modules/clothing/masks/breath.dm
+++ b/code/modules/clothing/masks/breath.dm
@@ -4,13 +4,14 @@
icon_state = "breath"
item_state = "m_mask"
body_parts_covered = 0
- flags = MASKCOVERSMOUTH | MASKINTERNALS
+ flags = MASKINTERNALS
visor_flags = MASKCOVERSMOUTH | MASKINTERNALS
w_class = 2
gas_transfer_coefficient = 0.10
permeability_coefficient = 0.50
action_button_name = "Adjust Breath Mask"
ignore_maskadjust = 0
+ flags_cover = MASKCOVERSMOUTH
/obj/item/clothing/mask/breath/attack_self(var/mob/user)
adjustmask(user)
diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm
index bf59b9d3278..f1d415357bf 100644
--- a/code/modules/clothing/masks/gasmask.dm
+++ b/code/modules/clothing/masks/gasmask.dm
@@ -2,12 +2,13 @@
name = "gas mask"
desc = "A face-covering mask that can be connected to an air supply. While good for concealing your identity, it isn't good for blocking gas flow." //More accurate
icon_state = "gas_alt"
- flags = MASKCOVERSMOUTH | MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
w_class = 3.0
item_state = "gas_alt"
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.01
+ flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH
// **** Welding gas mask ****
@@ -47,10 +48,11 @@
icon_state = "sechailer"
var/aggressiveness = 2
ignore_maskadjust = 0
- flags = MASKCOVERSMOUTH | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
flags_inv = HIDEFACE
visor_flags = MASKCOVERSMOUTH | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
visor_flags_inv = HIDEFACE
+ flags_cover = MASKCOVERSMOUTH
/obj/item/clothing/mask/gas/sechailer/swat
name = "\improper SWAT mask"
@@ -222,9 +224,10 @@
/obj/item/clothing/mask/gas/clown_hat
name = "clown wig and mask"
desc = "A true prankster's facial attire. A clown is incomplete without his wig and mask."
- flags = MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
icon_state = "clown"
item_state = "clown_hat"
+ flags_cover = MASKCOVERSEYES
/obj/item/clothing/mask/gas/clown_hat/attack_self(mob/user)
@@ -245,30 +248,34 @@
/obj/item/clothing/mask/gas/sexyclown
name = "sexy-clown wig and mask"
desc = "A feminine clown mask for the dabbling crossdressers or female entertainers."
- flags = MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
icon_state = "sexyclown"
item_state = "sexyclown"
+ flags_cover = MASKCOVERSEYES
/obj/item/clothing/mask/gas/mime
name = "mime mask"
desc = "The traditional mime's mask. It has an eerie facial posture."
- flags = MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
icon_state = "mime"
item_state = "mime"
+ flags_cover = MASKCOVERSEYES
/obj/item/clothing/mask/gas/monkeymask
name = "monkey mask"
desc = "A mask used when acting as a monkey."
- flags = MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
icon_state = "monkeymask"
item_state = "monkeymask"
+ flags_cover = MASKCOVERSEYES
/obj/item/clothing/mask/gas/sexymime
name = "sexy mime mask"
desc = "A traditional female mime's mask."
- flags = MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
icon_state = "sexymime"
item_state = "sexymime"
+ flags_cover = MASKCOVERSEYES
/obj/item/clothing/mask/gas/death_commando
name = "Death Commando Mask"
@@ -283,5 +290,6 @@
/obj/item/clothing/mask/gas/owl_mask
name = "owl mask"
desc = "Twoooo!"
- flags = MASKCOVERSEYES | BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
- icon_state = "owl"
\ No newline at end of file
+ flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
+ icon_state = "owl"
+ flags_cover = MASKCOVERSEYES
\ No newline at end of file
diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm
index dc9c31861c7..46e72e75908 100644
--- a/code/modules/clothing/masks/miscellaneous.dm
+++ b/code/modules/clothing/masks/miscellaneous.dm
@@ -3,7 +3,7 @@
desc = "To stop that awful noise."
icon_state = "muzzle"
item_state = "blindfold"
- flags = MASKCOVERSMOUTH
+ flags_cover = MASKCOVERSMOUTH
w_class = 2
gas_transfer_coefficient = 0.90
put_on_delay = 20
@@ -22,7 +22,7 @@
icon_state = "sterile"
item_state = "sterile"
w_class = 1
- flags = MASKCOVERSMOUTH
+ flags_cover = MASKCOVERSMOUTH
flags_inv = HIDEFACE
visor_flags = MASKCOVERSMOUTH
visor_flags_inv = HIDEFACE
@@ -111,7 +111,7 @@
name = "botany bandana"
desc = "A fine bandana with nanotech lining and a hydroponics pattern."
w_class = 1
- flags = MASKCOVERSMOUTH
+ flags_cover = MASKCOVERSMOUTH
flags_inv = HIDEFACE
visor_flags = MASKCOVERSMOUTH
visor_flags_inv = HIDEFACE
diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm
index 352482476a1..06bdfc347d6 100644
--- a/code/modules/clothing/spacesuits/hardsuit.dm
+++ b/code/modules/clothing/spacesuits/hardsuit.dm
@@ -12,7 +12,8 @@
var/on = 0
item_color = "engineering" //Determines used sprites: hardsuit[on]-[color] and hardsuit[on]-[color]2 (lying down sprite)
action_button_name = "Toggle Helmet Light"
- flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/head/helmet/space/hardsuit/attack_self(mob/user)
@@ -162,7 +163,8 @@
on = 0
var/obj/item/clothing/suit/space/hardsuit/syndi/linkedsuit = null
action_button_name = "Toggle Helmet Mode"
- flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/head/helmet/space/hardsuit/syndi/update_icon()
icon_state = "hardsuit[on]-[item_color]"
@@ -182,7 +184,8 @@
name = initial(name)
desc = initial(desc)
user.AddLuminosity(brightness_on)
- flags |= HEADCOVERSEYES | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE
+ flags |= STOPSPRESSUREDMAGE
+ flags_cover |= HEADCOVERSEYES | HEADCOVERSMOUTH
flags_inv |= HIDEMASK|HIDEEYES|HIDEFACE
cold_protection |= HEAD
else
@@ -190,7 +193,8 @@
name += " (combat)"
desc = alt_desc
user.AddLuminosity(-brightness_on)
- flags &= ~(HEADCOVERSEYES| HEADCOVERSMOUTH | STOPSPRESSUREDMAGE)
+ flags &= ~(STOPSPRESSUREDMAGE)
+ flags_cover &= ~(HEADCOVERSEYES | HEADCOVERSMOUTH)
flags_inv &= ~(HIDEMASK|HIDEEYES|HIDEFACE)
cold_protection &= ~HEAD
update_icon()
diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm
index 9fedcc0e3a8..2f7f85299e6 100644
--- a/code/modules/clothing/spacesuits/miscellaneous.dm
+++ b/code/modules/clothing/spacesuits/miscellaneous.dm
@@ -96,7 +96,8 @@
name = "Santa's hat"
desc = "Ho ho ho. Merrry X-mas!"
icon_state = "santahat"
- flags = HEADCOVERSEYES | BLOCKHAIR | STOPSPRESSUREDMAGE
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/suit/space/santa
name = "Santa's suit"
@@ -115,9 +116,10 @@
icon_state = "pirate"
item_state = "pirate"
armor = list(melee = 30, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
- flags = HEADCOVERSEYES | BLOCKHAIR | STOPSPRESSUREDMAGE
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE
strip_delay = 40
put_on_delay = 20
+ flags_cover = HEADCOVERSEYES
/obj/item/clothing/suit/space/pirate
name = "pirate coat"
@@ -141,8 +143,9 @@
item_color = "ert_commander"
armor = list(melee = 65, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 100, rad = 100)
strip_delay = 130
- flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
brightness_on = 7
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/suit/space/hardsuit/ert
name = "emergency response team suit"
diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm
index b3e05df12ce..51ff7384a99 100644
--- a/code/modules/clothing/spacesuits/plasmamen.dm
+++ b/code/modules/clothing/spacesuits/plasmamen.dm
@@ -39,9 +39,10 @@
icon_state = "plasmaman_helmet0-plasma"
item_color = "plasma" //needed for the helmet lighting
item_state = "plasmaman_helmet0"
- flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE | THICKMATERIAL
+ flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
//Removed the NODROP from /helmet/space/hardsuit.
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
//Removed the HIDEFACE from /helmet/space/hardsuit
basestate = "plasmaman_helmet"
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm
index 7d75bef57d4..1cf684ab76d 100644
--- a/code/modules/clothing/suits/bio.dm
+++ b/code/modules/clothing/suits/bio.dm
@@ -4,10 +4,11 @@
icon_state = "bio"
desc = "A hood that protects the head and face from biological comtaminants."
permeability_coefficient = 0.01
- flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR|THICKMATERIAL
+ flags = BLOCKHAIR|THICKMATERIAL
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20)
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
unacidable = 1
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/suit/bio_suit
name = "bio suit"
diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm
index c32db545664..a4d69048234 100644
--- a/code/modules/clothing/suits/utility.dm
+++ b/code/modules/clothing/suits/utility.dm
@@ -55,7 +55,7 @@
name = "bomb hood"
desc = "Use in case of bomb."
icon_state = "bombsuit"
- flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR|THICKMATERIAL
+ flags = BLOCKHAIR|THICKMATERIAL
armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0)
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
cold_protection = HEAD
@@ -64,6 +64,7 @@
max_heat_protection_temperature = HELMET_MAX_TEMP_PROTECT
strip_delay = 70
put_on_delay = 70
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/suit/bomb_suit
@@ -105,10 +106,11 @@
name = "radiation hood"
icon_state = "rad"
desc = "A hood with radiation protective properties. The label reads, 'Made with lead. Please do not consume insulation.'"
- flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR|THICKMATERIAL
+ flags = BLOCKHAIR|THICKMATERIAL
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100)
strip_delay = 60
put_on_delay = 60
+ flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
/obj/item/clothing/suit/radiation
diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm
index 7ff98ab7531..c053d20c090 100644
--- a/code/modules/mob/living/carbon/alien/special/facehugger.dm
+++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm
@@ -15,9 +15,10 @@ var/const/MAX_ACTIVE_TIME = 400
icon_state = "facehugger"
item_state = "facehugger"
w_class = 1 //note: can be picked up by aliens unlike most other items of w_class below 4
- flags = MASKCOVERSMOUTH | MASKCOVERSEYES | MASKINTERNALS
+ flags = MASKINTERNALS
throw_range = 5
tint = 3
+ flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH
var/stat = CONSCIOUS //UNCONSCIOUS is the idle state in this case
diff --git a/code/modules/mob/living/carbon/brain/brain_item.dm b/code/modules/mob/living/carbon/brain/brain_item.dm
index ed151132066..7a233cea9c2 100644
--- a/code/modules/mob/living/carbon/brain/brain_item.dm
+++ b/code/modules/mob/living/carbon/brain/brain_item.dm
@@ -51,7 +51,7 @@
return ..()
var/mob/living/carbon/human/H = M
- if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES)))
+ if(istype(M, /mob/living/carbon/human) && ((H.head && H.head.flags_cover & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || (H.glasses && H.glasses.flags & GLASSESCOVERSEYES)))
user << "You're going to need to remove their head cover first!"
return
diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm
index 1d18e88bda1..937d13e4ec4 100644
--- a/code/modules/mob/living/carbon/carbon.dm
+++ b/code/modules/mob/living/carbon/carbon.dm
@@ -495,7 +495,7 @@ var/const/GALOSHES_DONT_HELP = 8
src << "You fail to break [I]!"
/mob/living/carbon/proc/is_mouth_covered(head_only = 0, mask_only = 0)
- if( (!mask_only && head && (head.flags & HEADCOVERSMOUTH)) || (!head_only && wear_mask && (wear_mask.flags & MASKCOVERSMOUTH)) )
+ if( (!mask_only && head && (head.flags_cover & HEADCOVERSMOUTH)) || (!head_only && wear_mask && (wear_mask.flags_cover & MASKCOVERSMOUTH)) )
return 1
/mob/living/carbon/get_standard_pixel_y_offset(lying = 0)
diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm
index 7c0773877c1..b6cb6f5181b 100644
--- a/code/modules/mob/living/carbon/human/human_damage.dm
+++ b/code/modules/mob/living/carbon/human/human_damage.dm
@@ -50,7 +50,7 @@
var/loose = 40
if(stat || (status_flags & FAKEDEATH))
multiplier = 2
- if(H.flags & (HEADCOVERSEYES | HEADCOVERSMOUTH) || H.flags_inv & (HIDEEYES | HIDEFACE))
+ if(H.flags_cover & (HEADCOVERSEYES | HEADCOVERSMOUTH) || H.flags_inv & (HIDEEYES | HIDEFACE))
loose = 0
return loose * multiplier
diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm
index 35d2a433f96..af8b231f78a 100644
--- a/code/modules/mob/living/living_defense.dm
+++ b/code/modules/mob/living/living_defense.dm
@@ -228,7 +228,7 @@
return 0
if (M.a_intent == "harm")
- if(M.is_muzzled() || (M.wear_mask && M.wear_mask.flags & MASKCOVERSMOUTH))
+ if(M.is_muzzled() || (M.wear_mask && M.wear_mask.flags_cover & MASKCOVERSMOUTH))
M << "You can't bite with your mouth covered!"
return 0
M.do_attack_animation(src)
diff --git a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
index 7fd49928443..64ac0c3278b 100644
--- a/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
+++ b/code/modules/reagents/Chemistry-Reagents/Consumable-Reagents/Food-Reagents.dm
@@ -176,10 +176,10 @@
//monkeys and humans can have masks
if( victim.wear_mask )
- if ( victim.wear_mask.flags & MASKCOVERSEYES )
+ if ( victim.wear_mask.flags_cover & MASKCOVERSEYES )
eyes_covered = 1
safe_thing = victim.wear_mask
- if ( victim.wear_mask.flags & MASKCOVERSMOUTH )
+ if ( victim.wear_mask.flags_cover & MASKCOVERSMOUTH )
mouth_covered = 1
safe_thing = victim.wear_mask
@@ -187,10 +187,10 @@
if(istype(victim, /mob/living/carbon/human))
var/mob/living/carbon/human/H = victim
if( H.head )
- if ( H.head.flags & MASKCOVERSEYES )
+ if ( H.head.flags_cover & MASKCOVERSEYES )
eyes_covered = 1
safe_thing = H.head
- if ( H.head.flags & MASKCOVERSMOUTH )
+ if ( H.head.flags_cover & MASKCOVERSMOUTH )
mouth_covered = 1
safe_thing = H.head
if(H.glasses)
diff --git a/code/modules/reagents/reagent_containers/dropper.dm b/code/modules/reagents/reagent_containers/dropper.dm
index 8a8f5f1728b..c180b0f34f4 100644
--- a/code/modules/reagents/reagent_containers/dropper.dm
+++ b/code/modules/reagents/reagent_containers/dropper.dm
@@ -28,10 +28,10 @@
var/obj/item/safe_thing = null
if(victim.wear_mask)
- if(victim.wear_mask.flags & MASKCOVERSEYES)
+ if(victim.wear_mask.flags_cover & MASKCOVERSEYES)
safe_thing = victim.wear_mask
if(victim.head)
- if(victim.head.flags & MASKCOVERSEYES)
+ if(victim.head.flags_cover & MASKCOVERSEYES)
safe_thing = victim.head
if(victim.glasses)
if(!safe_thing)
diff --git a/code/modules/surgery/helpers.dm b/code/modules/surgery/helpers.dm
index 662a4304d3e..4982c6bcc64 100644
--- a/code/modules/surgery/helpers.dm
+++ b/code/modules/surgery/helpers.dm
@@ -80,13 +80,13 @@
for(var/obj/item/clothing/I in list(C.back, C.wear_mask, C.head))
covered_locations |= I.body_parts_covered
face_covered |= I.flags_inv
- eyesmouth_covered |= I.flags
+ eyesmouth_covered |= I.flags_cover
if(ishuman(C))
var/mob/living/carbon/human/H = C
for(var/obj/item/I in list(H.wear_suit, H.w_uniform, H.shoes, H.belt, H.gloves, H.glasses, H.ears))
covered_locations |= I.body_parts_covered
face_covered |= I.flags_inv
- eyesmouth_covered |= I.flags
+ eyesmouth_covered |= I.flags_cover
switch(location)
if("head")