diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index fbe5cc687fe..3b47d89bf29 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -94,6 +94,7 @@ BLIND // can't see anything allowed = list(/obj/item/weapon/tank/emergency_oxygen) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) slot_flags = SLOT_OCLOTHING + var/blood_overlay_type = "suit" //Spacesuit //Note: Everything in modules/clothing/spacesuits should have the entire suit grouped together. diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 29ffacc7a84..fde262a9019 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -15,6 +15,7 @@ desc = "An armored vest that protects against some damage." icon_state = "armor" item_state = "armor" + blood_overlay_type = "armor" flags = FPRINT | TABLEPASS | ONESIZEFITSALL armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0) @@ -42,6 +43,7 @@ desc = "A vest that excels in protecting the wearer against high-velocity solid projectiles." icon_state = "bulletproof" item_state = "armor" + blood_overlay_type = "armor" armor = list(melee = 10, bullet = 80, laser = 10, energy = 10, bomb = 0, bio = 0, rad = 0) @@ -50,6 +52,7 @@ desc = "A vest that excels in protecting the wearer against energy projectiles." icon_state = "armor_reflec" item_state = "armor_reflec" + blood_overlay_type = "armor" armor = list(melee = 10, bullet = 10, laser = 80, energy = 50, bomb = 0, bio = 0, rad = 0) @@ -75,6 +78,7 @@ desc = "An armored jacket used in special operations." icon_state = "detective" item_state = "det_suit" + blood_overlay_type = "coat" flags_inv = 0 @@ -83,6 +87,7 @@ desc = "An armored vest with a detective's badge on it." icon_state = "detective-armor" item_state = "armor" + blood_overlay_type = "armor" flags = FPRINT | TABLEPASS | ONESIZEFITSALL body_parts_covered = UPPER_TORSO|LOWER_TORSO armor = list(melee = 50, bullet = 15, laser = 50, energy = 10, bomb = 25, bio = 0, rad = 0) @@ -96,6 +101,7 @@ var/active = 0.0 icon_state = "reactiveoff" item_state = "reactiveoff" + blood_overlay_type = "armor" slowdown = 1 flags = FPRINT | TABLEPASS | ONESIZEFITSALL armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index e992d49149a..bf48605160d 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -8,6 +8,7 @@ desc = "A basic blue apron." icon_state = "apron" item_state = "apron" + blood_overlay_type = "armor" body_parts_covered = UPPER_TORSO|LOWER_TORSO allowed = list (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/device/analyzer/plant_analyzer,/obj/item/seeds,/obj/item/nutrient,/obj/item/weapon/minihoe) @@ -54,6 +55,7 @@ desc = "A basic, dull, white chef's apron." icon_state = "apronchef" item_state = "apronchef" + blood_overlay_type = "armor" body_parts_covered = UPPER_TORSO|LOWER_TORSO //Detective @@ -62,6 +64,7 @@ desc = "An 18th-century multi-purpose trenchcoat. Someone who wears this means serious business." icon_state = "detective" item_state = "det_suit" + blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS allowed = list(/obj/item/weapon/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/weapon/gun/energy,/obj/item/weapon/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs,/obj/item/weapon/cigpacket,/obj/item/weapon/lighter,/obj/item/device/detective_scanner,/obj/item/device/taperecorder) armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) @@ -72,6 +75,7 @@ desc = "A high-visibility vest used in work zones." icon_state = "hazard" item_state = "hazard" + blood_overlay_type = "armor" //Lawyer /obj/item/clothing/suit/lawyer/bluejacket @@ -79,6 +83,7 @@ desc = "A snappy dress jacket." icon_state = "suitjacket_blue_open" item_state = "suitjacket_blue_open" + blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS /obj/item/clothing/suit/lawyer/purpjacket @@ -86,6 +91,7 @@ desc = "A snappy dress jacket." icon_state = "suitjacket_purp" item_state = "suitjacket_purp" + blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|ARMS //Mime @@ -93,4 +99,5 @@ name = "suspenders" desc = "They suspend the illusion of the mime's play." icon = 'icons/obj/clothing/belts.dmi' - icon_state = "suspenders" \ No newline at end of file + icon_state = "suspenders" + blood_overlay_type = "armor" //it's the less thing that I can put here \ No newline at end of file diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index 140dec8080e..3f646eac7cb 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -3,6 +3,7 @@ desc = "A suit that protects against minor chemical spills." icon_state = "labcoat_open" item_state = "labcoat" + blood_overlay_type = "coat" body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index ecf12943e4b..2b846ad7701 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -13,6 +13,7 @@ desc = "Blue Pride, Station Wide" icon_state = "bluetag" item_state = "bluetag" + blood_overlay_type = "armor" body_parts_covered = UPPER_TORSO|LOWER_TORSO allowed = list (/obj/item/weapon/gun/energy/laser/bluetag) @@ -21,6 +22,7 @@ desc = "Pew pew pew" icon_state = "redtag" item_state = "redtag" + blood_overlay_type = "armor" body_parts_covered = UPPER_TORSO|LOWER_TORSO allowed = list (/obj/item/weapon/gun/energy/laser/redtag) @@ -95,6 +97,7 @@ desc = "For some classy, murderous fun." icon_state = "vest" item_state = "wcoat" + blood_overlay_type = "armor" body_parts_covered = UPPER_TORSO|LOWER_TORSO diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 09bdf7d44c6..db754f0c8b8 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -555,15 +555,9 @@ Please contact me on #coderbus IRC. ~Carn x drop_r_hand() if(wear_suit.blood_DNA) - var/t_state - if( istype(wear_suit, /obj/item/clothing/suit/armor/vest || /obj/item/clothing/suit/wcoat) ) - t_state = "armor" - else if( istype(wear_suit, /obj/item/clothing/suit/det_suit || /obj/item/clothing/suit/labcoat) ) - t_state = "coat" - else - t_state = "suit" - lying.overlays += image("icon" = 'icons/effects/blood.dmi', "icon_state" = "[t_state]blood2") - standing.overlays += image("icon" = 'icons/effects/blood.dmi', "icon_state" = "[t_state]blood") + var/obj/item/clothing/suit/S = wear_suit + lying.overlays += image("icon" = 'icons/effects/blood.dmi', "icon_state" = "[S.blood_overlay_type]blood2") + standing.overlays += image("icon" = 'icons/effects/blood.dmi', "icon_state" = "[S.blood_overlay_type]blood") overlays_lying[SUIT_LAYER] = lying overlays_standing[SUIT_LAYER] = standing