mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 05:00:55 +01:00
Fixes most (non hardsuit) helmets hiding the glasses when they shouldn't.
Fixes not seeing glasses through the riot helmet. Fixes gas mask protruding from the abductor helmet. Fixed radiation hood not hiding your hair, earpiece, mask. Fixes colored justice hats not having an on-mob icon_stat. Removed BLOCKHAIR bit from var/flags , moved it to flags_inv and renamed to HIDEHAIR Added HIDEFACIALHAIR bitflag so certain hat/helmet can show just the beard. Fixed human/update_inv_glasses not checking if our mask hides our glasses. Fixed check_obscured_slots() not checking if our masj obscur our glasses. Fixes some bits of flags_inv having the same value. Fixes crusader hood and other headgear not hiding your identity when they should. Fixes drone mask icon not appearing.
This commit is contained in:
@@ -14,15 +14,16 @@
|
||||
#define SLOT_DENYPOCKET 4096 //this is to deny items with a w_class of 2 or 1 to fit in pockets.
|
||||
|
||||
//Bit flags for the flags_inv variable, which determine when a piece of clothing hides another. IE a helmet hiding glasses.
|
||||
#define HIDEGLOVES 1 //APPLIES ONLY TO THE EXTERIOR SUIT!!
|
||||
#define HIDESUITSTORAGE 2 //APPLIES ONLY TO THE EXTERIOR SUIT!!
|
||||
#define HIDEJUMPSUIT 4 //APPLIES ONLY TO THE EXTERIOR SUIT!!
|
||||
#define HIDESHOES 8 //APPLIES ONLY TO THE EXTERIOR SUIT!!
|
||||
|
||||
#define HIDEMASK 1 //APPLIES ONLY TO HELMETS/MASKS!!
|
||||
#define HIDEEARS 2 //APPLIES ONLY TO HELMETS/MASKS!! (ears means headsets and such)
|
||||
#define HIDEEYES 4 //APPLIES ONLY TO HELMETS/MASKS!! (eyes means glasses)
|
||||
#define HIDEFACE 8 //APPLIES ONLY TO HELMETS/MASKS!! Dictates whether we appear as unknown.
|
||||
#define HIDEGLOVES 1
|
||||
#define HIDESUITSTORAGE 2
|
||||
#define HIDEJUMPSUIT 4 //these first four are only used in exterior suits
|
||||
#define HIDESHOES 8
|
||||
#define HIDEMASK 16 //these last six are only used in masks and headgear.
|
||||
#define HIDEEARS 32 // (ears means headsets and such)
|
||||
#define HIDEEYES 64 // Whether eyes and glasses are hidden
|
||||
#define HIDEFACE 128 // Whether we appear as unknown.
|
||||
#define HIDEHAIR 256
|
||||
#define HIDEFACIALHAIR 512
|
||||
|
||||
//slots
|
||||
#define slot_back 1
|
||||
|
||||
@@ -33,8 +33,6 @@
|
||||
|
||||
#define NOREACT 16384 //Reagents dont' react inside this container.
|
||||
|
||||
#define BLOCKHAIR 32768 // temporarily removes the user's hair icon
|
||||
|
||||
//turf-only flags
|
||||
#define NOJAUNT 1
|
||||
|
||||
|
||||
@@ -298,7 +298,7 @@
|
||||
name = "flesh mass"
|
||||
icon_state = "lingspacehelmet"
|
||||
desc = "A covering of pressure and temperature-resistant organic tissue with a glass-like chitin front."
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | NODROP //Again, no THICKMATERIAL.
|
||||
flags = 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
|
||||
|
||||
@@ -348,10 +348,9 @@
|
||||
name = "chitinous mass"
|
||||
desc = "A tough, hard covering of black chitin with transparent chitin in front."
|
||||
icon_state = "lingarmorhelmet"
|
||||
flags = BLOCKHAIR | NODROP
|
||||
flags = NODROP
|
||||
armor = list(melee = 30, bullet = 30, laser = 40, energy = 20, bomb = 10, bio = 4, rad = 0)
|
||||
flags_inv = HIDEEARS
|
||||
flags_cover = HEADCOVERSEYES
|
||||
flags_inv = HIDEEARS|HIDEHAIR|HIDEEYES|HIDEFACIALHAIR|HIDEFACE
|
||||
|
||||
/obj/item/clothing/head/helmet/changeling/dropped()
|
||||
qdel(src)
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
name = "ancient cultist hood"
|
||||
icon_state = "culthood"
|
||||
desc = "A torn, dust-caked hood. Strange letters line the inside."
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEEARS
|
||||
flags_cover = HEADCOVERSEYES
|
||||
armor = list(melee = 30, bullet = 10, laser = 5,energy = 5, bomb = 0, bio = 0, rad = 0)
|
||||
cold_protection = HEAD
|
||||
@@ -93,8 +93,7 @@
|
||||
icon_state = "magus"
|
||||
item_state = "magus"
|
||||
desc = "A helm worn by the followers of Nar-Sie."
|
||||
flags_inv = HIDEFACE
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDEEARS|HIDEEYES
|
||||
armor = list(melee = 30, bullet = 30, laser = 30,energy = 20, bomb = 0, bio = 0, rad = 0)
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
name = "Crusader's Hood"
|
||||
icon_state = "crusader"
|
||||
w_class = 3 //normal
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEHAIR|HIDEEARS|HIDEFACE
|
||||
armor = list(melee = 50, bullet = 50, laser = 50, energy = 40, bomb = 60, bio = 0, rad = 0)
|
||||
|
||||
/obj/item/clothing/head/helmet/plate/crusader/blue
|
||||
|
||||
@@ -575,6 +575,7 @@ Congratulations! You are now trained for xenobiology research!"}
|
||||
item_state = "alienhelmet"
|
||||
blockTracking = 1
|
||||
origin_tech = "materials=6;magnets=5"
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
// Operating Table / Beds / Lockers
|
||||
|
||||
|
||||
@@ -794,7 +794,7 @@
|
||||
user <<"<font size='15' color='red'><b>HOR-SIE HAS RISEN</b></font>"
|
||||
var/obj/item/clothing/mask/horsehead/magichead = new /obj/item/clothing/mask/horsehead
|
||||
magichead.flags |= NODROP //curses!
|
||||
magichead.flags_inv = null //so you can still see their face
|
||||
magichead.flags_inv &= ~HIDEFACE //so you can still see their face
|
||||
magichead.voicechange = 1 //NEEEEIIGHH
|
||||
if(!user.unEquip(user.wear_mask))
|
||||
qdel(user.wear_mask)
|
||||
|
||||
@@ -131,11 +131,11 @@ BLIND // can't see anything
|
||||
return message
|
||||
|
||||
//Proc that moves gas/breath masks out of the way, disabling them and allowing pill/food consumption
|
||||
/obj/item/clothing/mask/proc/adjustmask(mob/user)
|
||||
/obj/item/clothing/mask/proc/adjustmask(mob/living/user)
|
||||
if(!ignore_maskadjust)
|
||||
if(user.incapacitated())
|
||||
return
|
||||
if(src.mask_adjusted == 1)
|
||||
if(mask_adjusted == 1)
|
||||
src.icon_state = initial(icon_state)
|
||||
gas_transfer_coefficient = initial(gas_transfer_coefficient)
|
||||
permeability_coefficient = initial(permeability_coefficient)
|
||||
@@ -146,7 +146,7 @@ BLIND // can't see anything
|
||||
src.mask_adjusted = 0
|
||||
slot_flags = initial(slot_flags)
|
||||
else
|
||||
src.icon_state += "_up"
|
||||
icon_state += "_up"
|
||||
user << "<span class='notice'>You push \the [src] out of the way.</span>"
|
||||
gas_transfer_coefficient = null
|
||||
permeability_coefficient = null
|
||||
@@ -156,7 +156,7 @@ BLIND // can't see anything
|
||||
src.mask_adjusted = 1
|
||||
if(adjusted_flags)
|
||||
slot_flags = adjusted_flags
|
||||
usr.update_inv_wear_mask()
|
||||
user.wear_mask_update(src, unequip = 0)
|
||||
|
||||
|
||||
|
||||
@@ -257,11 +257,11 @@ 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 = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
|
||||
flags = 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)
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT
|
||||
heat_protection = HEAD
|
||||
|
||||
@@ -78,8 +78,8 @@
|
||||
item_color = "atmos"
|
||||
name = "atmospheric technician's firefighting helmet"
|
||||
desc = "A firefighter's helmet, able to keep the user cool in any situation."
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags = STOPSPRESSUREDMAGE | THICKMATERIAL
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
heat_protection = HEAD
|
||||
max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT
|
||||
cold_protection = HEAD
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
flags = HEADBANGPROTECT
|
||||
item_state = "helmet"
|
||||
armor = list(melee = 30, bullet = 25, laser = 25,energy = 10, bomb = 25, bio = 0, rad = 0)
|
||||
flags_inv = HIDEEARS|HIDEEYES
|
||||
flags_inv = HIDEEARS
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT
|
||||
heat_protection = HEAD
|
||||
@@ -41,10 +41,10 @@
|
||||
can_toggle = 1
|
||||
flags = HEADBANGPROTECT
|
||||
armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0)
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEFACE
|
||||
strip_delay = 80
|
||||
action_button_name = "Toggle Helmet Visor"
|
||||
visor_flags_inv = HIDEMASK|HIDEEYES|HIDEFACE
|
||||
visor_flags_inv = HIDEMASK|HIDEFACE
|
||||
toggle_cooldown = 0
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
|
||||
@@ -110,6 +110,7 @@
|
||||
/obj/item/clothing/head/helmet/thunderdome
|
||||
name = "\improper Thunderdome helmet"
|
||||
desc = "<i>'Let the battle commence!'</i>"
|
||||
flags_inv = HIDEEARS|HIDEHAIR
|
||||
icon_state = "thunderdome"
|
||||
item_state = "thunderdome"
|
||||
armor = list(melee = 40, bullet = 30, laser = 25,energy = 10, bomb = 25, bio = 10, rad = 0)
|
||||
@@ -122,6 +123,7 @@
|
||||
/obj/item/clothing/head/helmet/roman
|
||||
name = "roman helmet"
|
||||
desc = "An ancient helmet made of bronze and leather."
|
||||
flags_inv = HIDEEARS|HIDEHAIR
|
||||
flags_cover = HEADCOVERSEYES
|
||||
armor = list(melee = 25, bullet = 0, laser = 25, energy = 10, bomb = 10, bio = 0, rad = 0)
|
||||
icon_state = "roman"
|
||||
@@ -138,9 +140,8 @@
|
||||
name = "gladiator helmet"
|
||||
desc = "Ave, Imperator, morituri te salutant."
|
||||
icon_state = "gladiator"
|
||||
flags = BLOCKHAIR
|
||||
item_state = "gladiator"
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR
|
||||
flags_cover = HEADCOVERSEYES
|
||||
|
||||
/obj/item/clothing/head/helmet/redtaghelm
|
||||
@@ -151,7 +152,6 @@
|
||||
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.
|
||||
flags_inv = HIDEEARS|HIDEEYES
|
||||
|
||||
/obj/item/clothing/head/helmet/bluetaghelm
|
||||
name = "blue laser tag helmet"
|
||||
@@ -161,7 +161,6 @@
|
||||
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.
|
||||
flags_inv = HIDEEARS|HIDEEYES
|
||||
|
||||
/obj/item/clothing/head/helmet/knight
|
||||
name = "medieval helmet"
|
||||
@@ -169,8 +168,8 @@
|
||||
icon_state = "knight_green"
|
||||
item_state = "knight_green"
|
||||
armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0)
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags = null
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
strip_delay = 80
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
name = "nun hood"
|
||||
desc = "Maximum piety in this star system."
|
||||
icon_state = "nun_hood"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEHAIR
|
||||
flags_cover = HEADCOVERSEYES
|
||||
|
||||
/obj/item/clothing/head/det_hat
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
name = "hastur's hood"
|
||||
desc = "It's <i>unspeakably</i> stylish."
|
||||
icon_state = "hasturhood"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEHAIR
|
||||
flags_cover = HEADCOVERSEYES
|
||||
|
||||
/obj/item/clothing/head/nursehat
|
||||
@@ -60,8 +60,7 @@
|
||||
icon_state = "syndicate-helm-black-red"
|
||||
item_state = "syndicate-helm-black-red"
|
||||
desc = "A plastic replica of a Syndicate agent's space helmet. You'll look just like a real murderous Syndicate agent in this! This is a toy, it is not made for use in space!"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/cardborg
|
||||
name = "cardborg helmet"
|
||||
@@ -69,7 +68,7 @@
|
||||
icon_state = "cardborg_h"
|
||||
item_state = "cardborg_h"
|
||||
flags_cover = HEADCOVERSEYES
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/snowman
|
||||
name = "Snowman Head"
|
||||
@@ -77,14 +76,14 @@
|
||||
icon_state = "snowman_h"
|
||||
item_state = "snowman_h"
|
||||
flags_cover = HEADCOVERSEYES
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/justice
|
||||
name = "justice hat"
|
||||
desc = "Fight for what's righteous!"
|
||||
icon_state = "justicered"
|
||||
item_state = "justicered"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEHAIR|HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR
|
||||
flags_cover = HEADCOVERSEYES
|
||||
|
||||
/obj/item/clothing/head/justice/blue
|
||||
@@ -143,23 +142,21 @@
|
||||
desc = "Eeeee~heheheheheheh!"
|
||||
icon_state = "witch"
|
||||
item_state = "witch"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEHAIR
|
||||
|
||||
/obj/item/clothing/head/chicken
|
||||
name = "chicken suit head"
|
||||
desc = "Bkaw!"
|
||||
icon_state = "chickenhead"
|
||||
item_state = "chickensuit"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/griffin
|
||||
name = "griffon head"
|
||||
desc = "Why not 'eagle head'? Who knows."
|
||||
icon_state = "griffinhat"
|
||||
item_state = "griffinhat"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/bearpelt
|
||||
name = "bear pelt hat"
|
||||
@@ -172,8 +169,7 @@
|
||||
icon_state = "xenos"
|
||||
item_state = "xenos_helm"
|
||||
desc = "A helmet made out of chitinous alien hide."
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/head/fedora
|
||||
name = "fedora"
|
||||
@@ -196,12 +192,14 @@
|
||||
icon_state = "sombrero"
|
||||
item_state = "sombrero"
|
||||
desc = "You can practically taste the fiesta."
|
||||
flags_inv = HIDEHAIR
|
||||
|
||||
/obj/item/clothing/head/sombrero/green
|
||||
name = "green sombrero"
|
||||
icon_state = "greensombrero"
|
||||
item_state = "greensombrero"
|
||||
desc = "As elegant as a dancing cactus."
|
||||
flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS
|
||||
|
||||
/obj/item/clothing/head/sombrero/shamebrero
|
||||
name = "shamebrero"
|
||||
@@ -245,4 +243,4 @@
|
||||
/obj/item/clothing/head/lizard
|
||||
name = "lizardskin cloche hat"
|
||||
desc = "How many lizards died to make this hat? Not enough."
|
||||
icon_state = "lizard"
|
||||
icon_state = "lizard"
|
||||
|
||||
@@ -48,8 +48,7 @@
|
||||
icon_state = "hardhat0_cakehat"
|
||||
item_state = "hardhat0_cakehat"
|
||||
item_color = "cakehat"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEEARS
|
||||
flags_inv = HIDEEARS|HIDEHAIR
|
||||
action_button_name = "Toggle Candle"
|
||||
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
|
||||
brightness_on = 2 //luminosity when on
|
||||
@@ -90,7 +89,7 @@
|
||||
desc = "Perfect for winter in Siberia, da?"
|
||||
icon_state = "ushankadown"
|
||||
item_state = "ushankadown"
|
||||
flags_inv = HIDEEARS
|
||||
flags_inv = HIDEEARS|HIDEHAIR
|
||||
var/earflaps = 1
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT
|
||||
@@ -116,8 +115,7 @@
|
||||
icon_state = "hardhat0_pumpkin"
|
||||
item_state = "hardhat0_pumpkin"
|
||||
item_color = "pumpkin"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
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
|
||||
|
||||
@@ -3,9 +3,8 @@
|
||||
desc = "LOADSAMONEY"
|
||||
icon_state = "balaclava"
|
||||
item_state = "balaclava"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE
|
||||
visor_flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
visor_flags_inv = HIDEFACE|HIDEFACIALHAIR
|
||||
w_class = 2
|
||||
action_button_name = "Adjust Balaclava"
|
||||
ignore_maskadjust = 0
|
||||
@@ -18,8 +17,7 @@
|
||||
desc = "Worn by robust fighters, flying high to defeat their foes!"
|
||||
icon_state = "luchag"
|
||||
item_state = "luchag"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
w_class = 2
|
||||
|
||||
/obj/item/clothing/mask/luchador/speechModification(message)
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
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 = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|HIDEFACIALHAIR
|
||||
w_class = 3
|
||||
item_state = "gas_alt"
|
||||
gas_transfer_coefficient = 0.01
|
||||
@@ -23,6 +23,7 @@
|
||||
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
|
||||
origin_tech = "materials=2;engineering=2"
|
||||
action_button_name = "Toggle Welding Mask"
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_cover = MASKCOVERSEYES
|
||||
visor_flags_inv = HIDEEYES
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
icon_state = "sechailer"
|
||||
ignore_maskadjust = 0
|
||||
flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACIALHAIR|HIDEFACE
|
||||
w_class = 2
|
||||
visor_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
|
||||
visor_flags_inv = HIDEFACE
|
||||
@@ -25,6 +25,8 @@
|
||||
icon_state = "swat"
|
||||
aggressiveness = 3
|
||||
ignore_maskadjust = 1
|
||||
flags_inv = HIDEFACIALHAIR|HIDEFACE|HIDEEYES|HIDEEARS
|
||||
visor_flags_inv = 0
|
||||
|
||||
/obj/item/clothing/mask/gas/sechailer/cyborg
|
||||
name = "security hailer"
|
||||
|
||||
@@ -45,8 +45,7 @@
|
||||
desc = "A rubber pig mask."
|
||||
icon_state = "pig"
|
||||
item_state = "pig"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
w_class = 2
|
||||
action_button_name = "Toggle Voice Box"
|
||||
var/voicechange = 0
|
||||
@@ -65,8 +64,7 @@
|
||||
desc = "It looks like a mask, but closer inspection reveals it's melded onto this persons face!" //It's only ever going to be attached to your face.
|
||||
icon_state = "pig"
|
||||
item_state = "pig"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
w_class = 2
|
||||
var/voicechange = 1
|
||||
|
||||
@@ -81,8 +79,7 @@
|
||||
icon = 'icons/mob/mask.dmi'
|
||||
icon_state = "cowmask"
|
||||
item_state = "cowmask"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
w_class = 2
|
||||
var/voicechange = 1
|
||||
|
||||
@@ -96,8 +93,7 @@
|
||||
desc = "A mask made of soft vinyl and latex, representing the head of a horse."
|
||||
icon_state = "horsehead"
|
||||
item_state = "horsehead"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEHAIR|HIDEFACIALHAIR|HIDEEYES|HIDEEARS
|
||||
w_class = 2
|
||||
var/voicechange = 1
|
||||
|
||||
@@ -111,8 +107,8 @@
|
||||
desc = "A fine bandana with nanotech lining and a hydroponics pattern."
|
||||
w_class = 1
|
||||
flags_cover = MASKCOVERSMOUTH
|
||||
flags_inv = HIDEFACE
|
||||
visor_flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEFACIALHAIR
|
||||
visor_flags_inv = HIDEFACE|HIDEFACIALHAIR
|
||||
slot_flags = SLOT_MASK
|
||||
ignore_maskadjust = 0
|
||||
adjusted_flags = SLOT_HEAD
|
||||
|
||||
@@ -11,8 +11,6 @@
|
||||
var/obj/item/clothing/suit/space/hardsuit/suit
|
||||
item_color = "engineering" //Determines used sprites: hardsuit[on]-[color] and hardsuit[on]-[color]2 (lying down sprite)
|
||||
action_button_name = "Toggle Helmet Light"
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/attack_self(mob/user)
|
||||
@@ -184,11 +182,11 @@
|
||||
item_state = "syndie_helm"
|
||||
item_color = "syndi"
|
||||
armor = list(melee = 40, bullet = 50, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 50)
|
||||
on = 0
|
||||
on = 1
|
||||
var/obj/item/clothing/suit/space/hardsuit/syndi/linkedsuit = null
|
||||
action_button_name = "Toggle Helmet Mode"
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
visor_flags_inv = HIDEMASK|HIDEEYES|HIDEFACE|HIDEFACIALHAIR
|
||||
visor_flags = STOPSPRESSUREDMAGE
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/syndi/update_icon()
|
||||
icon_state = "hardsuit[on]-[item_color]"
|
||||
@@ -208,18 +206,18 @@
|
||||
name = initial(name)
|
||||
desc = initial(desc)
|
||||
user.AddLuminosity(brightness_on)
|
||||
flags |= STOPSPRESSUREDMAGE
|
||||
flags |= visor_flags
|
||||
flags_cover |= HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
flags_inv |= HIDEMASK|HIDEEYES|HIDEFACE
|
||||
flags_inv |= visor_flags_inv
|
||||
cold_protection |= HEAD
|
||||
else
|
||||
user << "<span class='notice'>You switch your hardsuit to combat mode.</span>"
|
||||
name += " (combat)"
|
||||
desc = alt_desc
|
||||
user.AddLuminosity(-brightness_on)
|
||||
flags &= ~(STOPSPRESSUREDMAGE)
|
||||
flags &= ~visor_flags
|
||||
flags_cover &= ~(HEADCOVERSEYES | HEADCOVERSMOUTH)
|
||||
flags_inv &= ~(HIDEMASK|HIDEEYES|HIDEFACE)
|
||||
flags_inv &= ~visor_flags_inv
|
||||
cold_protection &= ~HEAD
|
||||
update_icon()
|
||||
playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1)
|
||||
@@ -278,6 +276,9 @@
|
||||
armor = list(melee = 60, bullet = 60, laser = 50, energy = 25, bomb = 55, bio = 100, rad = 70)
|
||||
heat_protection = HEAD
|
||||
max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT
|
||||
visor_flags_inv = 0
|
||||
visor_flags = 0
|
||||
on = 0
|
||||
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/syndi/elite
|
||||
@@ -300,7 +301,9 @@
|
||||
icon_state = "hardsuit1-owl"
|
||||
item_state = "s_helmet"
|
||||
item_color = "owl"
|
||||
|
||||
visor_flags_inv = 0
|
||||
visor_flags = 0
|
||||
on = 0
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/syndi/owl
|
||||
name = "owl hardsuit"
|
||||
@@ -346,7 +349,6 @@
|
||||
item_state = "medical_helm"
|
||||
item_color = "medical"
|
||||
flash_protect = 0
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
|
||||
armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 50)
|
||||
scan_reagents = 1
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ Contains:
|
||||
icon_state = "capspace"
|
||||
item_state = "capspacehelmet"
|
||||
desc = "A special helmet designed for only the most fashionable of military figureheads."
|
||||
flags_inv = HIDEFACE
|
||||
flags_inv = HIDEFACE|HIDEEARS|HIDEHAIR
|
||||
permeability_coefficient = 0.01
|
||||
armor = list(melee = 40, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50)
|
||||
|
||||
@@ -118,7 +118,7 @@ Contains:
|
||||
name = "Santa's hat"
|
||||
desc = "Ho ho ho. Merrry X-mas!"
|
||||
icon_state = "santahat"
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE
|
||||
flags = STOPSPRESSUREDMAGE
|
||||
flags_cover = HEADCOVERSEYES
|
||||
|
||||
/obj/item/clothing/suit/space/santa
|
||||
@@ -138,7 +138,7 @@ Contains:
|
||||
icon_state = "pirate"
|
||||
item_state = "pirate"
|
||||
armor = list(melee = 30, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE
|
||||
flags = STOPSPRESSUREDMAGE
|
||||
strip_delay = 40
|
||||
put_on_delay = 20
|
||||
flags_cover = HEADCOVERSEYES
|
||||
@@ -165,9 +165,8 @@ Contains:
|
||||
item_color = "ert_commander"
|
||||
armor = list(melee = 65, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 100, rad = 100)
|
||||
strip_delay = 130
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
|
||||
flags = STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
|
||||
brightness_on = 7
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/ert
|
||||
name = "emergency response team suit"
|
||||
@@ -264,9 +263,7 @@ Contains:
|
||||
armor = list(melee = -20, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 75) //As whimpy as a space carp
|
||||
brightness_on = 0 //luminosity when on
|
||||
action_button_name = ""
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
flags_inv = HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags = STOPSPRESSUREDMAGE | THICKMATERIAL | NODROP
|
||||
|
||||
|
||||
/obj/item/clothing/suit/space/hardsuit/carp
|
||||
|
||||
@@ -40,8 +40,6 @@
|
||||
icon_state = "plasmaman-helm"
|
||||
item_color = "plasma" //needed for the helmet lighting
|
||||
item_state = "plasmaman-helm"
|
||||
flags = BLOCKHAIR | STOPSPRESSUREDMAGE | THICKMATERIAL
|
||||
strip_delay = 80
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
|
||||
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
icon_state = "bio"
|
||||
desc = "A hood that protects the head and face from biological comtaminants."
|
||||
permeability_coefficient = 0.01
|
||||
flags = BLOCKHAIR|THICKMATERIAL
|
||||
flags = THICKMATERIAL
|
||||
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20)
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR|HIDEFACE
|
||||
unacidable = 1
|
||||
burn_state = FIRE_PROOF
|
||||
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
icon_state = "chaplain_hood"
|
||||
body_parts_covered = HEAD
|
||||
flags = NODROP
|
||||
flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS
|
||||
|
||||
//Chaplain
|
||||
/obj/item/clothing/suit/nun
|
||||
|
||||
@@ -226,6 +226,7 @@
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
||||
flags = NODROP
|
||||
flags_inv = HIDEHAIR|HIDEEARS
|
||||
|
||||
/obj/item/clothing/suit/hooded/ian_costume //It's Ian, rub his bell- oh god what happened to his inside parts?
|
||||
name = "corgi costume"
|
||||
@@ -248,6 +249,7 @@
|
||||
//cold_protection = HEAD
|
||||
//min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
||||
flags = NODROP
|
||||
flags_inv = HIDEHAIR|HIDEEARS
|
||||
|
||||
/*
|
||||
* Misc
|
||||
@@ -357,6 +359,7 @@
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
||||
flags = NODROP
|
||||
flags_inv = HIDEHAIR|HIDEEARS
|
||||
|
||||
/obj/item/clothing/suit/hooded/wintercoat/captain
|
||||
name = "captain's winter coat"
|
||||
|
||||
@@ -56,9 +56,9 @@
|
||||
name = "bomb hood"
|
||||
desc = "Use in case of bomb."
|
||||
icon_state = "bombsuit"
|
||||
flags = BLOCKHAIR|THICKMATERIAL
|
||||
flags = THICKMATERIAL
|
||||
armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0)
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
|
||||
flags_inv = HIDEFACE|HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR
|
||||
cold_protection = HEAD
|
||||
min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT
|
||||
heat_protection = HEAD
|
||||
@@ -107,7 +107,8 @@
|
||||
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 = BLOCKHAIR|THICKMATERIAL
|
||||
flags = THICKMATERIAL
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEFACE|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR
|
||||
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100)
|
||||
strip_delay = 60
|
||||
put_on_delay = 60
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
name = "Santa's hat"
|
||||
desc = "Ho ho ho. Merrry X-mas!"
|
||||
icon_state = "santahat"
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/suit/wizrobe
|
||||
name = "wizard robe"
|
||||
|
||||
@@ -91,8 +91,7 @@
|
||||
item_state = "bunnyhead"
|
||||
desc = "Considerably more cute than 'Frank'"
|
||||
slowdown = -1
|
||||
flags = BLOCKHAIR
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
|
||||
|
||||
/obj/item/clothing/suit/bunnysuit
|
||||
name = "Easter Bunny Suit"
|
||||
|
||||
@@ -600,6 +600,10 @@
|
||||
if(head.flags_inv & HIDEEARS)
|
||||
obscured |= slot_ears
|
||||
|
||||
if(wear_mask)
|
||||
if(wear_mask.flags_inv & HIDEEYES)
|
||||
obscured |= slot_glasses
|
||||
|
||||
if(obscured.len > 0)
|
||||
return obscured
|
||||
else
|
||||
|
||||
@@ -167,16 +167,18 @@
|
||||
update_inv_s_store()
|
||||
|
||||
/mob/living/carbon/human/wear_mask_update(obj/item/clothing/C, unequip = 1)
|
||||
if(C.flags & BLOCKHAIR)
|
||||
if((C.flags_inv & (HIDEHAIR|HIDEFACIALHAIR)) || (initial(C.flags_inv) & (HIDEHAIR|HIDEFACIALHAIR)))
|
||||
update_hair()
|
||||
if(unequip && internal)
|
||||
update_internals_hud_icon(0)
|
||||
internal = null
|
||||
if(C.flags_inv & HIDEEYES)
|
||||
update_inv_glasses()
|
||||
sec_hud_set_security_status()
|
||||
..()
|
||||
|
||||
/mob/living/carbon/human/head_update(obj/item/I, forced)
|
||||
if(I.flags & BLOCKHAIR || forced)
|
||||
if((I.flags_inv & (HIDEHAIR|HIDEFACIALHAIR)) || forced)
|
||||
update_hair()
|
||||
if(I.flags_inv & HIDEEYES || forced)
|
||||
update_inv_glasses()
|
||||
|
||||
@@ -168,11 +168,23 @@
|
||||
|
||||
/datum/species/proc/handle_hair(mob/living/carbon/human/H, forced_colour)
|
||||
H.remove_overlay(HAIR_LAYER)
|
||||
|
||||
if(H.disabilities & HUSK)
|
||||
return
|
||||
var/datum/sprite_accessory/S
|
||||
var/list/standing = list()
|
||||
var/list/standing = list()
|
||||
var/hair_hidden = 0
|
||||
var/facialhair_hidden = 0
|
||||
//we check if our hat or helmet hides our facial hair.
|
||||
if(H.head)
|
||||
var/obj/item/I = H.head
|
||||
if(I.flags_inv & HIDEFACIALHAIR)
|
||||
facialhair_hidden = 1
|
||||
if(H.wear_mask)
|
||||
var/obj/item/clothing/mask/M = H.wear_mask
|
||||
if(M.flags_inv & HIDEFACIALHAIR)
|
||||
facialhair_hidden = 1
|
||||
|
||||
if(H.facial_hair_style && FACEHAIR in specflags)
|
||||
if(H.facial_hair_style && (FACEHAIR in specflags) && !facialhair_hidden)
|
||||
S = facial_hair_styles_list[H.facial_hair_style]
|
||||
if(S)
|
||||
var/image/img_facial_s
|
||||
@@ -192,44 +204,46 @@
|
||||
|
||||
img_facial_s.alpha = hair_alpha
|
||||
|
||||
standing += img_facial_s
|
||||
standing += img_facial_s
|
||||
|
||||
//Applies the debrained overlay if there is no brain
|
||||
if(!H.getorgan(/obj/item/organ/internal/brain))
|
||||
standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER)
|
||||
//we check if our hat or helmet hides our hair.
|
||||
if(H.head)
|
||||
var/obj/item/I = H.head
|
||||
if(I.flags_inv & HIDEHAIR)
|
||||
hair_hidden = 1
|
||||
if(H.wear_mask)
|
||||
var/obj/item/clothing/mask/M = H.wear_mask
|
||||
if(M.flags_inv & HIDEHAIR)
|
||||
hair_hidden = 1
|
||||
if(!hair_hidden)
|
||||
if(!H.getorgan(/obj/item/organ/internal/brain)) //Applies the debrained overlay if there is no brain
|
||||
standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained_s", "layer" = -HAIR_LAYER)
|
||||
|
||||
if((H.wear_suit) && (H.wear_suit.hooded) && (H.wear_suit.suittoggled == 1))
|
||||
if(standing.len)
|
||||
H.overlays_standing[HAIR_LAYER] = standing
|
||||
H.apply_overlay(HAIR_LAYER)
|
||||
return
|
||||
else if(H.hair_style && (HAIR in specflags))
|
||||
S = hair_styles_list[H.hair_style]
|
||||
if(S)
|
||||
var/image/img_hair_s = image("icon" = S.icon, "icon_state" = "[S.icon_state]_s", "layer" = -HAIR_LAYER)
|
||||
|
||||
else if(H.hair_style && HAIR in specflags)
|
||||
S = hair_styles_list[H.hair_style]
|
||||
if(S)
|
||||
var/image/img_hair_s = image("icon" = S.icon, "icon_state" = "[S.icon_state]_s", "layer" = -HAIR_LAYER)
|
||||
img_hair_s = image("icon" = S.icon, "icon_state" = "[S.icon_state]_s", "layer" = -HAIR_LAYER)
|
||||
|
||||
img_hair_s = image("icon" = S.icon, "icon_state" = "[S.icon_state]_s", "layer" = -HAIR_LAYER)
|
||||
|
||||
if(!forced_colour)
|
||||
if(hair_color)
|
||||
if(hair_color == "mutcolor")
|
||||
img_hair_s.color = "#" + H.dna.features["mcolor"]
|
||||
if(!forced_colour)
|
||||
if(hair_color)
|
||||
if(hair_color == "mutcolor")
|
||||
img_hair_s.color = "#" + H.dna.features["mcolor"]
|
||||
else
|
||||
img_hair_s.color = "#" + hair_color
|
||||
else
|
||||
img_hair_s.color = "#" + hair_color
|
||||
img_hair_s.color = "#" + H.hair_color
|
||||
else
|
||||
img_hair_s.color = "#" + H.hair_color
|
||||
else
|
||||
img_hair_s.color = forced_colour
|
||||
img_hair_s.alpha = hair_alpha
|
||||
img_hair_s.color = forced_colour
|
||||
img_hair_s.alpha = hair_alpha
|
||||
|
||||
standing += img_hair_s
|
||||
standing += img_hair_s
|
||||
|
||||
if(standing.len)
|
||||
H.overlays_standing[HAIR_LAYER] = standing
|
||||
|
||||
H.apply_overlay(HAIR_LAYER)
|
||||
return
|
||||
|
||||
/datum/species/proc/handle_body(mob/living/carbon/human/H)
|
||||
H.remove_overlay(BODY_LAYER)
|
||||
@@ -328,11 +342,11 @@
|
||||
bodyparts_to_add -= "frills"
|
||||
|
||||
if("horns" in mutant_bodyparts)
|
||||
if(!H.dna.features["horns"] || H.dna.features["horns"] == "None" || H.head && (H.head.flags & BLOCKHAIR) || (H.wear_mask && (H.wear_mask.flags & BLOCKHAIR)))
|
||||
if(!H.dna.features["horns"] || H.dna.features["horns"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)))
|
||||
bodyparts_to_add -= "horns"
|
||||
|
||||
if("ears" in mutant_bodyparts)
|
||||
if(!H.dna.features["ears"] || H.dna.features["ears"] == "None" || H.head && (H.head.flags & BLOCKHAIR) || (H.wear_mask && (H.wear_mask.flags & BLOCKHAIR)))
|
||||
if(!H.dna.features["ears"] || H.dna.features["ears"] == "None" || H.head && (H.head.flags_inv & HIDEHAIR) || (H.wear_mask && (H.wear_mask.flags_inv & HIDEHAIR)))
|
||||
bodyparts_to_add -= "ears"
|
||||
|
||||
if(!bodyparts_to_add)
|
||||
|
||||
@@ -76,15 +76,6 @@ Please contact me on #coderbus IRC. ~Carnie x
|
||||
|
||||
//HAIR OVERLAY
|
||||
/mob/living/carbon/human/update_hair()
|
||||
//Reset our hair
|
||||
remove_overlay(HAIR_LAYER)
|
||||
|
||||
if( (disabilities & HUSK) || (head && (head.flags & BLOCKHAIR)) || (wear_mask && (wear_mask.flags & BLOCKHAIR)) )
|
||||
return
|
||||
|
||||
if((wear_suit) && (wear_suit.hooded) && (wear_suit.suittoggled == 1))
|
||||
return
|
||||
|
||||
dna.species.handle_hair(src)
|
||||
|
||||
/mob/living/carbon/human/proc/update_mutcolor()
|
||||
@@ -246,7 +237,7 @@ Please contact me on #coderbus IRC. ~Carnie x
|
||||
glasses.screen_loc = ui_glasses //...draw the item in the inventory screen
|
||||
client.screen += glasses //Either way, add the item to the HUD
|
||||
|
||||
if(!(head && (head.flags_inv & HIDEEYES)))
|
||||
if(!(head && (head.flags_inv & HIDEEYES)) && !(wear_mask && (wear_mask.flags_inv & HIDEEYES)))
|
||||
|
||||
var/image/standing = glasses.build_worn_icon(state = glasses.icon_state, default_layer = GLASSES_LAYER, default_icon_file = 'icons/mob/eyes.dmi')
|
||||
overlays_standing[GLASSES_LAYER] = standing
|
||||
|
||||
@@ -88,7 +88,10 @@
|
||||
update_inv_legcuffed()
|
||||
|
||||
//handle stuff to update when a mob equips/unequips a mask.
|
||||
/mob/living/carbon/proc/wear_mask_update(obj/item/clothing/C, unequip = 1)
|
||||
/mob/living/proc/wear_mask_update(obj/item/clothing/C, unequip = 1)
|
||||
update_inv_wear_mask()
|
||||
|
||||
/mob/living/carbon/wear_mask_update(obj/item/clothing/C, unequip = 1)
|
||||
if(C.tint || initial(C.tint))
|
||||
update_tint()
|
||||
update_inv_wear_mask()
|
||||
|
||||
@@ -77,8 +77,10 @@
|
||||
if(client && hud_used && hud_used.hud_shown)
|
||||
head.screen_loc = ui_drone_head
|
||||
client.screen += head
|
||||
|
||||
var/image/head_overlay = head.build_worn_icon(state = head.icon_state, default_layer = DRONE_HEAD_LAYER, default_icon_file = 'icons/mob/head.dmi')
|
||||
var/used_head_icon = 'icons/mob/head.dmi'
|
||||
if(istype(head, /obj/item/clothing/mask))
|
||||
used_head_icon = 'icons/mob/mask.dmi'
|
||||
var/image/head_overlay = head.build_worn_icon(state = head.icon_state, default_layer = DRONE_HEAD_LAYER, default_icon_file = used_head_icon)
|
||||
head_overlay.pixel_y += -15
|
||||
|
||||
drone_overlays[DRONE_HEAD_LAYER] = head_overlay
|
||||
|
||||
@@ -262,7 +262,8 @@
|
||||
amount_per_transfer_from_this = 20
|
||||
possible_transfer_amounts = list(10,15,20,25,30,50,70)
|
||||
volume = 70
|
||||
flags = OPENCONTAINER | BLOCKHAIR
|
||||
flags = OPENCONTAINER
|
||||
flags_inv = HIDEHAIR
|
||||
slot_flags = SLOT_HEAD
|
||||
armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) //Weak melee protection, because you can wear it on your head
|
||||
|
||||
|
||||
@@ -81,9 +81,9 @@ proc/get_location_modifier(mob/M)
|
||||
|
||||
|
||||
/proc/get_location_accessible(mob/M, location)
|
||||
var/covered_locations = 0 //based on body_parts_covered
|
||||
var/face_covered = 0 //based on flags_inv
|
||||
var/eyesmouth_covered = 0 //based on flags
|
||||
var/covered_locations = 0 //based on body_parts_covered
|
||||
var/face_covered = 0 //based on flags_inv
|
||||
var/eyesmouth_covered = 0 //based on flags_cover
|
||||
if(iscarbon(M))
|
||||
var/mob/living/carbon/C = M
|
||||
for(var/obj/item/clothing/I in list(C.back, C.wear_mask, C.head))
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 139 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 276 KiB After Width: | Height: | Size: 277 KiB |
Reference in New Issue
Block a user