diff --git a/code/ZAS/Phoron.dm b/code/ZAS/Phoron.dm index 124463c9d8..b4af8c2bec 100644 --- a/code/ZAS/Phoron.dm +++ b/code/ZAS/Phoron.dm @@ -172,7 +172,7 @@ var/image/contamination_overlay = image('icons/effects/contamination.dmi') if(vsc.plc.PHORONGUARD_ONLY) return 1 - return BIT_TEST_ALL(coverage, UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS) + return BIT_TEST_ALL(coverage, CHEST|LEGS|FEET|ARMS|HANDS) /mob/living/carbon/human/proc/suit_contamination() //Runs over the things that can be contaminated and does so. diff --git a/code/__defines/dcs/signals.dm b/code/__defines/dcs/signals.dm index 559c528f36..cdb08e6764 100644 --- a/code/__defines/dcs/signals.dm +++ b/code/__defines/dcs/signals.dm @@ -809,3 +809,9 @@ #define COMSIG_OBSERVER_ITEM_UNEQUIPPED "observer_item_unequipped" #define COMSIG_OBSERVER_APC "observer_apc" #define COMSIG_OBSERVER_GLOBALMOVED "observer_global_move" + + +//Unittest data update +#ifdef UNIT_TEST +#define COMSIG_UNITTEST_DATA "unittest_send_data" +#endif diff --git a/code/__defines/items_clothing.dm b/code/__defines/items_clothing.dm index 2a0b2ce9de..c200c92715 100644 --- a/code/__defines/items_clothing.dm +++ b/code/__defines/items_clothing.dm @@ -120,18 +120,19 @@ #define EYES 0x4 #define UPPER_TORSO 0x8 #define LOWER_TORSO 0x10 +#define CHEST 0x18 // UPPER_TORSO | LOWER_TORSO #define LEG_LEFT 0x20 #define LEG_RIGHT 0x40 -#define LEGS 0x60 // LEG_LEFT | LEG_RIGHT +#define LEGS 0x60 // LEG_LEFT | LEG_RIGHT #define FOOT_LEFT 0x80 #define FOOT_RIGHT 0x100 -#define FEET 0x180 // FOOT_LEFT | FOOT_RIGHT +#define FEET 0x180 // FOOT_LEFT | FOOT_RIGHT #define ARM_LEFT 0x200 #define ARM_RIGHT 0x400 -#define ARMS 0x600 // ARM_LEFT | ARM_RIGHT +#define ARMS 0x600 // ARM_LEFT | ARM_RIGHT #define HAND_LEFT 0x800 #define HAND_RIGHT 0x1000 -#define HANDS 0x1800 // HAND_LEFT | HAND_RIGHT +#define HANDS 0x1800 // HAND_LEFT | HAND_RIGHT #define FULL_BODY 0xFFFF // Bitflags for the percentual amount of protection a piece of clothing which covers the body part offers. @@ -198,4 +199,4 @@ // Hair Defines #define HAIR_VERY_SHORT 0x1 -#define HAIR_TIEABLE 0x4 \ No newline at end of file +#define HAIR_TIEABLE 0x4 diff --git a/code/datums/outfits/military/sifguard.dm b/code/datums/outfits/military/sifguard.dm index fa44675b67..4814aa3b01 100644 --- a/code/datums/outfits/military/sifguard.dm +++ b/code/datums/outfits/military/sifguard.dm @@ -14,10 +14,10 @@ shoes = /obj/item/clothing/shoes/boots/tactical suit = /obj/item/clothing/suit/storage/solgov/service/sifguard -/decl/hierarchy/outfit/military/sifguard/dress +/decl/hierarchy/outfit/military/sifguard/dress //The suit was changed due to missing sprites name = OUTFIT_MILITARY("SifGuard Dress") uniform = /obj/item/clothing/under/solgov/service/sifguard shoes = /obj/item/clothing/shoes/dress - suit = /obj/item/clothing/suit/storage/solgov/dress/sifguard + suit = /obj/item/clothing/suit/storage/solgov/dress/sifguard/chief gloves = /obj/item/clothing/gloves/white - head = /obj/item/clothing/head/service/sifguard \ No newline at end of file + head = /obj/item/clothing/head/service/sifguard diff --git a/code/game/gamemodes/changeling/powers/armor.dm b/code/game/gamemodes/changeling/powers/armor.dm index 2981a98d1f..e511c61dd7 100644 --- a/code/game/gamemodes/changeling/powers/armor.dm +++ b/code/game/gamemodes/changeling/powers/armor.dm @@ -101,7 +101,7 @@ name = "chitinous mass" desc = "A tough, hard covering of black chitin." icon_state = "lingarmor" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS armor = list(melee = 75, bullet = 60, laser = 60, energy = 60, bomb = 60, bio = 0, rad = 0) //It costs 3 points, so it should be very protective. siemens_coefficient = 0.3 max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE @@ -131,7 +131,7 @@ /obj/item/clothing/gloves/combat/changeling //Combined insulated/fireproof gloves name = "chitinous gauntlets" desc = "Very resilient gauntlets made out of black chitin. It looks very durable, and can probably resist electrical shock in addition to the elements." - icon_state = "lingarmorgloves" + icon_state = "ling" armor = list(melee = 75, bullet = 60, laser = 60,energy = 60, bomb = 60, bio = 0, rad = 0) //No idea if glove armor gets checked siemens_coefficient = 0 @@ -139,10 +139,8 @@ name = "chitinous boots" desc = "Footwear made out of a hard, black chitinous material. The bottoms of these appear to have spikes that can protrude or extract itself into and out \ of the floor at will, granting the wearer stability." - icon_state = "lingboots" + icon_state = "lingarmor" armor = list(melee = 75, bullet = 60, laser = 70,energy = 60, bomb = 60, bio = 0, rad = 0) siemens_coefficient = 0.3 - cold_protection = FEET min_cold_protection_temperature = SHOE_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = FEET max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE diff --git a/code/game/gamemodes/changeling/powers/fabricate_clothing.dm b/code/game/gamemodes/changeling/powers/fabricate_clothing.dm index 5c3e3df436..f31166ec0e 100644 --- a/code/game/gamemodes/changeling/powers/fabricate_clothing.dm +++ b/code/game/gamemodes/changeling/powers/fabricate_clothing.dm @@ -157,12 +157,12 @@ var/global/list/changeling_fabricated_clothing = list( /obj/item/clothing/gloves/chameleon/changeling name = "malformed hands" - icon_state = "lingchameleon" + icon_state = "ling" item_icons = list( slot_l_hand_str = 'icons/mob/items/lefthand_gloves.dmi', slot_r_hand_str = 'icons/mob/items/righthand_gloves.dmi', ) - item_state = "lingchameleon" + item_state = "ling" desc = "Our hands have a second layer of flesh on top. We can reform our hands to resemble a large variety of fabrics and materials that biologicals \ tend to wear on their hands. Remember that these won't protect your hands from harm." origin_tech = list() diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index df277b318a..37cadb2f29 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -54,9 +54,7 @@ desc = "A hood worn by the followers of Nar-Sie." origin_tech = list(TECH_MATERIAL = 3, TECH_ARCANE = 1) flags_inv = HIDEFACE - body_parts_covered = HEAD armor = list(melee = 50, bullet = 30, laser = 50, energy = 80, bomb = 25, bio = 10, rad = 0) - cold_protection = HEAD min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE siemens_coefficient = 0 @@ -78,7 +76,6 @@ desc = "A set of armored robes worn by the followers of Nar-Sie." icon_state = "cultrobes" origin_tech = list(TECH_MATERIAL = 3, TECH_ARCANE = 1) - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS allowed = list(/obj/item/book/tome,/obj/item/melee/cultblade) armor = list(melee = 50, bullet = 30, laser = 50, energy = 80, bomb = 25, bio = 10, rad = 0) flags_inv = HIDEJUMPSUIT @@ -94,7 +91,7 @@ name = "magus robes" desc = "A set of armored robes worn by the followers of Nar-Sie." icon_state = "magusred" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT /obj/item/clothing/head/helmet/space/cult @@ -119,7 +116,6 @@ armor = list(melee = 60, bullet = 50, laser = 30, energy = 80, bomb = 30, bio = 30, rad = 30) siemens_coefficient = 0 flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS /obj/item/clothing/suit/space/cult/cultify() return diff --git a/code/game/gamemodes/technomancer/clothing.dm b/code/game/gamemodes/technomancer/clothing.dm index b25472b3cc..130f408f4d 100644 --- a/code/game/gamemodes/technomancer/clothing.dm +++ b/code/game/gamemodes/technomancer/clothing.dm @@ -1,8 +1,8 @@ /obj/item/clothing/suit/technomancer name = "chrome manipulation suit" desc = "It's a very shiny and somewhat protective suit, built to help carry cores on the user's back." - icon_state = "technomancer_suit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS|FEET|HANDS + icon_state = "technomancer" + body_parts_covered = CHEST|ARMS|LEGS|FEET|HANDS allowed = list(/obj/item/tank) armor = list(melee = 50, bullet = 20, laser = 30, energy = 30, bomb = 10, bio = 0, rad = 40) siemens_coefficient = 0.75 @@ -42,4 +42,4 @@ /obj/item/clothing/head/technomancer/master name = "master's hat" desc = "It's a somewhat silly looking blue pointed hat. This one has a gold colored metalic feather strapped to it." - icon_state = "technomancer" \ No newline at end of file + icon_state = "technomancer" diff --git a/code/game/gamemodes/technomancer/devices/boots_of_speed.dm b/code/game/gamemodes/technomancer/devices/boots_of_speed.dm index e1017d2f5b..60a28e5dbf 100644 --- a/code/game/gamemodes/technomancer/devices/boots_of_speed.dm +++ b/code/game/gamemodes/technomancer/devices/boots_of_speed.dm @@ -13,7 +13,5 @@ siemens_coefficient = 0.6 slowdown = -1 - cold_protection = FEET min_cold_protection_temperature = SHOE_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = FEET - max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE \ No newline at end of file + max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE diff --git a/code/game/gamemodes/technomancer/devices/gloves_of_regen.dm b/code/game/gamemodes/technomancer/devices/gloves_of_regen.dm index 3797b37753..0c2f5b6544 100644 --- a/code/game/gamemodes/technomancer/devices/gloves_of_regen.dm +++ b/code/game/gamemodes/technomancer/devices/gloves_of_regen.dm @@ -17,23 +17,24 @@ siemens_coefficient = 0 cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/regen/equipped(var/mob/living/carbon/human/H) if(H && H.gloves == src) - wearer = H - if(wearer.can_feel_pain()) + wearer = WEAKREF(H) + if(H.can_feel_pain()) to_chat(H, span_danger("You feel a stabbing sensation in your hands as you slide \the [src] on!")) - wearer.custom_pain("You feel a sharp pain in your hands!",1) + H.custom_pain("You feel a sharp pain in your hands!",1) ..() /obj/item/clothing/gloves/regen/dropped(var/mob/living/carbon/human/H) ..() - if(wearer) - if(wearer.can_feel_pain()) - to_chat(wearer, span_danger("You feel the hypodermic needles as you slide \the [src] off!")) - wearer.custom_pain("Your hands hurt like hell!",1) + wearer?.resolve() + H = wearer + if(ishuman(H)) + if(H.can_feel_pain()) + to_chat(H, span_danger("You feel the hypodermic needles as you slide \the [src] off!")) + H.custom_pain("Your hands hurt like hell!",1) wearer = null /obj/item/clothing/gloves/regen/Initialize(mapload) @@ -46,21 +47,23 @@ return ..() /obj/item/clothing/gloves/regen/process() - if(!wearer || wearer.isSynthetic() || wearer.stat == DEAD || wearer.nutrition <= 10) + wearer?.resolve() + var/mob/living/carbon/human/H = wearer + if(!ishuman(H) || H.isSynthetic() || H.stat == DEAD || H.nutrition <= 10) return // Robots and dead people don't have a metabolism. - if(wearer.getBruteLoss()) - wearer.adjustBruteLoss(-0.1) - wearer.nutrition = max(wearer.nutrition - 10, 0) - if(wearer.getFireLoss()) - wearer.adjustFireLoss(-0.1) - wearer.nutrition = max(wearer.nutrition - 10, 0) - if(wearer.getToxLoss()) - wearer.adjustToxLoss(-0.1) - wearer.nutrition = max(wearer.nutrition - 10, 0) - if(wearer.getOxyLoss()) - wearer.adjustOxyLoss(-0.1) - wearer.nutrition = max(wearer.nutrition - 10, 0) - if(wearer.getCloneLoss()) - wearer.adjustCloneLoss(-0.1) - wearer.nutrition = max(wearer.nutrition - 20, 0) + if(H.getBruteLoss()) + H.adjustBruteLoss(-0.1) + H.nutrition = max(H.nutrition - 10, 0) + if(H.getFireLoss()) + H.adjustFireLoss(-0.1) + H.nutrition = max(H.nutrition - 10, 0) + if(H.getToxLoss()) + H.adjustToxLoss(-0.1) + H.nutrition = max(H.nutrition - 10, 0) + if(H.getOxyLoss()) + H.adjustOxyLoss(-0.1) + H.nutrition = max(H.nutrition - 10, 0) + if(H.getCloneLoss()) + H.adjustCloneLoss(-0.1) + H.nutrition = max(H.nutrition - 20, 0) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index ed1eb8eac9..2e9ef20dde 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -905,6 +905,12 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. state2use += "_l" // testing("[src] (\ref[src]) - Slot: [slot_name], Inhands: [inhands], Worn Icon:[icon2use], Worn State:[state2use], Worn Layer:[layer2use]") + // Send icon data to unit test when it is running, hello old testing(). I'm like, your great great grandkid! THE FUTURE IS NOW OLD MAN! + #ifdef UNIT_TEST + var/mob/living/carbon/human/H = loc + if(ishuman(H)) + SEND_SIGNAL(H, COMSIG_UNITTEST_DATA, list("set_slot",slot_name,icon2use,state2use,inhands,type,H.species?.name)) + #endif //Generate the base onmob icon var/icon/standing_icon = icon(icon = icon2use, icon_state = state2use) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 6a30ca02fe..c7d023eb13 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -82,7 +82,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM //FINE SMOKABLES// ////////////////// /obj/item/clothing/mask/smokable - name = "smokable item" + name = DEVELOPER_WARNING_NAME // "smokable item" desc = "You're not sure what this is. You should probably ahelp it." body_parts_covered = 0 var/lit = 0 diff --git a/code/game/objects/items/weapons/ecigs.dm b/code/game/objects/items/weapons/ecigs.dm index 423e7df8cd..623b721299 100644 --- a/code/game/objects/items/weapons/ecigs.dm +++ b/code/game/objects/items/weapons/ecigs.dm @@ -1,5 +1,5 @@ /obj/item/clothing/mask/smokable/ecig - name = "electronic cigarette" + name = DEVELOPER_WARNING_NAME // "electronic cigarette" desc = "For the modern approach to smoking." icon = 'icons/obj/ecig.dmi' var/active = 0 diff --git a/code/game/objects/items/weapons/material/material_armor.dm b/code/game/objects/items/weapons/material/material_armor.dm index a85d088a47..1ed20730b7 100644 --- a/code/game/objects/items/weapons/material/material_armor.dm +++ b/code/game/objects/items/weapons/material/material_armor.dm @@ -42,10 +42,6 @@ Protectiveness | Armor % if(material_key) // May still be null if a material was not specified as a default. set_material(material_key) -/obj/item/clothing/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() - /obj/item/clothing/get_material() return material @@ -214,7 +210,7 @@ Protectiveness | Armor % desc = "A thin plate of padded material, designed to fit into a plate carrier. Attaches to a plate carrier." icon = 'icons/obj/clothing/modular_armor.dmi' icon_state = "armor_light" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST slot = ACCESSORY_SLOT_ARMOR_C material_armor_modifier = 0.8 material_slowdown_modifier = 0.5 //Subtracted from total slowdown @@ -225,7 +221,7 @@ Protectiveness | Armor % desc = "A thick plate of padded material, designed to fit into a plate carrier. Attaches to a plate carrier." icon = 'icons/obj/clothing/modular_armor.dmi' icon_state = "armor_medium" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST slot = ACCESSORY_SLOT_ARMOR_C material_armor_modifier = 1.2 material_slowdown_modifier = 0 @@ -236,7 +232,7 @@ Protectiveness | Armor % desc = "A composite plate of custom machined material, designed to fit into a plate carrier. Attaches to a plate carrier." icon = 'icons/obj/clothing/modular_armor.dmi' icon_state = "armor_tactical" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST slot = ACCESSORY_SLOT_ARMOR_C material_armor_modifier = 1.2 material_slowdown_modifier = 0.5 diff --git a/code/game/objects/structures/crates_lockers/closets/fitness.dm b/code/game/objects/structures/crates_lockers/closets/fitness.dm index f4c2778888..3496c58a05 100644 --- a/code/game/objects/structures/crates_lockers/closets/fitness.dm +++ b/code/game/objects/structures/crates_lockers/closets/fitness.dm @@ -46,9 +46,6 @@ /obj/item/clothing/under/swimsuit/striped, /obj/item/clothing/under/swimsuit/white, /obj/item/clothing/under/swimsuit/earth, - /obj/item/clothing/under/wetsuit, - /obj/item/clothing/under/wetsuit_rec, - /obj/item/clothing/under/wetsuit_skimpy, /obj/item/clothing/mask/snorkel = 2, /obj/item/clothing/shoes/swimmingfins = 2) diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index 821dde398e..2f680bae5c 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -354,7 +354,7 @@ corpsehelmet = /obj/item/clothing/head/beret/solgov/sifguard corpsegloves = /obj/item/clothing/gloves/duty corpseshoes = /obj/item/clothing/shoes/boots/tactical - corpsepocket1 = /obj/item/clothing/accessory/armor/tag/sifguard + //corpsepocket1 = /obj/item/clothing/accessory/armor/tag/sifguard corpseid = 1 corpseidjob = "Sif Defense Force Patrolman" diff --git a/code/modules/client/preference_setup/loadout/loadout_shoes.dm b/code/modules/client/preference_setup/loadout/loadout_shoes.dm index 6a3e886c08..86cc834676 100644 --- a/code/modules/client/preference_setup/loadout/loadout_shoes.dm +++ b/code/modules/client/preference_setup/loadout/loadout_shoes.dm @@ -171,9 +171,9 @@ "cowboy boots, black"=/obj/item/clothing/shoes/boots/cowboy/black, "cowboy boots, white"=/obj/item/clothing/shoes/boots/cowboy/white, "cowboy boots, fancy"=/obj/item/clothing/shoes/boots/cowboy/fancy, - "cowboy boots, snakeskin"=/obj/item/clothing/shoes/boots/cowboy/snakeskin, - "cowboy boots, green"=/obj/item/clothing/shoes/boots/cowboy/green, - "cowboy boots, blue"=/obj/item/clothing/shoes/boots/cowboy/blue + "cowboy boots, snakeskin"=/obj/item/clothing/shoes/boots/cowboy/snakeskin + //"cowboy boots, green"=/obj/item/clothing/shoes/boots/cowboy/green, + //"cowboy boots, blue"=/obj/item/clothing/shoes/boots/cowboy/blue ) gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) diff --git a/code/modules/client/preference_setup/loadout/loadout_suit.dm b/code/modules/client/preference_setup/loadout/loadout_suit.dm index ea4a8cc52f..56ee5a83b3 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit.dm @@ -39,7 +39,7 @@ ..() var/list/selector_uniforms = list( "classic"=/obj/item/clothing/suit/storage/toggle/bomber, - "classic alternative"=/obj/item/clothing/suit/storage/bomber/alt, + "classic alternative"=/obj/item/clothing/suit/storage/bomber, "retro"=/obj/item/clothing/suit/storage/toggle/bomber/retro ) gear_tweaks += new/datum/gear_tweak/path(sortAssoc(selector_uniforms)) diff --git a/code/modules/clothing/accessories/accessory.dm b/code/modules/clothing/accessories/accessory.dm index 2936d92d38..69cd7f66f9 100644 --- a/code/modules/clothing/accessories/accessory.dm +++ b/code/modules/clothing/accessories/accessory.dm @@ -7,6 +7,7 @@ appearance_flags = RESET_COLOR // Stops has_suit's color from being multiplied onto the accessory slot_flags = SLOT_TIE w_class = ITEMSIZE_SMALL + var/glove_level = 1 // What 'level' the accessory is on if equipped on the gloveslot. Lower = things can be put on top of it. var/slot = ACCESSORY_SLOT_DECOR var/can_remove = TRUE // Can it be taken off once attached? var/obj/item/clothing/has_suit = null // The suit the tie may be attached to @@ -16,7 +17,6 @@ var/punch_force = 0 // added melee damage var/punch_damtype = BRUTE // added melee damage type var/concealed_holster = 0 - var/mob/living/carbon/human/wearer = null // To check if the wearer changes, so species spritesheets change properly. var/list/on_rolled = list() // Used when jumpsuit sleevels are rolled ("rolled" entry) or it's rolled down ("down"). Set to "none" to hide in those states. sprite_sheets = list(SPECIES_TESHARI = 'icons/inventory/accessory/mob_teshari.dmi') //Teshari can into webbing, too! drop_sound = 'sound/items/drop/accessory.ogg' @@ -45,10 +45,15 @@ return var/tmp_icon_state = "[overlay_state? "[overlay_state]" : "[icon_state]"]" if(ishuman(has_suit.loc)) - wearer = has_suit.loc + wearer = WEAKREF(has_suit.loc) else wearer = null + wearer?.resolve() + var/mob/living/carbon/human/H = wearer + if(!ishuman(H)) + return + if(istype(loc,/obj/item/clothing/under)) var/obj/item/clothing/under/C = loc if(on_rolled["down"] && C.rolled_down > 0) @@ -60,8 +65,8 @@ if("[tmp_icon_state]_mob" in cached_icon_states(icon_override)) tmp_icon_state = "[tmp_icon_state]_mob" mob_overlay = image("icon" = icon_override, "icon_state" = "[tmp_icon_state]") - else if(wearer && LAZYACCESS(sprite_sheets, wearer.species.get_bodytype(wearer))) //Teshari can finally into webbing, too! - mob_overlay = image("icon" = sprite_sheets[wearer.species.get_bodytype(wearer)], "icon_state" = "[tmp_icon_state]") + else if(H && LAZYACCESS(sprite_sheets, H.species.get_bodytype(H))) //Teshari can finally into webbing, too! + mob_overlay = image("icon" = sprite_sheets[H.species.get_bodytype(H)], "icon_state" = "[tmp_icon_state]") else mob_overlay = image("icon" = INV_ACCESSORIES_DEF_ICON, "icon_state" = "[tmp_icon_state]") if(addblends) @@ -198,6 +203,8 @@ desc = "Cylindrical looking tubes that go over your arms, weird." slot_flags = SLOT_OCLOTHING | SLOT_GLOVES | SLOT_TIE body_parts_covered = ARMS + heat_protection = ARMS + cold_protection = ARMS description_info = "Wearable as gloves, or attachable to uniforms. May visually conflict with actual gloves when attached to uniforms. Caveat emptor." icon_state = "maid_arms" diff --git a/code/modules/clothing/accessories/armor.dm b/code/modules/clothing/accessories/armor.dm index 2262cc4650..844f42e322 100644 --- a/code/modules/clothing/accessories/armor.dm +++ b/code/modules/clothing/accessories/armor.dm @@ -87,7 +87,9 @@ name = "light armor plate" desc = "A basic armor plate made of steel-reinforced synthetic fibers. Attaches to a plate carrier." icon_state = "armor_light" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST + heat_protection = CHEST + cold_protection = CHEST armor = list(melee = 30, bullet = 15, laser = 40, energy = 10, bomb = 25, bio = 0, rad = 0) slot = ACCESSORY_SLOT_ARMOR_C @@ -189,6 +191,8 @@ icon_state = "armguards" gender = PLURAL body_parts_covered = ARMS + heat_protection = ARMS + cold_protection = ARMS armor = list(melee = 40, bullet = 40, laser = 40, energy = 25, bomb = 30, bio = 0, rad = 0) slot = ACCESSORY_SLOT_ARMOR_A @@ -254,6 +258,8 @@ icon_state = "legguards" gender = PLURAL body_parts_covered = LEGS + heat_protection = LEGS + cold_protection = LEGS armor = list(melee = 40, bullet = 40, laser = 40, energy = 25, bomb = 30, bio = 0, rad = 0) slot = ACCESSORY_SLOT_ARMOR_L @@ -319,12 +325,12 @@ icon_state = "solflag" slot = ACCESSORY_SLOT_ARMOR_M w_class = ITEMSIZE_SMALL - +/* //Lost to time. /obj/item/clothing/accessory/armor/tag/sifguard name = "\improper Sif Defense Force crest" desc = "An emblem depicting the crest of the Sif Defense Force." icon_state = "ecflag" - +*/ /obj/item/clothing/accessory/armor/tag/sec name = "\improper POLICE tag" desc = "An armor tag with the word POLICE printed in silver lettering on it." diff --git a/code/modules/clothing/accessories/badges_vr.dm b/code/modules/clothing/accessories/badges_vr.dm index 091b8eeb65..2f0742526b 100644 --- a/code/modules/clothing/accessories/badges_vr.dm +++ b/code/modules/clothing/accessories/badges_vr.dm @@ -58,13 +58,15 @@ return ..() /obj/item/clothing/accessory/dosimeter/proc/check_holder() - if(wearer) - if(current_film && (wearer.radiation >= 25) && (current_film.state == 0)) + wearer?.resolve() + var/mob/living/carbon/human/H = wearer + if(H) + if(current_film && (H.radiation >= 25) && (current_film.state == 0)) update_state(1) visible_message(span_warning("The film of \the [src] starts to darken.")) desc = "This seems like a dosimeter, but the film has darkened." sleep(30) - else if(current_film && (wearer.radiation >= 50) && (current_film.state == 1)) + else if(current_film && (H.radiation >= 50) && (current_film.state == 1)) visible_message(span_warning("The film of \the [src] has turned black!")) update_state(2) desc = "This seems like a dosimeter, but the film has turned black." diff --git a/code/modules/clothing/accessories/clothing.dm b/code/modules/clothing/accessories/clothing.dm index ace3cebe0f..f875237712 100644 --- a/code/modules/clothing/accessories/clothing.dm +++ b/code/modules/clothing/accessories/clothing.dm @@ -69,7 +69,9 @@ icon_state = "hawaiian_cyan" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST + heat_protection = CHEST + cold_protection = CHEST siemens_coefficient = 0.9 w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_OVER @@ -113,7 +115,9 @@ icon_state = "animalstyle" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST + heat_protection = CHEST + cold_protection = CHEST siemens_coefficient = 0.9 w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_OVER @@ -165,11 +169,13 @@ icon_state = "classicponcho" item_state = "classicponcho" icon_override = 'icons/inventory/accessory/mob.dmi' - var/fire_resist = T0C+100 + max_heat_protection_temperature = T0C+100 allowed = list(/obj/item/tank/emergency/oxygen) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS + heat_protection = CHEST|ARMS|LEGS + cold_protection = CHEST|ARMS|LEGS siemens_coefficient = 0.9 w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_OVER @@ -255,6 +261,8 @@ icon_state = "qmcloak" item_state = "qmcloak" body_parts_covered = null + heat_protection = null + cold_protection = null /obj/item/clothing/accessory/poncho/roles/cloak/ce name = "chief engineer's cloak" @@ -363,7 +371,9 @@ allowed = list(/obj/item/pen, /obj/item/paper, /obj/item/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, /obj/item/storage/box/matches, /obj/item/reagent_containers/food/drinks/flask) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST + heat_protection = CHEST + cold_protection = CHEST siemens_coefficient = 0.9 w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_OVER @@ -423,7 +433,11 @@ icon_override = 'icons/inventory/accessory/mob.dmi' icon_state = "sweater" slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS + heat_protection = CHEST|ARMS + cold_protection = CHEST|ARMS + max_heat_protection_temperature = ARMOR_MAX_HEAT_PROTECTION_TEMPERATURE-275 //325k/125F + min_cold_protection_temperature = ARMOR_MIN_COLD_PROTECTION_TEMPERATURE+80 //240K/-27F siemens_coefficient = 0.9 w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_OVER @@ -487,7 +501,7 @@ name = "virgin killer" desc = "A knit sweater that leaves little to the imagination." icon_state = "virginkiller" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /* * Misc diff --git a/code/modules/clothing/accessories/shiny_vr.dm b/code/modules/clothing/accessories/shiny_vr.dm index a23a0f1c69..56e49818e3 100644 --- a/code/modules/clothing/accessories/shiny_vr.dm +++ b/code/modules/clothing/accessories/shiny_vr.dm @@ -1,4 +1,5 @@ /obj/item/clothing/accessory/shiny + name = DEVELOPER_WARNING_NAME icon_override = 'icons/mob/modular_shiny_vr.dmi' icon = 'icons/obj/clothing/modular_shiny_vr.dmi' w_class = ITEMSIZE_NORMAL @@ -18,4 +19,4 @@ /obj/item/clothing/accessory/shiny/socks/poly name = "polychromic shiny socks" - polychromic = TRUE \ No newline at end of file + polychromic = TRUE diff --git a/code/modules/clothing/accessories/temperature/poncho.dm b/code/modules/clothing/accessories/temperature/poncho.dm index 0dbb48cefc..3daf851731 100644 --- a/code/modules/clothing/accessories/temperature/poncho.dm +++ b/code/modules/clothing/accessories/temperature/poncho.dm @@ -3,10 +3,10 @@ name = "thermal poncho" desc = "A simple, comfortable poncho with a thermal foil layer." slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS - heat_protection = UPPER_TORSO|LOWER_TORSO|ARMS + cold_protection = CHEST|ARMS + heat_protection = CHEST|ARMS min_cold_protection_temperature = T0C - 40 max_heat_protection_temperature = ARMOR_MAX_HEAT_PROTECTION_TEMPERATURE diff --git a/code/modules/clothing/accessories/torch.dm b/code/modules/clothing/accessories/torch.dm index aa701ceee2..463a314f3b 100644 --- a/code/modules/clothing/accessories/torch.dm +++ b/code/modules/clothing/accessories/torch.dm @@ -142,12 +142,13 @@ ribbons /************* specialty pins *************/ +/* //Lost to time. /obj/item/clothing/accessory/solgov/specialty name = "speciality blaze" desc = "A color blaze denoting fleet personnel in some special role. This one is silver." icon_state = "marinerank_command" slot = ACCESSORY_SLOT_INSIGNIA - +*/ /obj/item/clothing/accessory/solgov/specialty/janitor name = "custodial blazes" desc = "Purple blazes denoting a custodial technician." @@ -248,17 +249,20 @@ armbands /***************** armour attachments *****************/ +/obj/item/clothing/accessory/armor/tag + name = DEVELOPER_WARNING_NAME +/* /obj/item/clothing/accessory/armor/tag/solgov - name = "\improper SCG Flag" - desc = "An emblem depicting the Sol Central Government's flag." + name = "\improper TCG Flag" + desc = "An emblem depicting the Terran Commonwealth's flag." icon_state = "solflag" slot = ACCESSORY_SLOT_ARMOR_M /obj/item/clothing/accessory/armor/tag/solgov/ec name = "\improper Expeditionary Corps crest" - desc = "An emblem depicting the crest of the SCG Expeditionary Corps." + desc = "An emblem depicting the crest of the TCG Expeditionary Corps." icon_state = "ecflag" - +*/ /obj/item/clothing/accessory/armor/tag/solgov/sec name = "\improper POLICE tag" desc = "An armor tag with the word POLICE printed in silver lettering on it." @@ -275,8 +279,8 @@ armour attachments icon_state = "agenttag" /obj/item/clothing/accessory/armor/tag/solgov/com - name = "\improper SCG tag" - desc = "An armor tag with the words SOL CENTRAL GOVERNMENT printed in gold lettering on it." + name = "\improper TCG tag" + desc = "An armor tag with the words COMMONWEALTH OF SOL-PROCYON printed in gold lettering on it." icon_state = "comtag" /obj/item/clothing/accessory/armor/tag/solgov/com/sec @@ -285,7 +289,7 @@ armour attachments /obj/item/clothing/accessory/armor/helmcover/blue/sol name = "peacekeeper helmet cover" - desc = "A fabric cover for armored helmets. This one is in SCG peacekeeper colors." + desc = "A fabric cover for armored helmets. This one is in TCG peacekeeper colors." /************** department tags diff --git a/code/modules/clothing/accessories/torch_vr.dm b/code/modules/clothing/accessories/torch_vr.dm index 730710fe9b..44b230f477 100644 --- a/code/modules/clothing/accessories/torch_vr.dm +++ b/code/modules/clothing/accessories/torch_vr.dm @@ -161,37 +161,18 @@ armbands /***************** armour attachments *****************/ -/obj/item/clothing/accessory/armor/tag/solgov - name = "\improper TCG Flag" - desc = "An emblem depicting the Terran Commonwealth's flag." -/obj/item/clothing/accessory/armor/tag/solgov/ec - name = "\improper Expeditionary Corps crest" - desc = "An emblem depicting the crest of the TCG Expeditionary Corps." -/obj/item/clothing/accessory/armor/tag/solgov/sec - name = "\improper POLICE tag" - desc = "An armor tag with the word POLICE printed in silver lettering on it." -/obj/item/clothing/accessory/armor/tag/solgov/medic - name = "\improper MEDIC tag" - desc = "An armor tag with the word MEDIC printed in red lettering on it." -/obj/item/clothing/accessory/armor/tag/solgov/agent - name = "\improper OCIE AGENT tag" - desc = "An armor tag with the word OCIE AGENT printed in gold lettering on it." -/obj/item/clothing/accessory/armor/tag/solgov/com - name = "\improper TCG tag" - desc = "An armor tag with the words COMMONWEALTH OF SOL-PROCYON printed in gold lettering on it." -/obj/item/clothing/accessory/armor/tag/solgov/com/sec - name = "\improper POLICE tag" - desc = "An armor tag with the words POLICE printed in gold lettering on it." -/obj/item/clothing/accessory/armor/helmcover/blue/sol - name = "peacekeeper helmet cover" - desc = "A fabric cover for armored helmets. This one is in TCG peacekeeper colors." + + + + + /********* ranks - ndf diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index f03692bf7b..ffb9bdc169 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -82,7 +82,7 @@ /obj/item/clothing/head/chameleon/New() ..() if(!clothing_choices) - var/blocked = list(src.type, /obj/item/clothing/head/justice,)//Prevent infinite loops and bad hats. + var/blocked = list(src.type)//Prevent infinite loops and bad hats. clothing_choices = generate_chameleon_choices(/obj/item/clothing/head, blocked) /obj/item/clothing/head/chameleon/emp_act(severity) //Because we don't have psych for all slots right now but still want a downside to EMP. In this case your cover's blown. diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 552997b2d1..8f9fa74b1c 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -1,5 +1,5 @@ /obj/item/clothing - name = "clothing" + name = DEVELOPER_WARNING_NAME // "Clothing" siemens_coefficient = 0.9 drop_sound = 'sound/items/drop/clothing.ogg' pickup_sound = 'sound/items/pickup/clothing.ogg' @@ -26,6 +26,7 @@ var/update_icon_define_orig = null // temp storage for original update_icon_define (if it exists) var/update_icon_define_digi = null // dmi used for the digi sprites var/fit_for_digi = FALSE // flag for if clothing has already been reskinned to digitigrade + var/datum/weakref/wearer //Who the person currently wearing us is. //Updates the icons of the mob wearing the clothing item, if any. /obj/item/clothing/proc/update_clothing_icon() @@ -288,6 +289,7 @@ slot_flags = SLOT_EARS | SLOT_TWOEARS /obj/item/clothing/ears/offear/New(var/obj/O) + if(O) name = O.name desc = O.desc icon = O.icon @@ -297,7 +299,7 @@ //////////////////////////////////////////////////////////////////////////////////////// //Gloves /obj/item/clothing/gloves - name = "gloves" + name = DEVELOPER_WARNING_NAME // "Gloves" item_icons = list( slot_l_hand_str = 'icons/mob/items/lefthand_gloves.dmi', slot_r_hand_str = 'icons/mob/items/righthand_gloves.dmi', @@ -309,13 +311,15 @@ blood_sprite_state = "bloodyhands" var/wired = 0 var/obj/item/cell/cell = 0 - var/fingerprint_chance = 0 //How likely the glove is to let fingerprints through - var/obj/item/clothing/gloves/ring = null //Covered ring - var/mob/living/carbon/human/wearer = null //Used for covered rings when dropping - var/glove_level = 2 //What "layer" the glove is on - var/overgloves = 0 //Used by gauntlets and arm_guards - var/punch_force = 0 //How much damage do these gloves add to a punch? - var/punch_damtype = BRUTE //What type of damage does this make fists be? + var/fingerprint_chance = 0 //How likely the glove is to let fingerprints through + var/obj/item/clothing/accessory/ring = null //Covered ring + var/obj/item/clothing/gloves/gloves = null //Undergloves. Used for gauntlets. + var/glove_level = 2 //What "layer" the glove is on + var/overgloves = 0 //Used by gauntlets and arm_guards + var/punch_force = 0 //How much damage do these gloves add to a punch? + var/punch_damtype = BRUTE //What type of damage does this make fists be? + heat_protection = HANDS + cold_protection = HANDS body_parts_covered = HANDS slot_flags = SLOT_GLOVES attack_verb = list("challenged") @@ -333,6 +337,16 @@ ACCESSORY_SLOT_RING\ |ACCESSORY_SLOT_WRIST) +/obj/item/clothing/gloves/Destroy() + for(var/mob/living/M in contents) + M.forceMove(get_turf(src)) + if(ring) + qdel_null(ring) + if(gloves) + qdel_null(gloves) + wearer = null + return ..() + /obj/item/clothing/proc/set_clothing_index() return @@ -403,17 +417,23 @@ punch_force = initial(punch_force) return 0 - wearer = H //TODO clean this when magboots are cleaned + wearer = WEAKREF(H) return 1 /obj/item/clothing/gloves/dropped(mob/user) ..() - if(!wearer) + var/mob/living/carbon/human/H = wearer?.resolve() + if(!ishuman(H)) return - var/mob/living/carbon/human/H = wearer - if(ring && istype(H)) + if(gloves) //We have nested gloves! Gloves under our gloves! + if(!H.equip_to_slot_if_possible(gloves, slot_gloves)) + gloves.forceMove(get_turf(src)) + if(ring) + gloves.ring = ring + src.gloves = null + else if(ring && istype(H)) //We do NOT have gloves under our gloves but have a ring under our glove instead! if(!H.equip_to_slot_if_possible(ring, slot_gloves)) ring.forceMove(get_turf(src)) src.ring = null @@ -433,7 +453,7 @@ //Rings /obj/item/clothing/gloves/ring - name = "ring" + name = DEVELOPER_WARNING_NAME // "ring" w_class = ITEMSIZE_TINY icon = 'icons/inventory/hands/item.dmi' gender = NEUTER @@ -449,13 +469,15 @@ /////////////////////////////////////////////////////////////////////// //Head /obj/item/clothing/head - name = "head" + name = DEVELOPER_WARNING_NAME // "Head" icon = 'icons/inventory/head/item.dmi' item_icons = list( slot_l_hand_str = 'icons/mob/items/lefthand_hats.dmi', slot_r_hand_str = 'icons/mob/items/righthand_hats.dmi', ) body_parts_covered = HEAD + heat_protection = HEAD + cold_protection = HEAD slot_flags = SLOT_HEAD w_class = ITEMSIZE_SMALL blood_sprite_state = "helmetblood" @@ -566,7 +588,8 @@ slot_l_hand_str = 'icons/mob/items/lefthand_masks.dmi', slot_r_hand_str = 'icons/mob/items/righthand_masks.dmi', ) - body_parts_covered = HEAD + heat_protection = FALSE //No heat protection anywhere + cold_protection = FALSE //No heat protection anywhere slot_flags = SLOT_MASK body_parts_covered = FACE|EYES blood_sprite_state = "maskblood" @@ -595,7 +618,7 @@ /////////////////////////////////////////////////////////////////////// //Shoes /obj/item/clothing/shoes - name = "shoes" + name = DEVELOPER_WARNING_NAME // "shoes" icon = 'icons/inventory/feet/item.dmi' item_icons = list( slot_l_hand_str = 'icons/mob/items/lefthand_shoes.dmi', @@ -605,6 +628,8 @@ gender = PLURAL //Carn: for grammarically correct text-parsing siemens_coefficient = 0.9 body_parts_covered = FEET + heat_protection = FEET + cold_protection = FEET slot_flags = SLOT_FEET blood_sprite_state = "shoeblood" @@ -617,6 +642,7 @@ var/snow_speed = 0 //Speed boost/decrease on snow, lower/negative values mean more speed var/step_volume_mod = 1 //How quiet or loud footsteps in this shoe are + var/obj/item/clothing/shoes/shoes = null //If we are wearing shoes in our shoes. Used primarily for magboots. permeability_coefficient = 0.50 slowdown = SHOES_SLOWDOWN @@ -632,6 +658,13 @@ update_icon_define_digi = "icons/inventory/feet/mob_digi.dmi" +/obj/item/clothing/shoes/Destroy() + if(shoes) + qdel_null(shoes) + if(holding) + qdel_null(holding) + return ..() + /obj/item/clothing/shoes/proc/draw_knife(mob/living/user) set name = "Draw Boot Knife" set desc = "Pull out your boot knife." @@ -727,17 +760,25 @@ /////////////////////////////////////////////////////////////////////// //Suit /obj/item/clothing/suit + name = DEVELOPER_WARNING_NAME // "suit" icon = 'icons/inventory/suit/item.dmi' item_icons = list( slot_l_hand_str = 'icons/mob/items/lefthand_suits.dmi', slot_r_hand_str = 'icons/mob/items/righthand_suits.dmi', ) - name = "suit" var/fire_resist = T0C+100 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS + //Switch to taur sprites if a taur equips + sprite_sheets = list( + SPECIES_TESHARI = 'icons/inventory/suit/mob_teshari.dmi', + SPECIES_VOX = 'icons/inventory/suit/mob_vox.dmi', + SPECIES_WEREBEAST = 'icons/inventory/suit/mob_vr_werebeast.dmi') + max_heat_protection_temperature = T0C+100 allowed = list(/obj/item/tank/emergency/oxygen) armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0) slot_flags = SLOT_OCLOTHING + heat_protection = ARMS|LEGS|CHEST //At a minimum. Some might be more covering or less covering! + cold_protection = ARMS|LEGS|CHEST //At a minimum. Some might be more covering or less covering! var/blood_overlay_type = "suit" blood_sprite_state = "suitblood" //Defaults to the suit's blood overlay, so that some blood renders instead of no blood. @@ -815,9 +856,11 @@ slot_r_hand_str = 'icons/mob/items/righthand_uniforms.dmi', ) name = "under" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = ARMS|LEGS|ARMS permeability_coefficient = 0.90 slot_flags = SLOT_ICLOTHING + heat_protection = ARMS|LEGS|CHEST + cold_protection = ARMS|LEGS|CHEST armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) equip_sound = 'sound/items/jumpsuit_equip.ogg' w_class = ITEMSIZE_NORMAL @@ -1018,6 +1061,8 @@ if(rolled_down) body_parts_covered = initial(body_parts_covered) body_parts_covered &= ~(UPPER_TORSO|ARMS) + heat_protection &= ~(UPPER_TORSO|ARMS) + cold_protection &= ~(UPPER_TORSO|ARMS) if(worn_state in cached_icon_states(rolled_down_icon)) icon_override = rolled_down_icon LAZYSET(item_state_slots, slot_w_uniform_str, worn_state) @@ -1027,6 +1072,8 @@ to_chat(usr, span_notice("You roll down your [src].")) else body_parts_covered = initial(body_parts_covered) + heat_protection = initial(heat_protection) + cold_protection = initial(heat_protection) if(icon_override == rolled_down_icon) icon_override = initial(icon_override) LAZYSET(item_state_slots, slot_w_uniform_str, worn_state) @@ -1051,6 +1098,8 @@ rolled_sleeves = !rolled_sleeves if(rolled_sleeves) body_parts_covered &= ~(ARMS) + heat_protection &= ~(ARMS) + cold_protection &= ~(ARMS) if(worn_state in cached_icon_states(rolled_down_sleeves_icon)) icon_override = rolled_down_sleeves_icon LAZYSET(item_state_slots, slot_w_uniform_str, worn_state) @@ -1059,6 +1108,8 @@ to_chat(usr, span_notice("You roll up your [src]'s sleeves.")) else body_parts_covered = initial(body_parts_covered) + heat_protection = initial(heat_protection) + cold_protection = initial(heat_protection) if(icon_override == rolled_down_sleeves_icon) icon_override = initial(icon_override) LAZYSET(item_state_slots, slot_w_uniform_str, worn_state) @@ -1069,12 +1120,16 @@ sensor_mode = pick(0,1,2,3) ..() -//Vorestation edit - eject mobs from clothing before deletion /obj/item/clothing/Destroy() + STOP_PROCESSING(SSobj, src) + if(IC) + IC.clothing = null + action_circuit = null // Will get deleted by qdel-ing the IC assembly. + qdel_null(IC) for(var/mob/living/M in contents) M.forceMove(get_turf(src)) + wearer = null return ..() -//Vorestation edit end /obj/item/clothing/proc/handle_digitigrade(var/mob/user) if(ishuman(user)) diff --git a/code/modules/clothing/clothing_vr.dm b/code/modules/clothing/clothing_vr.dm index fb22241282..24e76cfaee 100644 --- a/code/modules/clothing/clothing_vr.dm +++ b/code/modules/clothing/clothing_vr.dm @@ -139,9 +139,8 @@ slot_l_hand_str = 'icons/mob/items/lefthand_masks.dmi', slot_r_hand_str = 'icons/mob/items/righthand_masks.dmi', ) - body_parts_covered = HEAD + body_parts_covered = HEAD|FACE|EYES slot_flags = SLOT_MASK - body_parts_covered = FACE|EYES item_icons = list( slot_wear_mask_str = 'icons/inventory/face/mob_vr.dmi' ) @@ -161,13 +160,6 @@ ) //"Spider" = 'icons/inventory/mask/mob_spider.dmi' Add this later when they have custom mask sprites and everything. -//Switch to taur sprites if a taur equips -/obj/item/clothing/suit - sprite_sheets = list( - SPECIES_TESHARI = 'icons/inventory/suit/mob_teshari.dmi', - SPECIES_VOX = 'icons/inventory/suit/mob_vox.dmi', - SPECIES_WEREBEAST = 'icons/inventory/suit/mob_vr_werebeast.dmi') - /obj/item/clothing/under sensor_mode = 3 var/sensorpref = 5 diff --git a/code/modules/clothing/ears/earrings.dm b/code/modules/clothing/ears/earrings.dm index 82746980bd..34cadc8e0a 100644 --- a/code/modules/clothing/ears/earrings.dm +++ b/code/modules/clothing/ears/earrings.dm @@ -1,6 +1,6 @@ //Material earrings /obj/item/clothing/ears/earring - name = "earring" + name = DEVELOPER_WARNING_NAME desc = "An earring of some kind." icon = 'icons/inventory/ears/item.dmi' @@ -75,4 +75,4 @@ /obj/item/clothing/ears/earring/dangle/diamond name = "diamond dangle earrings" - color = "#00ffe1" \ No newline at end of file + color = "#00ffe1" diff --git a/code/modules/clothing/ears/ears.dm b/code/modules/clothing/ears/ears.dm index d4bd346b1b..cf93be8e28 100644 --- a/code/modules/clothing/ears/ears.dm +++ b/code/modules/clothing/ears/ears.dm @@ -42,7 +42,7 @@ Skrell tentacle wear */ /obj/item/clothing/ears/skrell - name = "skrell tentacle wear" + name = DEVELOPER_WARNING_NAME // "skrell tentacle wear" desc = "Some stuff worn by skrell to adorn their head tentacles." icon = 'icons/inventory/ears/item.dmi' w_class = ITEMSIZE_TINY diff --git a/code/modules/clothing/glasses/glasses_vr.dm b/code/modules/clothing/glasses/glasses_vr.dm index 0101d517fc..3769b1c8e5 100644 --- a/code/modules/clothing/glasses/glasses_vr.dm +++ b/code/modules/clothing/glasses/glasses_vr.dm @@ -167,6 +167,7 @@ sprite_sheets = list(SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi') /obj/item/clothing/glasses + name = DEVELOPER_WARNING_NAME sprite_sheets = list( SPECIES_TESHARI = 'icons/inventory/eyes/mob_teshari.dmi', SPECIES_VOX = 'icons/inventory/eyes/mob_vox.dmi', diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index fe294c7186..139df762ca 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -1,5 +1,5 @@ /obj/item/clothing/glasses/hud - name = "HUD" + name = DEVELOPER_WARNING_NAME desc = "A heads-up display that provides important info in (almost) real time." flags = 0 //doesn't protect eyes because it's a monocle, duh origin_tech = list(TECH_MAGNET = 3, TECH_BIO = 2) diff --git a/code/modules/clothing/gloves/arm_guards.dm b/code/modules/clothing/gloves/arm_guards.dm index af3883ae74..54491de295 100644 --- a/code/modules/clothing/gloves/arm_guards.dm +++ b/code/modules/clothing/gloves/arm_guards.dm @@ -1,5 +1,5 @@ /obj/item/clothing/gloves/arm_guard - name = "arm guards" + name = DEVELOPER_WARNING_NAME // "arm guards" desc = "These arm guards will protect your hands and arms." body_parts_covered = HANDS|ARMS overgloves = 1 diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index f71010a232..e560986b89 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -29,10 +29,7 @@ name = "black gloves" icon_state = "black" permeability_coefficient = 0.05 - - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/orange @@ -85,6 +82,8 @@ name = "evening gloves" icon_state = "evening_gloves" addblends = "evening_gloves_a" + heat_protection = ARMS|HANDS + cold_protection = ARMS|HANDS /obj/item/clothing/gloves/fingerless desc = "A pair of gloves that don't actually cover the fingers." diff --git a/code/modules/clothing/gloves/gauntlets.dm b/code/modules/clothing/gloves/gauntlets.dm index 71df3af974..7fe039ee49 100644 --- a/code/modules/clothing/gloves/gauntlets.dm +++ b/code/modules/clothing/gloves/gauntlets.dm @@ -7,12 +7,11 @@ */ /obj/item/clothing/gloves/gauntlets //Used to cover gloves, otherwise act as gloves. - name = "gauntlets" + name = DEVELOPER_WARNING_NAME // "gauntlets" desc = "These gloves go over regular gloves." glove_level = 3 overgloves = 1 punch_force = 5 - var/obj/item/clothing/gloves/gloves = null //Undergloves /obj/item/clothing/gloves/gauntlets/mob_can_equip(mob/user, slot, disable_warning = FALSE) var/mob/living/carbon/human/H = user @@ -36,16 +35,5 @@ return 0 if(gloves) to_chat(user, "You slip \the [src] on over \the [gloves].") - wearer = H + wearer = WEAKREF(H) return 1 - -/obj/item/clothing/gloves/gauntlets/dropped(mob/user) - ..() - var/mob/living/carbon/human/H = wearer - if(gloves) - if(!H?.equip_to_slot_if_possible(gloves, slot_gloves)) - gloves.forceMove(get_turf(src)) - if(ring) - gloves.ring = ring - src.gloves = null - wearer = null diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 31e641348a..724ddc4918 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -18,9 +18,7 @@ item_state = "black" permeability_coefficient = 0.05 - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/swat @@ -30,9 +28,7 @@ item_state = "swat" siemens_coefficient = 0.50 permeability_coefficient = 0.05 - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/combat //Combined effect of SWAT gloves and insulated gloves @@ -42,9 +38,7 @@ item_state = "swat" siemens_coefficient = 0 permeability_coefficient = 0.05 - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/sterile @@ -116,9 +110,7 @@ drop_sound = 'sound/items/drop/metalboots.ogg' pickup_sound = 'sound/items/pickup/toolbox.ogg' - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/ranger diff --git a/code/modules/clothing/gloves/miscellaneous_vr.dm b/code/modules/clothing/gloves/miscellaneous_vr.dm index e000e2f1e2..de68a0acc9 100644 --- a/code/modules/clothing/gloves/miscellaneous_vr.dm +++ b/code/modules/clothing/gloves/miscellaneous_vr.dm @@ -11,9 +11,7 @@ item_state = "black" siemens_coefficient = 2 permeability_coefficient = 0.05 - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE armor = list(melee = 80, bullet = 50, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) @@ -31,9 +29,7 @@ item_state = "black" siemens_coefficient = 2 permeability_coefficient = 0.05 - cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) @@ -59,9 +55,9 @@ SPECIES_VOX = 'icons/inventory/hands/mob_vr_vox.dmi', SPECIES_WEREBEAST = 'icons/inventory/hands/mob_vr_werebeast.dmi') - cold_protection = HANDS + heat_protection = HANDS|ARMS + cold_protection = HANDS|ARMS min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE /obj/item/clothing/gloves/black/bloodletter diff --git a/code/modules/clothing/head/collectable.dm b/code/modules/clothing/head/collectable.dm index ea8bf1b01b..b171d66795 100644 --- a/code/modules/clothing/head/collectable.dm +++ b/code/modules/clothing/head/collectable.dm @@ -2,7 +2,7 @@ //Hat Station 13 /obj/item/clothing/head/collectable - name = "collectable hat" + name = DEVELOPER_WARNING_NAME desc = "A rare collectable hat." /obj/item/clothing/head/collectable/petehat diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index 2f6f066021..6685641417 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -44,7 +44,6 @@ /obj/item/clothing/head/hardhat/red icon_state = "hardhat0_red" name = "emergency fire helmet" - heat_protection = HEAD max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE min_pressure_protection = 0.2* ONE_ATMOSPHERE max_pressure_protection = 20 * ONE_ATMOSPHERE @@ -60,8 +59,6 @@ min_pressure_protection = 0.5 * ONE_ATMOSPHERE max_pressure_protection = 20 * ONE_ATMOSPHERE body_parts_covered = HEAD|FACE|EYES - heat_protection = HEAD - cold_protection = HEAD min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE flash_protection = FLASH_PROTECTION_MODERATE sprite_sheets = list( diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 29caa0d81a..dab0fecde4 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -7,9 +7,7 @@ flags = THICKMATERIAL armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0) flags_inv = HIDEEARS|BLOCKHEADHAIR - cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HEAD max_heat_protection_temperature = HELMET_MAX_HEAT_PROTECTION_TEMPERATURE siemens_coefficient = 0.7 w_class = ITEMSIZE_NORMAL diff --git a/code/modules/clothing/head/hood.dm b/code/modules/clothing/head/hood.dm index 041a29b55d..99983a6a81 100644 --- a/code/modules/clothing/head/hood.dm +++ b/code/modules/clothing/head/hood.dm @@ -1,9 +1,7 @@ /obj/item/clothing/head/hood name = "hood" desc = "A generic hood." - icon_state = "generic_hood" - body_parts_covered = HEAD - cold_protection = HEAD + icon_state = "chaplain_hood" //just default to this, whatever. default_hood never existed. flags_inv = HIDEEARS | BLOCKHAIR // Winter coats @@ -57,7 +55,7 @@ /obj/item/clothing/head/hood/winter/medical/para name = "paramedic winter hood" desc = "A white winter coat hood with blue markings." - icon_state = "winterhood_para" + icon_state = "winterhood_medicalalt" //winterhood_para didn't exist, so...Sorry, paramedic. armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) /obj/item/clothing/head/hood/winter/medical/chemist @@ -237,7 +235,7 @@ /obj/item/clothing/head/hood/cloak/asymmetric name = "asymmetric cloak hood" desc = "A hood attached to an asymmetric cloak." - icon_state = "royalist_cloakhood" + icon_state = "asymmetric_cloakhood" /obj/item/clothing/head/hood/cloak/fancy name = "fancy cloak hood" diff --git a/code/modules/clothing/head/hood_vr.dm b/code/modules/clothing/head/hood_vr.dm index fe11d5a900..c7d5725df1 100644 --- a/code/modules/clothing/head/hood_vr.dm +++ b/code/modules/clothing/head/hood_vr.dm @@ -41,7 +41,7 @@ name = "centcom winter hood" desc = "A cozy winter hood attached to a heavy winter jacket." icon = 'icons/inventory/head/item_vr.dmi' - default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob.dmi' icon_state = "winterhood_centcom" armor = list(melee = 40, bullet = 45, laser = 45, energy = 35, bomb = 40, bio = 25, rad = 25, fire = 35, acid = 50) @@ -92,4 +92,4 @@ /obj/item/clothing/head/hood/toggleable/colorable/update_icon() . = ..() - icon_state = "[initial(icon_state)][open ? "_open" : ""]" \ No newline at end of file + icon_state = "[initial(icon_state)][open ? "_open" : ""]" diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 7d9fb9b54a..1def564a0b 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -181,25 +181,6 @@ drop_sound = 'sound/items/drop/cardboardbox.ogg' pickup_sound = 'sound/items/pickup/cardboardbox.ogg' -/obj/item/clothing/head/justice - name = "justice hat" - desc = "fight for what's righteous!" - icon_state = "justicered" //Does this even exist? - flags_inv = BLOCKHAIR - body_parts_covered = HEAD|EYES - -/obj/item/clothing/head/justice/blue - icon_state = "justiceblue" - -/obj/item/clothing/head/justice/yellow - icon_state = "justiceyellow" - -/obj/item/clothing/head/justice/green - icon_state = "justicegreen" - -/obj/item/clothing/head/justice/pink - icon_state = "justicepink" - /obj/item/clothing/head/rabbitears name = "rabbit ears" desc = "Wearing these makes you looks useless, and only good for your sex appeal." @@ -364,18 +345,6 @@ body_parts_covered = 0 item_state_slots = list(slot_r_hand_str = "taq", slot_l_hand_str = "taq") -/obj/item/clothing/head/cowl - name = "black cowl" - desc = "A gold-lined black cowl. It gives off uncomfortable cult vibes, but fancy." - icon_state = "cowl" - body_parts_covered = 0 - -/obj/item/clothing/head/cowl - name = "white cowl" - desc = "A gold-lined white cowl. It gives off uncomfortable cult vibes, but fancy." - icon_state = "whitecowl" - body_parts_covered = 0 - /obj/item/clothing/head/blackngoldheaddress name = "black and gold headdress" desc = "An odd looking headdress that covers the eyes." @@ -398,7 +367,7 @@ /obj/item/clothing/head/beret/corp/pcrc name = "\improper PCRC beret" desc = "A black beret with a PCRC logo insignia, denoting service with Proxima Centauri Risk Control. For private security personnel that are more inclined towards style than safety." - icon_state = "beret_black_observatory" + icon_state = "beret_black_pcrc" /obj/item/clothing/head/beret/corp/hedberg diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 937da8a743..e9f549052f 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -250,7 +250,7 @@ // Triggers an effect when the wearer is 'in grave danger'. // Causes brainloss when it happens. /obj/item/clothing/head/psy_crown - name = "broken crown" + name = DEVELOPER_WARNING_NAME desc = "A crown-of-thorns with a missing gem." var/tension_threshold = 125 var/cooldown = null // world.time of when this was last triggered. diff --git a/code/modules/clothing/head/pilot_helmet.dm b/code/modules/clothing/head/pilot_helmet.dm index 79f20e04a8..9cf4c70e9b 100644 --- a/code/modules/clothing/head/pilot_helmet.dm +++ b/code/modules/clothing/head/pilot_helmet.dm @@ -11,9 +11,7 @@ flags = THICKMATERIAL armor = list(melee = 20, bullet = 10, laser = 10, energy = 5, bomb = 10, bio = 0, rad = 0) flags_inv = HIDEEARS - cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HEAD max_heat_protection_temperature = HELMET_MAX_HEAT_PROTECTION_TEMPERATURE w_class = ITEMSIZE_NORMAL diff --git a/code/modules/clothing/head/pilot_helmet_vr.dm b/code/modules/clothing/head/pilot_helmet_vr.dm index 8aa36238a8..fa992e8986 100644 --- a/code/modules/clothing/head/pilot_helmet_vr.dm +++ b/code/modules/clothing/head/pilot_helmet_vr.dm @@ -6,9 +6,7 @@ icon_state = "pilot1" armor = list(melee = 20, bullet = 10, laser = 10, energy = 5, bomb = 10, bio = 0, rad = 0) flags_inv = HIDEEARS - cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HEAD max_heat_protection_temperature = HELMET_MAX_HEAT_PROTECTION_TEMPERATURE w_class = ITEMSIZE_NORMAL item_icons = list(slot_head_str = 'icons/inventory/head/mob_vr.dmi') diff --git a/code/modules/clothing/head/solgov_vr.dm b/code/modules/clothing/head/solgov_vr.dm index f1288d506e..ad89250111 100644 --- a/code/modules/clothing/head/solgov_vr.dm +++ b/code/modules/clothing/head/solgov_vr.dm @@ -280,8 +280,9 @@ /obj/item/clothing/head/terran/navy/service name = "Ares service cover" desc = "A service uniform cover, worn by low-ranking crew within the Ares Confederation Navy." + icon_state = "beret_navy_service" /obj/item/clothing/head/terran/navy/service/command name = "Ares command service cover" desc = "A service uniform cover, worn by high-ranking crew within the Ares Confederation Navy." - + icon_state = "beret_navy_service" diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm index b98e333e38..18a5c62d6b 100644 --- a/code/modules/clothing/masks/gasmask.dm +++ b/code/modules/clothing/masks/gasmask.dm @@ -68,7 +68,11 @@ item_state_slots = list(slot_r_hand_str = "gas", slot_l_hand_str = "gas") armor = list(melee = 0, bullet = 0, laser = 2,energy = 2, bomb = 0, bio = 90, rad = 0) body_parts_covered = HEAD|FACE|EYES - + heat_protection = HEAD + cold_protection = HEAD + sprite_sheets = list( + SPECIES_TESHARI = 'icons/inventory/face/mob_vr_teshari.dmi' + ) /obj/item/clothing/mask/gas/plaguedoctor/gold name = "gold plague doctor mask" desc = "A modernised version of the classic design, this mask will not only filter out phoron but it can also be connected to an air supply. This one is gold." diff --git a/code/modules/clothing/masks/gasmask_vr.dm b/code/modules/clothing/masks/gasmask_vr.dm index a569b615bf..de2b97d88a 100644 --- a/code/modules/clothing/masks/gasmask_vr.dm +++ b/code/modules/clothing/masks/gasmask_vr.dm @@ -18,8 +18,3 @@ icon_override = 'icons/inventory/face/mob_vr.dmi' body_parts_covered = FACE|EYES flags_inv = HIDEEARS|HIDEEYES|HIDEFACE - -/obj/item/clothing/mask/gas/plaguedoctor - sprite_sheets = list( - SPECIES_TESHARI = 'icons/inventory/face/mob_vr_teshari.dmi' - ) \ No newline at end of file diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 7bf259b0bd..21a54809a1 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -97,6 +97,7 @@ //scarves (fit in in mask slot) //None of these actually have on-mob sprites... +/* //Lost to time. /obj/item/clothing/mask/bluescarf name = "blue neck scarf" desc = "A blue neck scarf." @@ -123,11 +124,11 @@ item_flags = FLEXIBLEMATERIAL w_class = ITEMSIZE_SMALL gas_transfer_coefficient = 0.90 - +*/ /obj/item/clothing/mask/ninjascarf name = "ninja scarf" desc = "A stealthy, dark scarf." - icon_state = "ninja_scarf" + icon_state = "s-ninja" body_parts_covered = FACE item_flags = FLEXIBLEMATERIAL w_class = ITEMSIZE_SMALL @@ -187,7 +188,7 @@ body_parts_covered = HEAD|FACE|EYES w_class = ITEMSIZE_SMALL siemens_coefficient = 0.9 - +/* //Lost to time. /obj/item/clothing/mask/nock_scarab name = "nock mask (blue, scarab)" desc = "To Nock followers, masks symbolize rebirth and a new persona. Damaging the wearer's mask is generally considered an attack on their person itself." @@ -215,7 +216,7 @@ icon_state = "nock_ornate" w_class = ITEMSIZE_SMALL body_parts_covered = HEAD|FACE - +*/ /obj/item/clothing/mask/horsehead/New() ..() // The horse mask doesn't cause voice changes by default, the wizard spell changes the flag as necessary diff --git a/code/modules/clothing/masks/tesh_synth_facemask.dm b/code/modules/clothing/masks/tesh_synth_facemask.dm index 1bead921c8..550c807938 100644 --- a/code/modules/clothing/masks/tesh_synth_facemask.dm +++ b/code/modules/clothing/masks/tesh_synth_facemask.dm @@ -4,7 +4,6 @@ desc = "A round dark muzzle made of LEDs." flags = PHORONGUARD //Since it cant easily be removed... item_flags = AIRTIGHT | FLEXIBLEMATERIAL | BLOCK_GAS_SMOKE_EFFECT //This should make it properly work as a mask... and allow you to eat stuff through it! - body_parts_covered = FACE|EYES icon = 'icons/mob/species/teshari/synth_facemask.dmi' icon_override = 'icons/mob/species/teshari/synth_facemask.dmi' icon_state = "synth_facemask" @@ -28,6 +27,7 @@ return ..() /obj/item/clothing/mask/synthfacemask/Destroy() + maskmaster = null . = ..() STOP_PROCESSING(SSprocessing, src) diff --git a/code/modules/clothing/shoes/boots.dm b/code/modules/clothing/shoes/boots.dm index 172d5dcb3e..0c485247d2 100644 --- a/code/modules/clothing/shoes/boots.dm +++ b/code/modules/clothing/shoes/boots.dm @@ -12,6 +12,8 @@ desc = "Lacking a durasteel horse to ride." icon_state = "cowboy" drop_sound = 'sound/items/drop/leather.ogg' + heat_protection = FEET|LEGS + cold_protection = FEET|LEGS /obj/item/clothing/shoes/boots/cowboy/classic name = "classic cowboy boots" @@ -22,7 +24,7 @@ name = "snake skin boots" desc = "A pair of cowboy boots made from python skin." icon_state = "cowboy_snakeskin" - +/* //Icons lost to time. /obj/item/clothing/shoes/boots/cowboy/green name = "green cowboy boots" desc = "A classic looking pair of durable cowboy boots made out of snappy green leather." @@ -32,7 +34,7 @@ name = "blue cowboy boots" desc = "A classic looking pair of durable cowboy boots made out of extra fancy blue leather." icon_state = "cowboy_blue" - +*/ /obj/item/clothing/shoes/boots/cowboy/brown name = "brown cowboy boots" desc = "A small sticker lets you know they've been inspected for snakes, It is unclear how long ago the inspection took place..." @@ -74,6 +76,8 @@ desc = "Taller synthleather boots with an artificial shine." icon_state = "kneeboots" item_state_slots = list(slot_r_hand_str = "jackboots", slot_l_hand_str = "jackboots") + heat_protection = FEET|LEGS + cold_protection = FEET|LEGS /obj/item/clothing/shoes/boots/jackboots/toeless/knee name = "toe-less knee-length jackboots" @@ -81,12 +85,16 @@ icon_state = "digikneeboots" item_state_slots = list(slot_r_hand_str = "jackboots", slot_l_hand_str = "jackboots") species_restricted = null + heat_protection = FEET|LEGS + cold_protection = FEET|LEGS /obj/item/clothing/shoes/boots/jackboots/thigh name = "thigh-length jackboots" desc = "Even taller synthleather boots with an artificial shine." icon_state = "thighboots" item_state_slots = list(slot_r_hand_str = "jackboots", slot_l_hand_str = "jackboots") + heat_protection = FEET|LEGS + cold_protection = FEET|LEGS /obj/item/clothing/shoes/boots/jackboots/toeless/thigh name = "toe-less thigh-length jackboots" @@ -94,6 +102,8 @@ icon_state = "digithighboots" item_state_slots = list(slot_r_hand_str = "jackboots", slot_l_hand_str = "jackboots") species_restricted = null + heat_protection = FEET|LEGS + cold_protection = FEET|LEGS /obj/item/clothing/shoes/boots/jackboots/recolorable icon_state = "boots_recolor" @@ -118,9 +128,7 @@ name = "winter boots" desc = "Boots lined with 'synthetic' animal fur." icon_state = "winterboots" - cold_protection = FEET min_cold_protection_temperature = SHOE_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = FEET max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE snow_speed = -1 step_volume_mod = 0.8 @@ -233,9 +241,7 @@ item_flags = NOSLIP siemens_coefficient = 0.6 - cold_protection = FEET min_cold_protection_temperature = SHOE_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = FEET max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE //Stolen from CM, refurbished to be less terrible. diff --git a/code/modules/clothing/shoes/leg_guards.dm b/code/modules/clothing/shoes/leg_guards.dm index 01c8e95cdd..0b90c91654 100644 --- a/code/modules/clothing/shoes/leg_guards.dm +++ b/code/modules/clothing/shoes/leg_guards.dm @@ -1,5 +1,5 @@ /obj/item/clothing/shoes/leg_guard - name = "leg guards" + name = DEVELOPER_WARNING_NAME // "leg guards" desc = "These will protect your legs and feet." body_parts_covered = LEGS|FEET slowdown = SHOES_SLOWDOWN+0.5 diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 5965cc1768..532c897c64 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -14,8 +14,6 @@ var/magpulse = 0 var/icon_base = "magboots" actions_types = list(/datum/action/item_action/toggle_magboots) - var/obj/item/clothing/shoes/shoes = null //Undershoes - var/mob/living/carbon/human/wearer = null //For shoe procs step_volume_mod = 1.3 drop_sound = 'sound/items/drop/metalboots.ogg' pickup_sound = 'sound/items/pickup/toolbox.ogg' @@ -45,6 +43,7 @@ user.update_mob_action_buttons() /obj/item/clothing/shoes/magboots/mob_can_equip(mob/user, slot, disable_warning = FALSE) + var/mob/living/carbon/human/H = user if(H.shoes) @@ -67,16 +66,19 @@ if(slot && slot == slot_shoes) to_chat(user, "You slip \the [src] on over \the [shoes].") set_slowdown() - wearer = H + wearer = WEAKREF(H) return 1 /obj/item/clothing/shoes/magboots/dropped(mob/user) ..() + + wearer?.resolve() var/mob/living/carbon/human/H = wearer - if(shoes) + + if(ishuman(H) && shoes) if(!H.equip_to_slot_if_possible(shoes, slot_shoes)) shoes.forceMove(get_turf(src)) - src.shoes = null + shoes = null wearer = null /obj/item/clothing/shoes/magboots/examine(mob/user) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 52a1a95953..fcc6f32cb2 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -118,9 +118,7 @@ force = 2 siemens_coefficient = 0.7 - cold_protection = FEET min_cold_protection_temperature = SHOE_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = FEET max_heat_protection_temperature = SHOE_MAX_HEAT_PROTECTION_TEMPERATURE species_restricted = null diff --git a/code/modules/clothing/spacesuits/alien.dm b/code/modules/clothing/spacesuits/alien.dm index dcdf6275e5..e9e9d77daa 100644 --- a/code/modules/clothing/spacesuits/alien.dm +++ b/code/modules/clothing/spacesuits/alien.dm @@ -17,7 +17,6 @@ desc = "Seems like a wetsuit with reinforced plating seamlessly attached to it. Very chic." armor = list(melee = 20, bullet = 20, laser = 20, energy = 50, bomb = 50, bio = 100, rad = 50) allowed = list(/obj/item/flashlight,/obj/item/tank,/obj/item/storage/bag/ore,/obj/item/t_scanner,/obj/item/pickaxe, /obj/item/rcd) - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE species_restricted = list(SPECIES_SKRELL,SPECIES_HUMAN) @@ -36,7 +35,6 @@ allowed = list(/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword,/obj/item/handcuffs,/obj/item/tank) armor = list(melee = 60, bullet = 50, laser = 40,energy = 15, bomb = 30, bio = 100, rad = 50) siemens_coefficient = 0.2 - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE species_restricted = list(SPECIES_VOX) @@ -86,4 +84,4 @@ /obj/item/clothing/suit/space/vox/medic name = "alien armour" icon_state = "vox-medic" - desc = "An almost organic looking nonhuman pressure suit." \ No newline at end of file + desc = "An almost organic looking nonhuman pressure suit." diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index b0c3cd073a..372fb7660e 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -17,7 +17,7 @@ gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 item_flags = 0 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/tank/emergency/oxygen, /obj/item/flashlight,/obj/item/gun/energy, /obj/item/gun/projectile, /obj/item/ammo_magazine, /obj/item/ammo_casing, /obj/item/melee/baton,/obj/item/handcuffs) slowdown = 1.5 armor = list(melee = 65, bullet = 50, laser = 50, energy = 25, bomb = 50, bio = 100, rad = 50) @@ -43,7 +43,7 @@ /obj/item/clothing/head/helmet/space/deathsquad/beret name = "officer's beret" desc = "An armored beret commonly used by special operations officers." - icon_state = "beret_badge" + icon_state = "beret_black_security" //old sprite was lost, this is the next closest. item_state_slots = list(slot_r_hand_str = "beret", slot_l_hand_str = "beret") armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 30, rad = 30) item_flags = 0 diff --git a/code/modules/clothing/spacesuits/rig/rig_pieces.dm b/code/modules/clothing/spacesuits/rig/rig_pieces.dm index b6d68241ac..2843ddeb1f 100644 --- a/code/modules/clothing/spacesuits/rig/rig_pieces.dm +++ b/code/modules/clothing/spacesuits/rig/rig_pieces.dm @@ -5,10 +5,7 @@ /obj/item/clothing/head/helmet/space/rig name = "helmet" item_flags = THICKMATERIAL|ALLOW_SURVIVALFOOD - flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR - body_parts_covered = HEAD|FACE|EYES - heat_protection = HEAD|FACE|EYES - cold_protection = HEAD|FACE|EYES + flags_inv = HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR light_range = 4 sprite_sheets = list( SPECIES_TAJARAN = 'icons/inventory/head/mob_tajaran.dmi', @@ -23,29 +20,22 @@ /obj/item/clothing/gloves/gauntlets/rig name = "gauntlets" + icon_state = "security_rig" flags = PHORONGUARD item_flags = THICKMATERIAL - body_parts_covered = HANDS - heat_protection = HANDS - cold_protection = HANDS species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_TAJARAN, SPECIES_UNATHI, SPECIES_PROMETHEAN, SPECIES_TESHARI) - gender = PLURAL /obj/item/clothing/shoes/magboots/rig name = "boots" - body_parts_covered = FEET - cold_protection = FEET - heat_protection = FEET species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_TAJARAN, SPECIES_UNATHI, SPECIES_PROMETHEAN, SPECIES_TESHARI) - gender = PLURAL icon_base = null /obj/item/clothing/suit/space/rig name = "chestpiece" allowed = list(/obj/item/flashlight,/obj/item/tank,/obj/item/suit_cooling_unit) - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS + heat_protection = CHEST|LEGS|ARMS + cold_protection = CHEST|LEGS|ARMS flags_inv = HIDEJUMPSUIT|HIDETAIL item_flags = THICKMATERIAL | AIRTIGHT slowdown = 0 @@ -115,36 +105,18 @@ //Rig pieces for non-spacesuit based rigs /obj/item/clothing/head/lightrig - name = "mask" + name = DEVELOPER_WARNING_NAME // "mask" body_parts_covered = HEAD|FACE|EYES - heat_protection = HEAD|FACE|EYES - cold_protection = HEAD|FACE|EYES flags = THICKMATERIAL|AIRTIGHT - species_restricted = null /obj/item/clothing/suit/lightrig - name = "suit" + name = DEVELOPER_WARNING_NAME // "suit" allowed = list(/obj/item/flashlight) - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS flags_inv = HIDEJUMPSUIT flags = THICKMATERIAL - species_restricted = null /obj/item/clothing/shoes/lightrig - name = "boots" - body_parts_covered = FEET - cold_protection = FEET - heat_protection = FEET - species_restricted = null - gender = PLURAL + name = DEVELOPER_WARNING_NAME // "boots" /obj/item/clothing/gloves/gauntlets/lightrig - name = "gloves" flags = THICKMATERIAL - body_parts_covered = HANDS - heat_protection = HANDS - cold_protection = HANDS - species_restricted = null - gender = PLURAL diff --git a/code/modules/clothing/spacesuits/rig/suits/alien.dm b/code/modules/clothing/spacesuits/rig/suits/alien.dm index 2bbd129fff..6e83edc64b 100644 --- a/code/modules/clothing/spacesuits/rig/suits/alien.dm +++ b/code/modules/clothing/spacesuits/rig/suits/alien.dm @@ -81,6 +81,7 @@ species_restricted = list(SPECIES_VOX) /obj/item/clothing/gloves/gauntlets/rig/vox + name = DEVELOPER_WARNING_NAME siemens_coefficient = 0 species_restricted = list(SPECIES_VOX) sprite_sheets = list( @@ -123,4 +124,4 @@ /obj/item/rig_module/vision, /obj/item/rig_module/power_sink, /obj/item/rig_module/self_destruct - ) \ No newline at end of file + ) diff --git a/code/modules/clothing/spacesuits/rig/suits/light.dm b/code/modules/clothing/spacesuits/rig/suits/light.dm index e8081194cd..bbfba2202a 100644 --- a/code/modules/clothing/spacesuits/rig/suits/light.dm +++ b/code/modules/clothing/spacesuits/rig/suits/light.dm @@ -30,18 +30,18 @@ rigsuit_min_pressure = 0 // Min pressure the rig protects against when sealed /obj/item/clothing/suit/space/rig/light - name = "suit" + name = DEVELOPER_WARNING_NAME // "suit" breach_threshold = 18 //comparable to voidsuits /obj/item/clothing/gloves/gauntlets/rig/light - name = "gloves" + name = DEVELOPER_WARNING_NAME // "gloves" /obj/item/clothing/shoes/magboots/rig/light - name = "shoes" + name = DEVELOPER_WARNING_NAME // "shoes" step_volume_mod = 0.8 /obj/item/clothing/head/helmet/space/rig/light - name = "hood" + name = DEVELOPER_WARNING_NAME // "hood" /obj/item/rig/light/hacker name = "cybersuit control module" diff --git a/code/modules/clothing/spacesuits/rig/suits/robotics.dm b/code/modules/clothing/spacesuits/rig/suits/robotics.dm index 1535169cc2..2ae7628948 100644 --- a/code/modules/clothing/spacesuits/rig/suits/robotics.dm +++ b/code/modules/clothing/spacesuits/rig/suits/robotics.dm @@ -33,6 +33,6 @@ /obj/item/clothing/suit/space/rig/advsuit name = "voidsuit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS|FEET - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS|FEET - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS|FEET \ No newline at end of file + body_parts_covered = CHEST|LEGS|ARMS|HANDS|FEET + heat_protection = CHEST|LEGS|ARMS|HANDS|FEET + cold_protection = CHEST|LEGS|ARMS|HANDS|FEET diff --git a/code/modules/clothing/spacesuits/rig/suits/station_vr.dm b/code/modules/clothing/spacesuits/rig/suits/station_vr.dm index 8e40a27b05..2734ff08a9 100644 --- a/code/modules/clothing/spacesuits/rig/suits/station_vr.dm +++ b/code/modules/clothing/spacesuits/rig/suits/station_vr.dm @@ -68,7 +68,7 @@ /obj/item/rig/focalpoint name = "\improper F.P.E. hardsuit control module" desc = "A high-end hardsuit produced by Focal Point Energistics, focused around repair and construction." - + icon = 'icons/obj/rig_modules_vr.dmi' // the item default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob icon_state = "techno_rig" @@ -85,7 +85,7 @@ max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE // so it's like a rig firesuit armor = list("melee" = 40, "bullet" = 10, "laser" = 30, "energy" = 55, "bomb" = 70, "bio" = 100, "rad" = 100) allowed = list(/obj/item/flashlight,/obj/item/tank,/obj/item/suit_cooling_unit,/obj/item/storage/backpack) - + chest_type = /obj/item/clothing/suit/space/rig/focalpoint helm_type = /obj/item/clothing/head/helmet/space/rig/focalpoint boot_type = /obj/item/clothing/shoes/magboots/rig/ce/focalpoint @@ -136,7 +136,7 @@ /obj/item/rig/hephaestus name = "\improper Hephaestus hardsuit control module" desc = "A high-end hardsuit produced by Hephaestus Industries, focused on destroying the competition. Literally." - + icon = 'icons/obj/rig_modules_vr.dmi' // the item default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob icon_state = "ihs_rig" @@ -148,7 +148,7 @@ /obj/item/storage/firstaid, /obj/item/reagent_containers/hypospray, /obj/item/roller, /obj/item/suit_cooling_unit, /obj/item/storage/backpack,/obj/item/bluespaceradio, /obj/item/defib_kit) armor = list("melee" = 70, "bullet" = 70, "laser" = 70, "energy" = 50, "bomb" = 60, "bio" = 100, "rad" = 20) - + chest_type = /obj/item/clothing/suit/space/rig/hephaestus helm_type = /obj/item/clothing/head/helmet/space/rig/hephaestus boot_type = /obj/item/clothing/shoes/magboots/rig/hephaestus @@ -198,7 +198,7 @@ /obj/item/rig/zero name = "null hardsuit control module" desc = "A very lightweight suit designed to allow use inside mechs and starfighters. It feels like you're wearing nothing at all." - + icon = 'icons/obj/rig_modules_vr.dmi' // the item default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob icon_state = "null_rig" @@ -211,7 +211,7 @@ glove_type = null allowed = list(/obj/item/gun,/obj/item/flashlight,/obj/item/tank,/obj/item/suit_cooling_unit,/obj/item/storage/backpack, /obj/item/bluespaceradio, /obj/item/defib_kit) - + slowdown = 0 offline_slowdown = 1 offline_vision_restriction = 2 @@ -237,14 +237,14 @@ icon_state = "null_rig" sprite_sheets = ALL_VR_SPRITE_SHEETS_SUIT_MOB sprite_sheets_obj = ALL_VR_SPRITE_SHEETS_SUIT_ITEM - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS // like a voidsuit + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS // like a voidsuit slowdown = 0 // Medical rig from bay /obj/item/rig/baymed name = "\improper Commonwealth medical hardsuit control module" desc = "A lightweight first responder hardsuit from the Commonwealth. Not suitable for combat use, but advanced myomer fibers can push the user to incredible speeds." - + icon = 'icons/obj/rig_modules_vr.dmi' // the item default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob icon_state = "medical_rig_bay" @@ -273,7 +273,7 @@ armor = list("melee" = 10, "bullet" = 5, "laser" = 10, "energy" = 5, "bomb" = 25, "bio" = 100, "rad" = 20) /obj/item/rig/baymed/equipped - + initial_modules = list( /obj/item/rig_module/maneuvering_jets, /obj/item/rig_module/sprinter, @@ -318,7 +318,7 @@ /obj/item/rig/bayeng name = "\improper Commonwealth engineering hardsuit control module" desc = "An advanced construction hardsuit from the Commonwealth. Built like a tank. Don't expect to be taking any tight corners while running." - + icon = 'icons/obj/rig_modules_vr.dmi' // the item default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob icon_state = "engineering_rig_bay" @@ -394,7 +394,7 @@ /obj/item/rig/pathfinder name = "\improper Commonwealth pathfinder hardsuit control module" desc = "A Commonwealth pathfinder hardsuit is hard to come by... how'd this end up on the frontier?" - + icon = 'icons/obj/rig_modules_vr.dmi' // the item default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob icon_state = "pathfinder_rig_bay" diff --git a/code/modules/clothing/spacesuits/spacesuits.dm b/code/modules/clothing/spacesuits/spacesuits.dm index bf9abd7c75..d8116b7d8c 100644 --- a/code/modules/clothing/spacesuits/spacesuits.dm +++ b/code/modules/clothing/spacesuits/spacesuits.dm @@ -15,7 +15,6 @@ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|BLOCKHAIR body_parts_covered = HEAD|FACE|EYES - cold_protection = HEAD min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE min_pressure_protection = 0 * ONE_ATMOSPHERE max_pressure_protection = 2 * ONE_ATMOSPHERE @@ -76,12 +75,13 @@ permeability_coefficient = 0.02 flags = PHORONGUARD item_flags = THICKMATERIAL - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/flashlight,/obj/item/tank/emergency/oxygen,/obj/item/suit_cooling_unit) slowdown = 1.5 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER - cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS + cold_protection = CHEST|LEGS|FEET|ARMS|HANDS + heat_protection = CHEST|LEGS|FEET|ARMS|HANDS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE min_pressure_protection = 0 * ONE_ATMOSPHERE max_pressure_protection = 2 * ONE_ATMOSPHERE diff --git a/code/modules/clothing/spacesuits/void/void.dm b/code/modules/clothing/spacesuits/void/void.dm index d2a4897692..149f4abca8 100644 --- a/code/modules/clothing/spacesuits/void/void.dm +++ b/code/modules/clothing/spacesuits/void/void.dm @@ -4,7 +4,6 @@ desc = "A high-tech dark red space suit helmet. Used for AI satellite maintenance." icon_state = "void" item_state_slots = list(slot_r_hand_str = "syndicate", slot_l_hand_str = "syndicate") - heat_protection = HEAD armor = list(melee = 30, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 20) max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE min_pressure_protection = 0 * ONE_ATMOSPHERE @@ -28,7 +27,6 @@ slowdown = 0.5 armor = list(melee = 30, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 20) allowed = list(/obj/item/flashlight,/obj/item/tank,/obj/item/suit_cooling_unit) - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE min_pressure_protection = 0 * ONE_ATMOSPHERE max_pressure_protection = 10 * ONE_ATMOSPHERE diff --git a/code/modules/clothing/spacesuits/void/zaddat.dm b/code/modules/clothing/spacesuits/void/zaddat.dm index 025d52c8f0..18c99f5071 100644 --- a/code/modules/clothing/spacesuits/void/zaddat.dm +++ b/code/modules/clothing/spacesuits/void/zaddat.dm @@ -3,7 +3,6 @@ desc = "A Hegemony-designed utilitarian environment suit helmet, still common among the Spacer Zaddat." icon_state = "zaddat_hegemony" item_state_slots = list(slot_r_hand_str = "syndicate", slot_l_hand_str = "syndicate") - heat_protection = HEAD body_parts_covered = HEAD|FACE|EYES slowdown = 0.5 armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 70) //realistically would have some armor but balance. @@ -121,4 +120,4 @@ to_chat(M, "You finish customizing your Shroud. Looking good!") has_been_customized = TRUE M.regenerate_icons() - return 1 \ No newline at end of file + return 1 diff --git a/code/modules/clothing/suits/aliens/tajara.dm b/code/modules/clothing/suits/aliens/tajara.dm index f0a9fa13fe..280fe5dd0b 100644 --- a/code/modules/clothing/suits/aliens/tajara.dm +++ b/code/modules/clothing/suits/aliens/tajara.dm @@ -2,7 +2,7 @@ name = "heavy furs" desc = "A traditional Zhan-Khazan garment." icon_state = "zhan_furs" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS + body_parts_covered = CHEST|LEGS|FEET|ARMS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER drop_sound = 'sound/items/drop/leather.ogg' pickup_sound = 'sound/items/pickup/leather.ogg' @@ -14,4 +14,4 @@ item_state_slots = list(slot_r_hand_str = "beret_white", slot_l_hand_str = "beret_white") body_parts_covered = HEAD|FACE drop_sound = 'sound/items/drop/leather.ogg' - pickup_sound = 'sound/items/pickup/leather.ogg' \ No newline at end of file + pickup_sound = 'sound/items/pickup/leather.ogg' diff --git a/code/modules/clothing/suits/aliens/teshari.dm b/code/modules/clothing/suits/aliens/teshari.dm index 89975b9f16..cbfb69b72e 100644 --- a/code/modules/clothing/suits/aliens/teshari.dm +++ b/code/modules/clothing/suits/aliens/teshari.dm @@ -1,3 +1,6 @@ +/obj/item/clothing/suit/storage/teshari + name = DEVELOPER_WARNING_NAME + // Standard Cloaks /obj/item/clothing/suit/storage/teshari/cloak name = "black cloak" @@ -236,7 +239,7 @@ desc = "A coat that seems too small to fit a human." icon = 'icons/inventory/suit/item_teshari.dmi' icon_state = "tesharicoat" - body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS + body_parts_covered = CHEST|ARMS|LEGS species_restricted = list(SPECIES_TESHARI) /obj/item/clothing/suit/storage/toggle/tesharicoatwhite @@ -244,7 +247,7 @@ desc = "A coat that seems too small to fit a human." icon = 'icons/inventory/suit/item_teshari.dmi' icon_state = "tesharicoatwhite" - body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS + body_parts_covered = CHEST|ARMS|LEGS species_restricted = list(SPECIES_TESHARI) //Hooded teshari cloaks @@ -254,11 +257,12 @@ icon = 'icons/inventory/suit/item_teshari.dmi' icon_state = "tesh_hcloak_bo" item_state_slots = list(slot_r_hand_str = "tesh_hcloak_bo", slot_l_hand_str = "tesh_hcloak_bo") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER|HIDETIE actions_types = list(/datum/action/item_action/toggle_hood) hoodtype = /obj/item/clothing/head/tesh_hood allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/flashlight,/obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, /obj/item/storage/box/matches, /obj/item/reagent_containers/food/drinks/flask) + species_restricted = list(SPECIES_TESHARI) /obj/item/clothing/head/tesh_hood name = "Cloak Hood" @@ -270,6 +274,7 @@ item_state_slots = list(slot_r_hand_str = "tesh_hood_bo", slot_l_hand_str = "tesh_hood_bo") flags_inv = BLOCKHAIR body_parts_covered = HEAD + species_restricted = list(SPECIES_TESHARI) /obj/item/clothing/suit/storage/hooded/teshari/standard/black_orange name = "black and orange hooded cloak" diff --git a/code/modules/clothing/suits/aliens/unathi.dm b/code/modules/clothing/suits/aliens/unathi.dm index 0c49ab3d25..9769a06d17 100644 --- a/code/modules/clothing/suits/aliens/unathi.dm +++ b/code/modules/clothing/suits/aliens/unathi.dm @@ -3,11 +3,11 @@ name = "roughspun robes" desc = "A traditional Unathi garment." icon_state = "robe-unathi" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS flags_inv = HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/unathi/mantle name = "hide mantle" desc = "A rather grisly selection of cured hides and skin, sewn together to form a ragged mantle." icon_state = "mantle-unathi" - body_parts_covered = UPPER_TORSO \ No newline at end of file + body_parts_covered = UPPER_TORSO diff --git a/code/modules/clothing/suits/aliens/vox.dm b/code/modules/clothing/suits/aliens/vox.dm index b4bcf1859f..5d8ec7f2a9 100644 --- a/code/modules/clothing/suits/aliens/vox.dm +++ b/code/modules/clothing/suits/aliens/vox.dm @@ -5,6 +5,6 @@ armor = list(melee = 60, bullet = 30, laser = 30,energy = 5, bomb = 40, bio = 0, rad = 0) //Higher melee armor versus lower everything else. icon_state = "vox-scrap" icon_state = "vox-scrap" - body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO|LEGS + body_parts_covered = CHEST|ARMS|LEGS species_restricted = list(SPECIES_VOX) - siemens_coefficient = 1 //Its literally metal \ No newline at end of file + siemens_coefficient = 1 //Its literally metal diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 937808ca65..dc346ede63 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -1,11 +1,12 @@ /obj/item/clothing/suit/armor + name = DEVELOPER_WARNING_NAME allowed = list(/obj/item/gun/energy,/obj/item/reagent_containers/spray/pepper,/obj/item/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/flashlight/maglight,/obj/item/clothing/head/helmet) - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST item_flags = THICKMATERIAL - cold_protection = UPPER_TORSO|LOWER_TORSO + cold_protection = CHEST min_cold_protection_temperature = ARMOR_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = UPPER_TORSO|LOWER_TORSO + heat_protection = CHEST max_heat_protection_temperature = ARMOR_MAX_HEAT_PROTECTION_TEMPERATURE siemens_coefficient = 0.6 @@ -113,7 +114,7 @@ desc = "A suit of armor most often used by Special Weapons and Tactics squads. Includes padded vest with pockets along with shoulder and kneeguards." icon_state = "swatarmor" item_state_slots = list(slot_r_hand_str = "swat", slot_l_hand_str = "swat") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDETIE|HIDEHOLSTER slowdown = 1 armor = list(melee = 60, bullet = 60, laser = 60, energy = 40, bomb = 40, bio = 0, rad = 0) @@ -127,7 +128,7 @@ gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 item_flags = THICKMATERIAL - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS + body_parts_covered = CHEST|LEGS|FEET|ARMS allowed = list(/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/tank/emergency/oxygen,/obj/item/clothing/head/helmet) slowdown = 1 w_class = ITEMSIZE_HUGE @@ -156,7 +157,7 @@ icon_state = "detective-armor" item_state_slots = list(slot_r_hand_str = "armor", slot_l_hand_str = "armor") blood_overlay_type = "armor" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0) @@ -220,7 +221,7 @@ blood_overlay_type = "armor" item_state_slots = list(slot_r_hand_str = "armor", slot_l_hand_str = "armor") slowdown = -1 - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 0, rad = 40) siemens_coefficient = 0.4 var/block_chance = 20 @@ -231,7 +232,7 @@ description_info = "It has a 40% chance to completely nullify an incoming attack." icon_state = "alien_tank" slowdown = 0 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS armor = list(melee = 70, bullet = 70, laser = 70, energy = 70, bomb = 70, bio = 0, rad = 40) block_chance = 40 @@ -247,7 +248,7 @@ desc = "A set of armor worn by members of the Emergency Response Team." icon_state = "ertarmor_cmd" item_state_slots = list(slot_r_hand_str = "armor", slot_l_hand_str = "armor") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS armor = list(melee = 60, bullet = 60, laser = 60, energy = 40, bomb = 20, bio = 0, rad = 0) //Commander @@ -283,12 +284,12 @@ armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0) allowed = list(/obj/item/gun,/obj/item/reagent_containers/spray/pepper,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/flashlight/maglight,/obj/item/clothing/head/helmet) - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST item_flags = THICKMATERIAL - cold_protection = UPPER_TORSO|LOWER_TORSO + cold_protection = CHEST min_cold_protection_temperature = ARMOR_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = UPPER_TORSO|LOWER_TORSO + heat_protection = CHEST max_heat_protection_temperature = ARMOR_MAX_HEAT_PROTECTION_TEMPERATURE siemens_coefficient = 0.6 @@ -305,9 +306,7 @@ desc = "A set of lightweight armor designed to be worn over the matching ACE security undersuit. Includes thigh, shin, and forearm protectors in addition to standard torso and groin guards." icon_state = "aces_armor" item_state_slots = list(slot_r_hand_str = "armor", slot_l_hand_str = "armor") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS /obj/item/clothing/suit/storage/vest/warden name = "warden armor vest" @@ -322,14 +321,14 @@ desc = "An armoured jacket with silver rank pips and livery." icon_state = "warden_jacket" blood_overlay_type = "suit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS flags_inv = HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/storage/vest/wardencoat/alt name = JOB_WARDEN + "'s jacket" desc = "An armoured jacket with silver rank pips and livery." icon_state = "warden_alt" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS /obj/item/clothing/suit/storage/vest/hos name = "head of security armor vest" @@ -344,7 +343,7 @@ desc = "A greatcoat enhanced with a special alloy for some protection and style." icon_state = "hos" blood_overlay_type = "suit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS flags_inv = HIDETIE|HIDEHOLSTER //Jensen cosplay gear @@ -396,7 +395,7 @@ icon_state = "flexitac" item_state = "flexitac" armor = list(melee = 40, bullet = 40, laser = 60, energy = 35, bomb = 30, bio = 0, rad = 0) - cold_protection = UPPER_TORSO|LOWER_TORSO + cold_protection = CHEST min_cold_protection_temperature = T0C - 20 slowdown = 0.5 @@ -472,7 +471,7 @@ icon_state = "centcom" item_state_slots = list(slot_r_hand_str = "armor", slot_l_hand_str = "armor") w_class = ITEMSIZE_LARGE//bulky item - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/gun/energy,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/tank/emergency/oxygen,/obj/item/clothing/head/helmet) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS @@ -487,13 +486,14 @@ armor = list(melee = 90, bullet = 80, laser = 10, energy = 10, bomb = 80, bio = 0, rad = 0) w_class = ITEMSIZE_HUGE // Very bulky, very heavy. gas_transfer_coefficient = 0.90 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS slowdown = 5 // If you're a tank you're gonna move like a tank. flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER siemens_coefficient = 0 /obj/item/clothing/suit/armor/tdome - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + name = DEVELOPER_WARNING_NAME + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT armor = list(melee = 60, bullet = 60, laser = 60, energy = 40, bomb = 40, bio = 0, rad = 0) @@ -554,7 +554,7 @@ icon_state = "explorer" flags = THICKMATERIAL min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + cold_protection = CHEST|LEGS|ARMS /obj/item/clothing/suit/armor/pcarrier/light starting_accessories = list(/obj/item/clothing/accessory/armor/armorplate) diff --git a/code/modules/clothing/suits/armor_vr.dm b/code/modules/clothing/suits/armor_vr.dm index 1107a0b022..e960c8610e 100644 --- a/code/modules/clothing/suits/armor_vr.dm +++ b/code/modules/clothing/suits/armor_vr.dm @@ -6,7 +6,7 @@ armor = list(melee = 90, bullet = 80, laser = 10, energy = 10, bomb = 80, bio = 0, rad = 0) w_class = ITEMSIZE_HUGE // massively bulky item gas_transfer_coefficient = 0.90 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS slowdown = 5 // If you're a tank you're gonna move like a tank. flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT siemens_coefficient = 0 @@ -57,7 +57,7 @@ icon_state = "unsc_armor" icon = 'icons/inventory/suit/item_vr.dmi' icon_override = 'icons/inventory/suit/mob_vr.dmi' - body_parts_covered = UPPER_TORSO|LOWER_TORSO // ToDo: Break up the armor into smaller bits. + body_parts_covered = CHEST // ToDo: Break up the armor into smaller bits. /obj/item/clothing/suit/armor/combat/imperial name = "imperial soldier armor" @@ -65,7 +65,7 @@ icon_state = "ge_armor" icon = 'icons/inventory/suit/item_vr.dmi' icon_override = 'icons/inventory/suit/mob_vr.dmi' - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/suit/armor/combat/imperial/centurion name = "imperial centurion armor" @@ -87,7 +87,7 @@ icon_state = "crusader" icon = 'icons/obj/clothing/knights_vr.dmi' icon_override = 'icons/obj/clothing/knights_vr.dmi' - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST armor = list(melee = 80, bullet = 50, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0) siemens_coefficient = 2 @@ -95,7 +95,7 @@ name = "bedevere's armor" desc = "ye olde knight, risen again." icon_state = "bedevere" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST // Costume Versions Here /obj/item/clothing/suit/armor/combat/crusader_costume @@ -104,7 +104,7 @@ icon_state = "crusader" icon = 'icons/obj/clothing/knights_vr.dmi' icon_override = 'icons/obj/clothing/knights_vr.dmi' - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) siemens_coefficient = 1 @@ -112,7 +112,7 @@ name = "bedevere's costume armor" desc = "ye olde knight, risen again." icon_state = "bedevere" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST //Deluxe explorer suit /obj/item/clothing/suit/armor/pcarrier/explorer/deluxe @@ -147,9 +147,9 @@ icon = 'icons/obj/clothing/knights_vr.dmi' icon_override = 'icons/obj/clothing/knights_vr.dmi' flags = THICKMATERIAL - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + cold_protection = CHEST|LEGS|ARMS slowdown=0 siemens_coefficient = 0.9 armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 35, bio = 75, rad = 35) // Inferior to sec vests in bullet/laser but better for environmental protection. diff --git a/code/modules/clothing/suits/bio.dm b/code/modules/clothing/suits/bio.dm index 2efeb233da..5d5b2eb9a0 100644 --- a/code/modules/clothing/suits/bio.dm +++ b/code/modules/clothing/suits/bio.dm @@ -21,7 +21,7 @@ w_class = ITEMSIZE_LARGE//bulky item gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS|FEET + body_parts_covered = CHEST|LEGS|ARMS|HANDS|FEET slowdown = 1.0 allowed = list(/obj/item/tank/emergency/oxygen,/obj/item/pen,/obj/item/flashlight/pen) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) @@ -39,7 +39,7 @@ /obj/item/clothing/suit/bio_suit/general icon_state = "bio_general" item_state_slots = list(slot_r_hand_str = "bio", slot_l_hand_str = "bio") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER //Virology biosuit, green stripe @@ -48,7 +48,7 @@ /obj/item/clothing/suit/bio_suit/virology icon_state = "bio_virology" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER //Security biosuit, grey with red stripe across the chest @@ -57,7 +57,7 @@ /obj/item/clothing/suit/bio_suit/security icon_state = "bio_security" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER //Janitor's biosuit, grey with purple arms @@ -66,7 +66,7 @@ /obj/item/clothing/suit/bio_suit/janitor icon_state = "bio_janitor" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER //Scientist's biosuit, white with a pink-ish hue @@ -75,13 +75,13 @@ /obj/item/clothing/suit/bio_suit/scientist icon_state = "bio_scientist" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER //CMO's biosuit, blue stripe /obj/item/clothing/suit/bio_suit/cmo icon_state = "bio_cmo" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER /obj/item/clothing/head/bio_hood/cmo diff --git a/code/modules/clothing/suits/hooded.dm b/code/modules/clothing/suits/hooded.dm index 566d9c65e2..d215fa18f4 100644 --- a/code/modules/clothing/suits/hooded.dm +++ b/code/modules/clothing/suits/hooded.dm @@ -2,7 +2,8 @@ //Hoods for winter coats and chaplain hoodie etc -/obj/item/clothing/suit/storage/hooded +/obj/item/clothing/suit/ + name = DEVELOPER_WARNING_NAME var/obj/item/clothing/head/hood var/hoodtype = null //so the chaplain hoodie or other hoodies can override this var/hood_up = FALSE @@ -19,7 +20,7 @@ return ..() /obj/item/clothing/suit/storage/hooded/proc/MakeHood() - if(!hood) + if(!hood && hoodtype) var/obj/item/clothing/head/hood/H = new hoodtype(src) hood = H @@ -72,9 +73,10 @@ icon_state = "[toggleicon][hood_up ? "_t" : ""]" /obj/item/clothing/suit/storage/hooded/costume - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + name = DEVELOPER_WARNING_NAME + body_parts_covered = CHEST|ARMS flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + cold_protection = CHEST|ARMS actions_types = list(/datum/action/item_action/toggle_hood) /obj/item/clothing/suit/storage/hooded/costume/siffet @@ -106,9 +108,9 @@ desc = "A heavy jacket made from 'synthetic' animal furs." icon_state = "coatwinter" item_state_slots = list(slot_r_hand_str = "coatwinter", slot_l_hand_str = "coatwinter") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + cold_protection = CHEST|ARMS|LEGS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE hoodtype = /obj/item/clothing/head/hood/winter allowed = list(/obj/item/pen, /obj/item/paper, /obj/item/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, @@ -373,9 +375,9 @@ icon_state = "explorer" item_state = "explorer" flags = THICKMATERIAL - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE - cold_protection = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + cold_protection = CHEST|LEGS|ARMS hoodtype = /obj/item/clothing/head/hood/explorer siemens_coefficient = 0.9 armor = list(melee = 30, bullet = 20, laser = 20, energy = 20, bomb = 35, bio = 75, rad = 35) // Inferior to sec vests in bullet/laser but better for environmental protection. @@ -400,7 +402,7 @@ name = "raincoat" desc = "A thin, opaque coat meant to protect you from all sorts of rain. Preferred by outdoorsmen and janitors alike across the rift. Of course, the only type of fluids you'd like to protect yourself from around this place don't rain down from the sky. Usually. Comes with a hood!" icon_state = "raincoat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS flags_inv = HIDEHOLSTER hoodtype = /obj/item/clothing/head/hood/raincoat allowed = list(/obj/item/pen, /obj/item/paper, /obj/item/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, @@ -412,7 +414,7 @@ name = "hooded maroon cloak" desc = "A simple maroon colored cloak." icon_state = "maroon_cloak" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS hoodtype = /obj/item/clothing/head/hood/cloak /obj/item/clothing/suit/storage/hooded/cloak/winter diff --git a/code/modules/clothing/suits/hooded_vr.dm b/code/modules/clothing/suits/hooded_vr.dm index 57cc631404..e643ac3812 100644 --- a/code/modules/clothing/suits/hooded_vr.dm +++ b/code/modules/clothing/suits/hooded_vr.dm @@ -81,9 +81,10 @@ // Food costumes /obj/item/clothing/suit/storage/hooded/foodcostume //Separate type of costume that does not cover arms and legs. Similar to a cheap mascot costume. - body_parts_covered = UPPER_TORSO|LOWER_TORSO + name = DEVELOPER_WARNING_NAME + body_parts_covered = CHEST flags_inv = HIDETIE|HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO + cold_protection = CHEST actions_types = list(/datum/action/item_action/toggle_hood) /obj/item/clothing/suit/storage/hooded/foodcostume/hotdog //Belly filler uniform :^). @@ -113,9 +114,9 @@ icon_override = 'icons/inventory/suit/mob_vr.dmi' icon_state = "hoodie_plain" item_state_slots = list(slot_r_hand_str = "grey_hoodie", slot_l_hand_str = "grey_hoodie") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + cold_protection = CHEST|ARMS|LEGS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE hoodtype = /obj/item/clothing/head/hood/hoodie allowed = list(/obj/item/pen, /obj/item/paper, /obj/item/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index ffe9850629..3dd4e47fff 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -37,7 +37,7 @@ name = "site manager's uniform jacket" desc = "A less formal jacket for everyday " + JOB_SITE_MANAGER + " use." icon_state = "capjacket" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEHOLSTER //Command @@ -52,7 +52,7 @@ desc = "This suit says to you \"Hush\"!" icon_state = "chaplain_hoodie" item_state_slots = list(slot_r_hand_str = "suit_black", slot_l_hand_str = "suit_black") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEHOLSTER hoodtype = /obj/item/clothing/head/chaplain_hood allowed = list (/obj/item/storage/bible) @@ -71,7 +71,7 @@ name = "nun robe" desc = "Maximum piety in this star system." icon_state = "nun" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER //Chef @@ -81,7 +81,7 @@ icon_state = "chef" gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDETIE|HIDEHOLSTER allowed = list (/obj/item/material/knife) @@ -100,7 +100,7 @@ desc = "This jacket is for those special occasions when a security officer actually feels safe." icon_state = "officerbluejacket" item_state_slots = list(slot_r_hand_str = "suit_navy", slot_l_hand_str = "suit_navy") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER /obj/item/clothing/suit/security/navywarden @@ -108,7 +108,7 @@ desc = "Perfectly suited for the warden that wants to leave an impression of style on those who visit the brig." icon_state = "wardenbluejacket" item_state_slots = list(slot_r_hand_str = "suit_navy", slot_l_hand_str = "suit_navy") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER /obj/item/clothing/suit/security/navyhos @@ -116,7 +116,7 @@ desc = "This piece of clothing was specifically designed for asserting superior authority." icon_state = "hosbluejacket" item_state_slots = list(slot_r_hand_str = "suit_navy", slot_l_hand_str = "suit_navy") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER //Detective @@ -140,7 +140,7 @@ //Forensics /obj/item/clothing/suit/storage/forensics - name = "jacket" + name = DEVELOPER_WARNING_NAME desc = "A forensics technician jacket." body_parts_covered = UPPER_TORSO|ARMS flags_inv = HIDEHOLSTER @@ -198,6 +198,10 @@ icon_state = "hazard_w" //Lawyer + +/obj/item/clothing/suit/storage/toggle/lawyer + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket name = "blue suit jacket" desc = "A snappy dress jacket." @@ -245,7 +249,7 @@ desc = "A sterile blue apron for performing surgery." icon_state = "surgical" blood_overlay_type = "armor" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST allowed = list(/obj/item/stack/medical, /obj/item/reagent_containers/dropper, /obj/item/reagent_containers/hypospray, /obj/item/reagent_containers/syringe, \ /obj/item/healthanalyzer, /obj/item/flashlight, /obj/item/radio, /obj/item/tank/emergency/oxygen,/obj/item/surgical/scalpel,/obj/item/surgical/retractor,/obj/item/surgical/hemostat, \ /obj/item/surgical/cautery,/obj/item/surgical/bonegel,/obj/item/surgical/FixOVein) @@ -261,8 +265,10 @@ /obj/item/clothing/suit/suspenders/blue name = "blue suspenders" - icon_state = "suspenders_blue" + desc = "A pair of blue suspenders...They don't look too blue, though." + icon_state = "suspenders_blue" //Need a sprite for this. /obj/item/clothing/suit/suspenders/grey name = "grey suspenders" - icon_state = "suspenders_grey" + desc = "A pair of grey suspenders...They don't look too blue, though." + icon_state = "suspenders_grey" //Need a sprite for this. diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index ee1013ddf7..be15a41304 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -57,9 +57,9 @@ desc = "A stylish, shiny, very blue puffer coat." icon_state = "puffycoatblue" item_state = "puffycoatblue" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + cold_protection = CHEST|ARMS|LEGS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE siemens_coefficient = 0.7 item_state_slots = list(slot_r_hand_str = "blue_labcoat", slot_l_hand_str = "blue_labcoat") @@ -69,9 +69,9 @@ desc = "A stylish, shiny, very purple puffer coat." icon_state = "puffycoatpurple" item_state = "puffycoatpurple" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + cold_protection = CHEST|ARMS|LEGS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE siemens_coefficient = 0.7 item_state_slots = list(slot_r_hand_str = "purple_labcoat", slot_l_hand_str = "purple_labcoat") @@ -81,9 +81,9 @@ desc = "A stylish, shiny, very crimson puffer coat." icon_state = "puffycoatred" item_state = "puffycoatred" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + cold_protection = CHEST|ARMS|LEGS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE siemens_coefficient = 0.7 item_state_slots = list(slot_r_hand_str = "red_labcoat", slot_l_hand_str = "red_labcoat") @@ -117,13 +117,13 @@ icon_state = "hgpirate" item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") flags_inv = HIDEJUMPSUIT - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS /obj/item/clothing/suit/cyborg_suit name = "cyborg suit" desc = "Suit for a cyborg costume." icon_state = "death" - fire_resist = T0C+5200 + max_heat_protection_temperature = T0C+5200 flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/greatcoat @@ -146,13 +146,13 @@ icon_state = "gentlecoat" item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET + body_parts_covered = CHEST|ARMS|HANDS|LEGS|FEET /obj/item/clothing/suit/judgerobe name = "judge's robe" desc = "This robe commands authority." icon_state = "judge" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS allowed = list(/obj/item/storage/fancy/cigarettes,/obj/item/spacecash) flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER @@ -160,7 +160,7 @@ name = "coveralls" desc = "A set of denim overalls." icon_state = "overalls" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/suit/syndicatefake name = "red space suit replica" @@ -169,21 +169,21 @@ w_class = ITEMSIZE_NORMAL allowed = list(/obj/item/flashlight,/obj/item/tank/emergency/oxygen,/obj/item/toy) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET + body_parts_covered = CHEST|ARMS|HANDS|LEGS|FEET /obj/item/clothing/suit/hastur name = "Hastur's Robes" desc = "Robes not meant to be worn by man" icon_state = "hastur" item_state_slots = list(slot_r_hand_str = "rad", slot_l_hand_str = "rad") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS + body_parts_covered = CHEST|LEGS|FEET|ARMS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/imperium_monk name = "Imperium monk" desc = "Have YOU killed a xenos today?" icon_state = "imperium_monk" - body_parts_covered = HEAD|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS + body_parts_covered = HEAD|CHEST|LEGS|FEET|ARMS flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/chickensuit @@ -208,21 +208,21 @@ desc = "This is a nice holiday my son." icon_state = "holidaypriest" item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/cardborg name = "cardborg suit" desc = "An ordinary cardboard box with holes cut in the sides." icon_state = "cardborg" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/skeleton name = "skeleton costume" desc = "A body-tight costume with the human skeleton lined out on it." icon_state = "skelecost" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|FEET|HANDS|EYES|HEAD|FACE + body_parts_covered = CHEST|LEGS|ARMS|FEET|HANDS|EYES|HEAD|FACE flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDEGLOVES|HIDETIE|HIDEHOLSTER item_state_slots = list(slot_r_hand_str = "judge", slot_l_hand_str = "judge") @@ -230,7 +230,7 @@ name = "sexy engineering voidsuit costume" desc = "It's supposed to look like an engineering voidsuit... It doesn't look like it could protect from much radiation." icon_state = "engicost" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET + body_parts_covered = CHEST|FEET flags_inv = HIDEJUMPSUIT|HIDESHOES|HIDETIE|HIDEHOLSTER item_state_slots = list(slot_r_hand_str = "eng_voidsuit", slot_l_hand_str = "eng_voidsuit") @@ -297,7 +297,7 @@ name = "straight jacket" desc = "A suit that completely restrains the wearer." icon_state = "straight_jacket" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER var/resist_time = 4800 // Eight minutes. @@ -408,7 +408,7 @@ icon_state = "leathercoat_sec" item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") flags_inv = HIDEHOLSTER - +/* //Icon_state was lost to time. /obj/item/clothing/suit/browncoat name = "brown leather coat" desc = "A long, brown leather coat." @@ -416,11 +416,11 @@ allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/flashlight,/obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, /obj/item/storage/box/matches, /obj/item/reagent_containers/food/drinks/flask) item_state_slots = list(slot_r_hand_str = "brown_jacket", slot_l_hand_str = "brown_jacket") flags_inv = HIDEHOLSTER - +*/ /obj/item/clothing/suit/neocoat name = "black coat" desc = "A flowing, black coat." - icon_state = "neocoat" + icon_state = "neo_leather" //This didn't have an icon_state anywhere I can find. It used to be 'neocoat'. The closest replacement I could find was neo_leather allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/flashlight, /obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, /obj/item/storage/box/matches, /obj/item/reagent_containers/food/drinks/flask) item_state_slots = list(slot_r_hand_str = "leather_jacket", slot_l_hand_str = "leather_jacket") flags_inv = HIDEHOLSTER @@ -479,6 +479,9 @@ /* * stripper */ +/obj/item/clothing/suit/stripper + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/suit/stripper/stripper_pink name = "pink skimpy dress" desc = "A rather skimpy pink dress." @@ -500,17 +503,20 @@ desc = "A suit made out of chitinous alien hide." icon_state = "xenos" item_state_slots = list(slot_r_hand_str = "black_suit", slot_l_hand_str = "black_suit") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER siemens_coefficient = 2.0 +/obj/item/clothing/suit/jacket + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/suit/jacket/puffer name = "puffer jacket" desc = "A thick jacket with a rubbery, water-resistant shell." icon_state = "pufferjacket" item_state_slots = list(slot_r_hand_str = "chainmail", slot_l_hand_str = "chainmail") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS + cold_protection = CHEST|ARMS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE flags_inv = HIDEHOLSTER @@ -519,8 +525,8 @@ desc = "A thick vest with a rubbery, water-resistant shell." icon_state = "puffervest" item_state_slots = list(slot_r_hand_str = "chainmail", slot_l_hand_str = "chainmail") - body_parts_covered = UPPER_TORSO|LOWER_TORSO - cold_protection = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST + cold_protection = CHEST /obj/item/clothing/suit/storage/miljacket name = "military jacket" @@ -627,7 +633,7 @@ desc = "A retro style, fur-lined leather bomber jacket that invokes the early days of space exploration when spacemen were spacemen, and laser guns had funny little antennae on them." icon_state = "retrojacket" -/obj/item/clothing/suit/storage/bomber/alt +/obj/item/clothing/suit/storage/bomber name = "bomber jacket" desc = "A thick, well-worn WW2 leather bomber jacket." icon_state = "bomberjacket_new" @@ -735,7 +741,7 @@ icon_state = "grey_hoodie" item_state_slots = list(slot_r_hand_str = "suit_grey", slot_l_hand_str = "suit_grey") min_cold_protection_temperature = T0C - 20 - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + cold_protection = CHEST|ARMS flags_inv = HIDEHOLSTER /obj/item/clothing/suit/storage/toggle/hoodie/black @@ -809,7 +815,7 @@ desc = "A fancy dress." icon_state = "white_dress" item_state_slots = list(slot_r_hand_str = "white_dress", slot_l_hand_str = "white_dress") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS flags_inv = HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/varsity @@ -1040,9 +1046,9 @@ desc = "A suit made to keep you nice and toasty on cold winter days. Or at least alive." icon_state = "snowsuit" item_state_slots = list(slot_r_hand_str = "labcoat", slot_l_hand_str = "labcoat") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDEHOLSTER - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS + cold_protection = CHEST|ARMS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) allowed = list (/obj/item/pen, /obj/item/paper, /obj/item/flashlight,/obj/item/tank/emergency/oxygen, /obj/item/storage/fancy/cigarettes, /obj/item/storage/box/matches, /obj/item/reagent_containers/food/drinks/flask) @@ -1083,7 +1089,7 @@ throw_speed = 2 throw_range = 5 w_class = 2 - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST attack_verb = list("warned", "cautioned", "smashed") armor = list("melee" = 5, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) @@ -1111,7 +1117,7 @@ name = "marine armor" desc = "A set of marine prop armor from the popular game 'Ruin'." icon_state = "marine" - body_parts_covered = FEET|LOWER_TORSO|UPPER_TORSO|LEGS + body_parts_covered = FEET|CHEST|LEGS flags_inv = HIDESHOES|HIDEJUMPSUIT|HIDETIE|HIDEHOLSTER item_state_slots = list(slot_r_hand_str = "green_labcoat", slot_l_hand_str = "green_labcoat") @@ -1142,7 +1148,7 @@ name = "relatable jacket" desc = "An all white jacket with a shine. It seems easy to identify with the wearer." icon_state = "drivejacket" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/suit/storage/toggle/moto_jacket name = "motorcycle jacket" @@ -1155,4 +1161,4 @@ name = "punk vest" desc = "For the spiritual rebels that nevertheless wish to conform to standard goth trends. You're totally showing them your anti-authority spunk." icon_state = "punkvest" - body_parts_covered = UPPER_TORSO|ARMS|LOWER_TORSO + body_parts_covered = CHEST|ARMS diff --git a/code/modules/clothing/suits/miscellaneous_vr.dm b/code/modules/clothing/suits/miscellaneous_vr.dm index e241c79b52..4cffa105e6 100644 --- a/code/modules/clothing/suits/miscellaneous_vr.dm +++ b/code/modules/clothing/suits/miscellaneous_vr.dm @@ -43,6 +43,7 @@ return 0 /obj/item/clothing/suit/barding + name = DEVELOPER_WARNING_NAME description_info = "You need to be a horsy to wear that." icon = 'icons/mob/taursuits_horse.dmi' item_state_slots = list(slot_r_hand_str = "capjacket", slot_l_hand_str = "capjacket") @@ -75,8 +76,9 @@ icon_state = "Mason_barding" /obj/item/clothing/suit/taur + name = DEVELOPER_WARNING_NAME icon = 'icons/mob/taursuits_horse.dmi' - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST pixel_x = -16 /obj/item/clothing/suit/taur/dress diff --git a/code/modules/clothing/suits/neosuits.dm b/code/modules/clothing/suits/neosuits.dm index 5f70441870..7f7aeddb0c 100644 --- a/code/modules/clothing/suits/neosuits.dm +++ b/code/modules/clothing/suits/neosuits.dm @@ -85,11 +85,6 @@ this file deals with suits/overwear. */ desc = "it bears a tag that says 'Product of Total Gear & Co.'" icon_state = "neo_police" -/obj/item/clothing/suit/storage/toggle/labcoat/neo_ranger - name = "ranger's cloak" - desc = "it bears a tag that says 'Product of Total Gear & Co.'" - icon_state = "neo_ranger" - /obj/item/clothing/suit/storage/toggle/labcoat/neo_bodyguard_dep name = "bodyguard's jacket" desc = "it bears a tag that says 'Product of Total Gear & Co.'" @@ -115,6 +110,11 @@ this file deals with suits/overwear. */ desc = "it bears a tag that says 'Product of Total Gear & Co.'" icon_state = "neo_leather" +/obj/item/clothing/suit/storage/toggle/labcoat/neo_ranger //Some maps have this mapspawned in AND it had a missing icon_state. So it just gets the neo_leather icon state instead to keep from having to fix a bunch of maps. + name = "ranger's cloak" + desc = "it bears a tag that says 'Product of Total Gear & Co.'" + icon_state = "neo_leather" + // non transforming coats /obj/item/clothing/suit/neo_gorka @@ -156,4 +156,4 @@ this file deals with suits/overwear. */ /obj/item/clothing/suit/storage/vest/wardencoat/neo_armsco_trench name = "armsco heavy coat" desc = "A rich red longcoat trimmed in black with a warm brown synthetic fur ruff around the neck, lined with layers of para-aramid fibers for increased durability without compromising comfort. It bears a tag that says 'Product of Total Gear & Co.'" - icon_state = "neo_armsco_trench" \ No newline at end of file + icon_state = "neo_armsco_trench" diff --git a/code/modules/clothing/suits/solgov.dm b/code/modules/clothing/suits/solgov.dm index 5976833d5c..1512b151e3 100644 --- a/code/modules/clothing/suits/solgov.dm +++ b/code/modules/clothing/suits/solgov.dm @@ -1,6 +1,6 @@ //SolGov Uniform Suits /obj/item/clothing/suit/storage/solgov - name = "master solgov jacket" + name = DEVELOPER_WARNING_NAME icon = 'icons/inventory/suit/item.dmi' icon_override = 'icons/inventory/suit/mob.dmi' @@ -15,7 +15,7 @@ body_parts_covered = UPPER_TORSO|ARMS armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) siemens_coefficient = 0.9 - flags_inv = HIDEHOLSTER //VOREStation Add - These obviously do. + flags_inv = HIDEHOLSTER allowed = list(/obj/item/tank/emergency/oxygen,/obj/item/flashlight,/obj/item/pen,/obj/item/clothing/head/soft,/obj/item/clothing/head/beret,/obj/item/storage/fancy/cigarettes,/obj/item/flame/lighter,/obj/item/taperecorder,/obj/item/analyzer,/obj/item/radio,/obj/item/taperoll) valid_accessory_slots = (ACCESSORY_SLOT_ARMBAND|ACCESSORY_SLOT_MEDAL|ACCESSORY_SLOT_INSIGNIA|ACCESSORY_SLOT_RANK|ACCESSORY_SLOT_DEPT) restricted_accessory_slots = (ACCESSORY_SLOT_ARMBAND) @@ -179,7 +179,7 @@ //Dress - murder me with a gun why are these 3 different types /obj/item/clothing/suit/storage/solgov/dress - name = "dress jacket" + name = DEVELOPER_WARNING_NAME desc = "A uniform dress jacket, fancy." icon_state = "sgdress_xpl" item_state = "sgdress_xpl" @@ -189,44 +189,44 @@ allowed = list(/obj/item/tank/emergency/oxygen,/obj/item/flashlight,/obj/item/clothing/head/soft,/obj/item/clothing/head/beret,/obj/item/radio,/obj/item/pen) valid_accessory_slots = (ACCESSORY_SLOT_MEDAL|ACCESSORY_SLOT_RANK) restricted_accessory_slots = (ACCESSORY_SLOT_ARMBAND) - +/* //These two sprites were lost to time. Original PR doesn't appear to have them either. /obj/item/clothing/suit/storage/solgov/dress/sifguard - name = "\improper SifGuard dress jacket" - desc = "A silver and grey dress jacket belonging to the Sif Defense Force. Fashionable, for the 25th century at least." + name = "\improper NDF dress jacket" + desc = "A silver and grey dress jacket belonging to the Nanotrasen Defense Force. Fashionable, for the 25th century at least." icon_state = "sgdress_xpl" item_state = "sgdress_xpl" /obj/item/clothing/suit/storage/solgov/dress/sifguard/senior - name = "\improper SifGuard senior's dress coat" + name = "\improper NDF senior's dress coat" icon_state = "sgdress_sxpl" item_state = "sgdress_sxpl" - +*/ /obj/item/clothing/suit/storage/solgov/dress/sifguard/chief - name = "\improper SifGuard chief's dress coat" + name = "\improper NDF chief's dress coat" icon_state = "ecdress_cxpl" item_state = "sgdress_cxpl" /obj/item/clothing/suit/storage/solgov/dress/sifguard/command - name = "\improper SifGuard officer's dress coat" - desc = "A gold and black dress peacoat belonging to the Sif Defense Force. The height of fashion." + name = "\improper NDF officer's dress coat" + desc = "A gold and black dress peacoat belonging to the Nanotrasen Defense Force. The height of fashion." icon_state = "ecdress_ofcr" item_state = "sgdress_ofcr" - +/* //Sprites lost to time. /obj/item/clothing/suit/storage/solgov/dress/sifguard/command/cdr - name = "\improper SifGuard commander's dress coat" + name = "\improper NDF commander's dress coat" icon_state = "sgdress_cdr" item_state = "sgdress_cdr" /obj/item/clothing/suit/storage/solgov/dress/sifguard/command/capt - name = "\improper SifGuard captain's dress coat" + name = "\improper NDF captain's dress coat" icon_state = "sgdress_capt" item_state = "sgdress_capt" /obj/item/clothing/suit/storage/solgov/dress/sifguard/command/adm - name = "\improper SifGuard admiral's dress coat" + name = "\improper NDF admiral's dress coat" icon_state = "sgdress_adm" item_state = "sgdress_adm" - +*/ /obj/item/clothing/suit/storage/solgov/dress/fleet name = "fleet dress jacket" desc = "A navy blue SCG Fleet dress jacket. Don't get near pasta sauce or vox." @@ -257,6 +257,9 @@ icon_state = "whitedress_flag" item_state = "whitedress_flag" +/obj/item/clothing/suit/dress + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/suit/dress/solgov name = "dress jacket" desc = "A uniform dress jacket, fancy." @@ -339,6 +342,9 @@ //Service +/obj/item/clothing/suit/storage/saare + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/suit/storage/saare/service/ name = "SAARE coat" desc = "An Stealth Assault Enterprises . Black and undecorated." @@ -384,4 +390,4 @@ name = "SAARE command dress cloak" desc = "A black Stealth Assault Enterprises dress cloak with royal detailing. Smells like ceremony." icon_state = "terrandress_comm" - item_state = "terrandress_comm" \ No newline at end of file + item_state = "terrandress_comm" diff --git a/code/modules/clothing/suits/solgov_vr.dm b/code/modules/clothing/suits/solgov_vr.dm index 24dc7aa942..029aa8524a 100644 --- a/code/modules/clothing/suits/solgov_vr.dm +++ b/code/modules/clothing/suits/solgov_vr.dm @@ -74,30 +74,6 @@ name = "marine command jacket" desc = "An TCG Marine Corps service coat. This one has gold markings." -//Dress - murder me with a gun why are these 3 different types -/obj/item/clothing/suit/storage/solgov/dress/sifguard - name = "\improper NDF dress jacket" - desc = "A silver and grey dress jacket belonging to the Nanotrasen Defense Force. Fashionable, for the 25th century at least." - -/obj/item/clothing/suit/storage/solgov/dress/sifguard/senior - name = "\improper NDF senior's dress coat" - -/obj/item/clothing/suit/storage/solgov/dress/sifguard/chief - name = "\improper NDF chief's dress coat" - -/obj/item/clothing/suit/storage/solgov/dress/sifguard/command - name = "\improper NDF officer's dress coat" - desc = "A gold and black dress peacoat belonging to the Nanotrasen Defense Force. The height of fashion." - -/obj/item/clothing/suit/storage/solgov/dress/sifguard/command/cdr - name = "\improper NDF commander's dress coat" - -/obj/item/clothing/suit/storage/solgov/dress/sifguard/command/capt - name = "\improper NDF captain's dress coat" - -/obj/item/clothing/suit/storage/solgov/dress/sifguard/command/adm - name = "\improper NDF admiral's dress coat" - /obj/item/clothing/suit/storage/solgov/dress/fleet name = "fleet dress jacket" desc = "A navy blue TCG Fleet dress jacket. Don't get near pasta sauce or vox." @@ -156,19 +132,25 @@ /obj/item/clothing/suit/storage/marshal_jacket name = "colonial marshal jacket" desc = "A black synthleather jacket. The word 'MARSHAL' is stenciled onto the back in gold lettering." + icon_state = "marshal_jacket" //Terrans //Service +/obj/item/clothing/suit/storage/terran + name = DEVELOPER_WARNING_NAME + +/* //Could not find the icon_state anywhere. /obj/item/clothing/suit/storage/terran/service/navy name = "Ares coat" desc = "A Ares Navy service coat. Black and undecorated." - +*/ +/* //Could not find the icon_state anywhere. /obj/item/clothing/suit/storage/terran/service/navy/command name = "Ares command coat" desc = "An Ares Navy service command coat. White and undecorated." - +*/ //Dress /obj/item/clothing/suit/dress/terran/navy name = "Ares dress cloak" diff --git a/code/modules/clothing/suits/storage.dm b/code/modules/clothing/suits/storage.dm index 70ad69fa23..27468d9d8b 100644 --- a/code/modules/clothing/suits/storage.dm +++ b/code/modules/clothing/suits/storage.dm @@ -1,4 +1,5 @@ /obj/item/clothing/suit/storage + name = DEVELOPER_WARNING_NAME var/obj/item/storage/internal/pockets /obj/item/clothing/suit/storage/New() @@ -29,6 +30,7 @@ //Jackets with buttons, used for labcoats, IA jackets, First Responder jackets, and brown jackets. /obj/item/clothing/suit/storage/toggle + name = DEVELOPER_WARNING_NAME flags_inv = HIDEHOLSTER var/open = 0 //0 is closed, 1 is open, -1 means it won't be able to toggle @@ -56,6 +58,7 @@ /obj/item/clothing/suit/storage/hooded/toggle + name = DEVELOPER_WARNING_NAME flags_inv = HIDEHOLSTER var/open = 0 //0 is closed, 1 is open, -1 means it won't be able to toggle @@ -118,4 +121,3 @@ to_chat(usr, "\The [src] does not have a badge.") return update_clothing_icon() - diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm index 444e1099c4..158c302d0a 100644 --- a/code/modules/clothing/suits/utility.dm +++ b/code/modules/clothing/suits/utility.dm @@ -17,14 +17,14 @@ w_class = ITEMSIZE_LARGE//bulky item gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/flashlight,/obj/item/tank/emergency/oxygen,/obj/item/extinguisher) slowdown = 1.0 flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER item_flags = 0 - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + heat_protection = CHEST|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE - cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS + cold_protection = CHEST|LEGS|FEET|ARMS|HANDS min_pressure_protection = 0.2 * ONE_ATMOSPHERE max_pressure_protection = 20 * ONE_ATMOSPHERE @@ -62,7 +62,8 @@ slowdown = 2 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0) flags_inv = HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER - heat_protection = UPPER_TORSO|LOWER_TORSO + heat_protection = CHEST|LEGS|FEET|ARMS|HANDS + cold_protection = CHEST|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = ARMOR_MAX_HEAT_PROTECTION_TEMPERATURE siemens_coefficient = 0 @@ -73,7 +74,7 @@ /obj/item/clothing/suit/bomb_suit/security icon_state = "bombsuitsec" allowed = list(/obj/item/gun/energy,/obj/item/melee/baton,/obj/item/handcuffs) - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS /* * Radiation protection @@ -94,7 +95,7 @@ w_class = ITEMSIZE_LARGE//bulky item gas_transfer_coefficient = 0.90 permeability_coefficient = 0.50 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS|FEET + body_parts_covered = CHEST|LEGS|ARMS|HANDS|FEET allowed = list(/obj/item/flashlight,/obj/item/tank/emergency/oxygen,/obj/item/clothing/head/radiation,/obj/item/clothing/mask/gas) slowdown = 1.5 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 60, rad = 100) @@ -115,4 +116,4 @@ icon = 'icons/inventory/suit/item_teshari.dmi' icon_override = 'icons/inventory/head/mob_teshari.dmi' icon_state = "rad_fitted" - species_restricted = list(SPECIES_TESHARI) \ No newline at end of file + species_restricted = list(SPECIES_TESHARI) diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm index c6c66805a2..b0f8d252c9 100644 --- a/code/modules/clothing/suits/wiz_robe.dm +++ b/code/modules/clothing/suits/wiz_robe.dm @@ -84,13 +84,13 @@ name = "Magus Robe" desc = "A set of armoured robes that seem to radiate a dark power" icon_state = "magusblue" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET + body_parts_covered = CHEST|ARMS|HANDS|LEGS|FEET /obj/item/clothing/suit/wizrobe/magusred name = "Magus Robe" desc = "A set of armoured robes that seem to radiate a dark power" icon_state = "magusred" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|HANDS|LEGS|FEET + body_parts_covered = CHEST|ARMS|HANDS|LEGS|FEET /obj/item/clothing/suit/wizrobe/psypurple name = "purple robes" @@ -102,7 +102,7 @@ desc = "A heavy threaded twead gray jacket. For a different sort of Gentleman." icon_state = "gentlecoat" item_state_slots = list(slot_r_hand_str = "greatcoat", slot_l_hand_str = "greatcoat") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS flags_inv = HIDETIE|HIDEHOLSTER /obj/item/clothing/suit/wizrobe/fake @@ -124,6 +124,6 @@ name = "Witch Robe" desc = "Magic is all about the spell power, ZE!" icon_state = "marisa" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) - siemens_coefficient = 1.0 \ No newline at end of file + siemens_coefficient = 1.0 diff --git a/code/modules/clothing/under/eva_bodysuits.dm b/code/modules/clothing/under/eva_bodysuits.dm index 73856571df..4e0263063e 100644 --- a/code/modules/clothing/under/eva_bodysuits.dm +++ b/code/modules/clothing/under/eva_bodysuits.dm @@ -76,7 +76,7 @@ name = "alternate undersuit, sleeveless" desc = "A skin-tight synthetic bodysuit designed for comfort and mobility underneath hardsuits and voidsuits. This one is designed to stop at the mid-bicep, allowing total freedom to the wearer's forearms." item_state = "altbodysuit_sleeveless" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/undersuit/alt/fem name = "alternate undersuit, feminine" diff --git a/code/modules/clothing/under/jobs/civilian.dm b/code/modules/clothing/under/jobs/civilian.dm index 3fe42db608..102dcdfd48 100644 --- a/code/modules/clothing/under/jobs/civilian.dm +++ b/code/modules/clothing/under/jobs/civilian.dm @@ -40,7 +40,7 @@ name = "cargo technician's jumpsuit" desc = "Shooooorts! They're comfy and easy to wear!" icon_state = "cargo" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS rolled_sleeves = 0 /obj/item/clothing/under/rank/cargotech/jeans diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm index cf2a59b7fd..6d22acb06b 100644 --- a/code/modules/clothing/under/jobs/medsci.dm +++ b/code/modules/clothing/under/jobs/medsci.dm @@ -19,7 +19,7 @@ desc = "Feminine fashion for the style conscious RD. Its fabric provides minor protection from biological contaminants." icon_state = "dress_rd" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/rank/scientist desc = "It's made of a special fiber that provides minor protection against biohazards. It has markings that denote the wearer as a scientist." @@ -83,7 +83,7 @@ icon_state = "nursesuit" permeability_coefficient = 0.50 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST rolled_sleeves = -1 /obj/item/clothing/under/rank/nurse @@ -93,7 +93,7 @@ item_state_slots = list(slot_r_hand_str = "nursesuit", slot_l_hand_str = "nursesuit") permeability_coefficient = 0.50 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST rolled_sleeves = -1 /obj/item/clothing/under/rank/orderly @@ -126,7 +126,7 @@ desc = "It's made of a special fiber that provides minor protection against biohazards. This one is the color scheme that designates a rapid first responder." icon_state = "paramedic" item_state_slots = list(slot_r_hand_str = "white", slot_l_hand_str = "white") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS rolled_down = -1 rolled_sleeves = -1 @@ -135,7 +135,7 @@ desc = "It's made of a special fiber that provides minor protection against biohazards. This one has a cross on the chest denoting that the wearer is trained medical personnel." icon_state = "medical_short" item_state_slots = list(slot_r_hand_str = "white", slot_l_hand_str = "white") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS rolled_sleeves = -1 /obj/item/clothing/under/rank/medical/scrubs diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index 47a5323e34..81a63c6ba0 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -71,7 +71,7 @@ icon_state = "dispatch" item_state_slots = list(slot_r_hand_str = "detective", slot_l_hand_str = "detective") armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS siemens_coefficient = 0.9 /obj/item/clothing/under/rank/security2 diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 83063a48b6..83136a205a 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -64,7 +64,7 @@ desc = "It makes you look HONKable!" icon_state = "sexyclown" item_state_slots = list(slot_r_hand_str = "clown", slot_l_hand_str = "clown") - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST rolled_sleeves = -1 //Please never /obj/item/clothing/under/clown //i'm only putting it here to make subtypes of it, since the original suit is under/rank/clown @@ -138,7 +138,7 @@ w_class = ITEMSIZE_LARGE//bulky item gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | ARMS //Needs gloves and shoes with cold protection to be fully protected. min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE rolled_sleeves = 0 @@ -150,7 +150,7 @@ desc = "it's a cybernetically enhanced jumpsuit used for administrative duties." gas_transfer_coefficient = 0.01 permeability_coefficient = 0.01 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS armor = list(melee = 100, bullet = 100, laser = 100,energy = 100, bomb = 100, bio = 100, rad = 100) cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE @@ -176,7 +176,7 @@ desc = "A thick, layered grey undersuit lined with power cables. Feels a little like wearing an electrical storm." icon_state = "psysuit" item_state_slots = list(slot_r_hand_str = "black", slot_l_hand_str = "black") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS /obj/item/clothing/under/gentlesuit name = "gentlemans suit" @@ -218,7 +218,7 @@ /obj/item/clothing/under/suit_jacket/female/skirt name = "executive skirt" desc = "A formal suit skirt for women, intended for the station's finest." - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS icon_state = "black_suit_fem" item_state = "black_formal_skirt" @@ -227,7 +227,7 @@ desc = "It's just like one of my Japanese animes!" icon_state = "schoolgirl" item_state_slots = list(slot_r_hand_str = "blue", slot_l_hand_str = "blue") - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/overalls name = "laborer's overalls" @@ -239,7 +239,7 @@ name = "sleek overalls" desc = "A set of modern pleather reinforced overalls." icon_state = "overalls_sleek" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/overalls/service name = "workman overalls" @@ -265,7 +265,7 @@ desc = "Yarr." icon_state = "pirate" item_state_slots = list(slot_r_hand_str = "sl_suit", slot_l_hand_str = "sl_suit") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/soviet name = "soviet uniform" @@ -283,7 +283,7 @@ name = "kilt" desc = "Includes shoes and plaid" icon_state = "kilt" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET + body_parts_covered = CHEST|FEET rolled_sleeves = 0 /obj/item/clothing/under/sexymime @@ -291,7 +291,7 @@ desc = "The only time when you DON'T enjoy looking at someone's rack." icon_state = "sexymime" item_state_slots = list(slot_r_hand_str = "mime", slot_l_hand_str = "mime") - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST rolled_sleeves = -1 //Please never /obj/item/clothing/under/sexymime/dress //another style of dress closer to the jumpsuit than the sexy outfit @@ -312,32 +312,12 @@ icon_state = "ascetic" item_state_slots = list(slot_r_hand_str = "white", slot_l_hand_str = "white") -/obj/item/clothing/under/robe - name = "black robe" - desc = "A black robe. It gives off uncomfortable cult vibes." - icon_state = "robe" - -/obj/item/clothing/under/whiterobe - name = "white robe" - desc = "A white robe. It gives off uncomfortable cult vibes." - icon_state = "whiterobe" - -/obj/item/clothing/under/goldrobe - name = "black gold-lined robe" - desc = "A gold-lined black robe. It gives off uncomfortable cult vibes, but fancy." - icon_state = "goldrobe" - -/obj/item/clothing/under/whitegoldrobe - name = "white gold-lined robe" - desc = "A gold-lined white robe. It gives off uncomfortable cult vibes, but fancy." - icon_state = "whitegoldrobe" - /* * Dress Stuff */ /obj/item/clothing/under/dress - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/blacktango name = "black tango dress" @@ -420,37 +400,37 @@ name = "site manager's dress uniform" desc = "Feminine fashion for the style conscious " + JOB_SITE_MANAGER + "." icon_state = "dress_cap" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/dress/dress_hop name = "head of personnel dress uniform" desc = "Feminine fashion for the style conscious HoP." icon_state = "dress_hop" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/dress/dress_hr name = "human resources director uniform" desc = "Superior class for the nosy H.R. Director." icon_state = "huresource" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/dress/black_corset name = "black corset" desc = "A black corset and skirt for those fancy nights out." icon_state = "black_corset" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/flower_dress name = "flower dress" desc = "A beautiful dress with a skirt of flowers." icon_state = "flower_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/red_swept_dress name = "red swept dress" desc = "A red dress that sweeps to the side." icon_state = "red_swept_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/flamenco name = "flamenco dress" @@ -513,13 +493,13 @@ name = "polka dot dress" desc = "A sleeveless, cream colored dress with red polka dots." icon_state = "polka" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/twistfront name = "twistfront crop dress" desc = "A black skirt and red twistfront croptop. Fancy!" icon_state = "twistfront" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/cropdress name = "crop dress" @@ -545,31 +525,31 @@ name = "little black dress" desc = "A little strapless black dress with a red ribbon and flower accessory." icon_state = "littleblackdress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/pinktutu name = "pink tutu" desc = "A black leotard with a pink mesh tutu. Perfect for ballet practice." icon_state = "pinktutu" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/festivedress name = "festive dress" desc = "A red and white dress themed after some winter holidays. Tastefully festive!" icon_state = "festivedress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/revealingdress name = "revealing dress" desc = "A very revealing black and blue dress. Is this work appropriate?" icon_state = "revealingdress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/gothic name = "gothic dress" desc = "A black dress with a sheer mesh over it, tastefully old school goth." icon_state = "gothic" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/formalred name = "formal red dress" @@ -597,11 +577,6 @@ desc = "The modern twist on a forgotten pattern, the Verglas style utilizes comfortable velvet and silver white satin to create an otherworldly effect evocative of winter, or the void." icon_state = "verglas_dress" -/obj/item/clothing/under/dress/goddess - name = "goddess dress" - desc = "A blue and orange dress fit for a goddess." - icon_state = "goddess" - /obj/item/clothing/under/dress/alpine name = "alpine dress" desc = "A green and white dress that makes you want to yodel." @@ -616,7 +591,7 @@ name = "golden wrap" desc = "An outfit so ostentatious that you feel poorer just looking at it." icon_state = "goldwrap" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/hightrousers name = "high-waisted trousers" @@ -648,7 +623,7 @@ */ /obj/item/clothing/under/wedding - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/wedding/bride_orange name = "orange wedding dress" @@ -679,7 +654,7 @@ desc = "A white wedding gown made from the finest silk." icon_state = "bride_white" flags_inv = HIDESHOES - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/wedding/floofdress name = "floofy dress" @@ -700,49 +675,49 @@ name = "sundress" desc = "Makes you want to frolic in a field of daisies." icon_state = "sundress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/sundress_white name = "flowery white sundress" desc = "A white sundress decorated with purple lilies." icon_state = "sundress_white" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/sundress_pink name = "pink stripied sundress" desc = "A cute pink sundress." icon_state = "pinksun" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/sundress_white name = "white sundress" desc = "A white sundress, it's short." icon_state = "whitesun" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/sundress_pinkbow name = "bowed pink sundress" desc = "A cute pink sundress with a bow." icon_state = "bowsun" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/sundress_blue name = "long blue sundress" desc = "A long blue sun dress with white frills towards the bottom." icon_state = "bluesun" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/dress/sundress_pinkshort name = "short pink sundress" desc = "A very short pink sundress, it's more like a chemise." icon_state = "shortpink" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/twopiece name = "two-piece dress" desc = "A fancy two-piece dress, the pieces are sewn together." icon_state = "twopiece" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/gothic2 name = "lacey gothic dress" @@ -892,7 +867,7 @@ name = "white cheongsam" desc = "It is a white cheongsam dress." icon_state = "cheongsam-white" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/cheongsam/red name = "red cheongsam" @@ -995,13 +970,13 @@ name = "green asymmetrical jumpsuit" desc = "A green futuristic uniform with asymmetrical pants. Trendy!" icon_state = "greenasym" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/cyberpunkharness name = "cyberpunk strapped harness" desc = "A cyberpunk styled harness and pants. Perfect for your dystopian future." icon_state = "cyberhell" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS /obj/item/clothing/under/blackngold name = "black and gold gown" @@ -1123,26 +1098,6 @@ desc = "An all white one-piece that maintains modesty without sacrificing class." icon_state = "swim_stream" -/obj/item/clothing/under/wetsuit - name = "wetsuit" - desc = "For when you need to scuba dive your way into an enemy base." - icon_state = "wetsuit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS - -/obj/item/clothing/under/wetsuit_skimpy - name = "tactical wetsuit" - desc = "For when you need to scuba dive your way into an enemy base but still want to show off a little skin." - icon_state = "wetsuit_skimpy" - body_parts_covered = UPPER_TORSO|LOWER_TORSO - -/obj/item/clothing/under/wetsuit_rec - name = "recreational wetsuit" - desc = "For when you need to kayak your way into an enemy base." - icon_state = "wetsuit_rec" - body_parts_covered = UPPER_TORSO|LOWER_TORSO - cold_protection = UPPER_TORSO|LOWER_TORSO - /* * Pyjamas */ @@ -1152,14 +1107,14 @@ desc = "Slightly old-fashioned sleepwear." icon_state = "blue_pyjamas" item_state_slots = list(slot_r_hand_str = "blue", slot_l_hand_str = "blue") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS /obj/item/clothing/under/redpyjamas name = "red pyjamas" desc = "Slightly old-fashioned sleepwear." icon_state = "red_pyjamas" item_state_slots = list(slot_r_hand_str = "red", slot_l_hand_str = "red") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS /obj/item/clothing/under/rank/psych/turtleneck/sweater desc = "A warm looking sweater and a pair of dark blue slacks." @@ -1172,7 +1127,7 @@ desc = "A flimsy examination gown, the back ties never close." icon_state = "medicalgown" worn_state = "medicalgown" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/bathrobe name = "bathrobe" @@ -1378,7 +1333,7 @@ icon_state = "mod_coat_pants" worn_state = "mod_coat_pants" item_state_slots = list(slot_r_hand_str = "red", slot_l_hand_str = "red") - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS starting_accessories = list(/obj/item/clothing/accessory/jacket/modwrap) /obj/item/clothing/under/modjump @@ -1631,7 +1586,7 @@ name = "cream baggy turtleneck (cream)" desc = "A cozy knit turtleneck. It's too baggy and comfortable to be tactical." icon_state = "bb_turtle" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/turtlebaggy/cream_fem @@ -1694,7 +1649,7 @@ name = "cableknit sweater" desc = "Why trade style for comfort?" icon_state = "cableknit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/bigsweater/keyhole icon_state = "keyhole" @@ -1703,7 +1658,7 @@ name = "cableknit sweater" desc = "Why trade style for comfort?." icon_state = "cableknit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS //half-moon outfit diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm index 6b3a9d01c4..6a71833c23 100644 --- a/code/modules/clothing/under/miscellaneous_vr.dm +++ b/code/modules/clothing/under/miscellaneous_vr.dm @@ -267,7 +267,7 @@ icon_override = 'icons/inventory/uniform/mob_vr.dmi' icon_state = "qipao" item_state = "qipao" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/qipao/white name = "white qipao" @@ -481,7 +481,7 @@ icon_state = "qipao3" item_state = "qipao3" worn_state = "qipao3" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/qipao2_colorable name = "slim qipao" @@ -491,7 +491,7 @@ icon_state = "qipao2" item_state = "qipao2" worn_state = "qipao2" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/antediluvian name = "antediluvian corset" @@ -501,7 +501,7 @@ icon_state = "antediluvian" item_state = "antediluvian" worn_state = "antediluvian" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/dress/antediluvian/sheerless desc = "A regal black and gold tight corset with silky sleeves. This one is just the corset and sleeves, sans lace stockings and gloves." @@ -621,7 +621,7 @@ desc = "A small black dress with a flames print on it. Perfect for recoloring!" icon = 'icons/inventory/uniform/item_vr.dmi' default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' - icon_state = "cdress_fire" + icon_state = "cflame_dress" /obj/item/clothing/under/dress/cbridesmaid name = "fancy dress" @@ -633,6 +633,7 @@ /obj/item/clothing/under/dress/cswoopdress name = "swoop dress" desc = "A fancy gown for those who like to show leg. Perfect for recoloring!" + icon = 'icons/inventory/uniform/mob_vr.dmi' default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' icon_state = "cswoopdress" @@ -648,7 +649,7 @@ item_state = "arar" rolled_sleeves = -1 rolled_down = -1 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/replika/arar name = "repair-worker replikant bodysuit" @@ -718,7 +719,7 @@ item_state = "gestalt_skirt" rolled_sleeves = -1 rolled_down = -1 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS /obj/item/clothing/under/gestalt/sleek_skirt name = "sleek crew skirt" @@ -746,4 +747,4 @@ desc = "A tight-fitting, sleeveless single-piece black uniform with striking crimson trim." icon_state = "gestalt_sleeveless" item_state = "gestalt_sleeveless" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + body_parts_covered = CHEST|LEGS diff --git a/code/modules/clothing/under/shiny_vr.dm b/code/modules/clothing/under/shiny_vr.dm index 9020823276..d1b98602cf 100644 --- a/code/modules/clothing/under/shiny_vr.dm +++ b/code/modules/clothing/under/shiny_vr.dm @@ -1,4 +1,5 @@ /obj/item/clothing/under/shiny + name = DEVELOPER_WARNING_NAME icon_override = 'icons/mob/modular_shiny_vr.dmi' icon = 'icons/obj/clothing/modular_shiny_vr.dmi' desc = "You can be a super-hero in this! Just don't forget your mask!" @@ -19,4 +20,4 @@ /obj/item/clothing/under/shiny/leotard/poly name = "polychromic shiny leotard" - polychromic = TRUE \ No newline at end of file + polychromic = TRUE diff --git a/code/modules/clothing/under/shorts.dm b/code/modules/clothing/under/shorts.dm index 75160cfd05..eae9aeefdc 100644 --- a/code/modules/clothing/under/shorts.dm +++ b/code/modules/clothing/under/shorts.dm @@ -85,7 +85,7 @@ /obj/item/clothing/under/shorts/jeans/grey/female name = "grey jeans short shorts" - icon_state = "grey_shorts_f" + icon_state = "greyshorts" //the _f variant was lost to time. Not deleted to keep from messing with maps. /obj/item/clothing/under/shorts/khaki name = "khaki shorts" @@ -145,7 +145,7 @@ name = "black skirt" desc = "A black skirt, very fancy!" icon_state = "blackskirt" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS /obj/item/clothing/under/skirt/outfit/plaid_blue name = "blue plaid skirt" diff --git a/code/modules/clothing/under/solgov.dm b/code/modules/clothing/under/solgov.dm index 228c22b095..00a3d0f163 100644 --- a/code/modules/clothing/under/solgov.dm +++ b/code/modules/clothing/under/solgov.dm @@ -19,7 +19,7 @@ worn_state = "miami" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) siemens_coefficient = 0.9 - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/solgov/pt/sifguard name = "\improper SifGuard pt uniform" @@ -94,13 +94,13 @@ /obj/item/clothing/under/solgov/utility/sifguard_skirt name = "\improper SifGuard skirt" desc = "A black turtleneck and skirt, the elusive ladies' uniform of the Sif Defense Force." - icon_state = "blackservicefem" + icon_state = "blackservicef" worn_state = "blackservicefem" /obj/item/clothing/under/solgov/utility/sifguard_skirt/officer - name = "\improper SifGuard officer skirt" - desc = "A black turtleneck and skirt, the elusive ladies' uniform of the Sif Defense Force. This one has gold trim." - icon_state = "blackservicefem_com" + name = "\improper NDF officer skirt" + desc = "A black turtleneck and skirt, the elusive ladies' uniform of the Nanotrasen Defense Force. This one has gold trim." + icon_state = "blackservicef_com" worn_state = "blackservicefem_com" /obj/item/clothing/under/solgov/utility/sifguard/command @@ -534,4 +534,4 @@ icon_state = "gsa_work" worn_state = "gsa_work" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 10) - rolled_sleeves = 0 \ No newline at end of file + rolled_sleeves = 0 diff --git a/code/modules/clothing/under/solgov_vr.dm b/code/modules/clothing/under/solgov_vr.dm index 57d88880eb..84d897cbea 100644 --- a/code/modules/clothing/under/solgov_vr.dm +++ b/code/modules/clothing/under/solgov_vr.dm @@ -22,9 +22,7 @@ name = "\improper NDF skirt" desc = "A black turtleneck and skirt, the elusive ladies' uniform of the Nanotrasen Defense Force." -/obj/item/clothing/under/solgov/utility/sifguard_skirt/officer - name = "\improper NDF officer skirt" - desc = "A black turtleneck and skirt, the elusive ladies' uniform of the Nanotrasen Defense Force. This one has gold trim." + /obj/item/clothing/under/solgov/utility/sifguard/officer name = "\improper NDF officer's uniform" diff --git a/code/modules/clothing/under/xenos/teshari.dm b/code/modules/clothing/under/xenos/teshari.dm index 5127ae5b13..caac8ea6e0 100644 --- a/code/modules/clothing/under/xenos/teshari.dm +++ b/code/modules/clothing/under/xenos/teshari.dm @@ -125,7 +125,7 @@ name = "Undercoat" desc = "A Teshari traditional garb, with a modern twist! Made of micro and nanofibres to make it light and billowy, perfect for going fast and stylishly!" icon_state = "tesh_uniform_bo" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST /obj/item/clothing/under/teshari/undercoat/standard/black_orange name = "black and orange undercoat" diff --git a/code/modules/economy/vending_machines_vr.dm b/code/modules/economy/vending_machines_vr.dm index 2600f935a7..541fd2e4c0 100644 --- a/code/modules/economy/vending_machines_vr.dm +++ b/code/modules/economy/vending_machines_vr.dm @@ -1215,7 +1215,7 @@ products = list(/obj/item/clothing/suit/storage/apron = 5, /obj/item/clothing/suit/storage/flannel/aqua = 5, /obj/item/clothing/suit/storage/toggle/bomber = 5, - /obj/item/clothing/suit/storage/bomber/alt = 5, + /obj/item/clothing/suit/storage/bomber = 5, /obj/item/clothing/suit/storage/flannel/brown = 5, /obj/item/clothing/suit/storage/toggle/cardigan = 5, /obj/item/clothing/accessory/poncho/roles/cloak/custom = 5, @@ -1318,7 +1318,7 @@ prices = list(/obj/item/clothing/suit/storage/apron = 100, /obj/item/clothing/suit/storage/flannel/aqua = 100, /obj/item/clothing/suit/storage/toggle/bomber = 100, - /obj/item/clothing/suit/storage/bomber/alt = 100, + /obj/item/clothing/suit/storage/bomber = 100, /obj/item/clothing/suit/storage/flannel/brown = 100, /obj/item/clothing/suit/storage/toggle/cardigan = 100, /obj/item/clothing/accessory/poncho/roles/cloak/custom = 100, @@ -2325,7 +2325,7 @@ products = list(/obj/item/clothing/suit/storage/apron = 5, /obj/item/clothing/suit/storage/flannel/aqua = 5, /obj/item/clothing/suit/storage/toggle/bomber = 5, - /obj/item/clothing/suit/storage/bomber/alt = 5, + /obj/item/clothing/suit/storage/bomber = 5, /obj/item/clothing/suit/storage/flannel/brown = 5, /obj/item/clothing/suit/storage/toggle/cardigan = 5, /obj/item/clothing/accessory/poncho/roles/cloak/custom = 5, diff --git a/code/modules/hydroponics/seed.dm b/code/modules/hydroponics/seed.dm index 41d86f7839..b347beeef8 100644 --- a/code/modules/hydroponics/seed.dm +++ b/code/modules/hydroponics/seed.dm @@ -160,7 +160,7 @@ return if(chems && chems.len) - var/body_coverage = HEAD|FACE|EYES|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + var/body_coverage = HEAD|FACE|EYES|CHEST|LEGS|FEET|ARMS|HANDS for(var/obj/item/clothing/clothes in target) if(target.item_is_in_hands(clothes)) @@ -204,7 +204,7 @@ for(var/mob/living/M in T.contents) if(!M.reagents) continue - var/body_coverage = HEAD|FACE|EYES|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + var/body_coverage = HEAD|FACE|EYES|CHEST|LEGS|FEET|ARMS|HANDS for(var/obj/item/clothing/clothes in M) if(M.item_is_in_hands(clothes)) continue diff --git a/code/modules/integrated_electronics/core/assemblies/clothing.dm b/code/modules/integrated_electronics/core/assemblies/clothing.dm index d2f559013f..4c2627ed02 100644 --- a/code/modules/integrated_electronics/core/assemblies/clothing.dm +++ b/code/modules/integrated_electronics/core/assemblies/clothing.dm @@ -79,13 +79,6 @@ add_item_action(new /datum/action/item_action/activate(src, name)) -/obj/item/clothing/Destroy() - if(IC) - IC.clothing = null - action_circuit = null // Will get deleted by qdel-ing the IC assembly. - qdel(IC) - return ..() - // Specific subtypes. // Jumpsuit. diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm index 6a4f32a8f4..c7f5b9ff4d 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_rig.dm @@ -117,7 +117,7 @@ sprite_sheets = list( SPECIES_PROTEAN = 'icons/mob/head.dmi', SPECIES_HUMAN = 'icons/mob/head.dmi', - SPECIES_TAJARAN = 'icons/mob/species/tajaran/helmet.dmi', + SPECIES_TAJARAN = 'icons/mob/species/tajaran/helmet.dmi', SPECIES_SKRELL = 'icons/mob/species/skrell/helmet.dmi', SPECIES_UNATHI = 'icons/mob/species/unathi/helmet.dmi', SPECIES_XENOHYBRID = 'icons/mob/species/unathi/helmet.dmi', @@ -137,7 +137,7 @@ sprite_sheets_obj = list( SPECIES_PROTEAN = 'icons/mob/head.dmi', SPECIES_HUMAN = 'icons/mob/head.dmi', - SPECIES_TAJARAN = 'icons/mob/head.dmi', + SPECIES_TAJARAN = 'icons/mob/head.dmi', SPECIES_SKRELL = 'icons/mob/head.dmi', SPECIES_UNATHI = 'icons/mob/head.dmi', SPECIES_XENOHYBRID = 'icons/mob/head.dmi', @@ -153,8 +153,10 @@ SPECIES_VOX = 'icons/mob/head.dmi', SPECIES_XENOMORPH_HYBRID = 'icons/mob/head.dmi' ) - icon = 'icons/mob/head.dmi' + icon = 'icons/inventory/head/item.dmi' default_worn_icon = 'icons/mob/head.dmi' + icon_state = "nanomachine_rig" + //item_state = "nanomachine_rig" /obj/item/clothing/gloves/gauntlets/rig/protean name = "mass" @@ -164,7 +166,7 @@ sprite_sheets = list( SPECIES_PROTEAN = 'icons/mob/hands.dmi', SPECIES_HUMAN = 'icons/mob/hands.dmi', - SPECIES_TAJARAN = 'icons/mob/hands.dmi', + SPECIES_TAJARAN = 'icons/mob/hands.dmi', SPECIES_SKRELL = 'icons/mob/hands.dmi', SPECIES_UNATHI = 'icons/mob/hands.dmi', SPECIES_XENOHYBRID = 'icons/mob/hands.dmi', @@ -183,7 +185,7 @@ sprite_sheets_obj = list( SPECIES_HUMAN = 'icons/mob/hands.dmi', - SPECIES_TAJARAN = 'icons/mob/hands.dmi', + SPECIES_TAJARAN = 'icons/mob/hands.dmi', SPECIES_SKRELL = 'icons/mob/hands.dmi', SPECIES_UNATHI = 'icons/mob/hands.dmi', SPECIES_XENOHYBRID = 'icons/mob/hands.dmi', @@ -199,8 +201,10 @@ SPECIES_VOX = 'icons/mob/hands.dmi', SPECIES_XENOMORPH_HYBRID = 'icons/mob/hands.dmi' ) - icon = 'icons/mob/hands.dmi' + icon = 'icons/inventory/hands/item.dmi' default_worn_icon = 'icons/mob/hands.dmi' + icon_state = "nanomachine_rig" + //item_state = "nanomachine_rig" /obj/item/clothing/shoes/magboots/rig/protean name = "mass" @@ -212,8 +216,10 @@ SPECIES_XENOMORPH_HYBRID = 'icons/mob/species/xenomorph_hybrid/shoes.dmi' ) sprite_sheets_obj = list() - icon = 'icons/mob/feet.dmi' + icon = 'icons/inventory/feet/item.dmi' default_worn_icon = 'icons/mob/feet.dmi' + icon_state = "nanomachine_rig" + //item_state = "nanomachine_rig" /obj/item/clothing/suit/space/rig/protean name = "mass" @@ -235,8 +241,10 @@ ) sprite_sheets_obj = list() - icon = 'icons/mob/spacesuit.dmi' + icon = 'icons/inventory/suit/item.dmi' default_worn_icon = 'icons/mob/spacesuit.dmi' + icon_state = "nanomachine_rig" + //item_state = "nanomachine_rig" //Copy pasted most of this proc from base because I don't feel like rewriting the base proc with a shit load of exceptions /obj/item/rig/protean/attackby(obj/item/W, mob/living/user) @@ -469,7 +477,7 @@ return 0 return 1 -/obj/item/rig/protean/toggle_seals(mob/living/carbon/human/M, instant) +/obj/item/rig/protean/toggle_seals(mob/living/carbon/human/M, instant = TRUE) M = src.wearer ..() diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/weaver_objs.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/weaver_objs.dm index f9012e092a..b82d76c5f3 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/weaver_objs.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/weaver_objs.dm @@ -130,5 +130,5 @@ desc = "A webbed cocoon that completely restrains the wearer." icon_state = "web_bindings" item_state = "web_bindings_mob" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT|HIDETAIL diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 8a1ffb4e5c..3ddbb30d61 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -55,7 +55,7 @@ icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "wolfgirluni_mob" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS //SpoopyLizz: Roiz Lizden /obj/item/clothing/suit/storage/hooded/wintercoat/roiz @@ -234,7 +234,7 @@ item_state = "fedcoat" blood_overlay_type = "coat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS allowed = list( /obj/item/tank/emergency/oxygen, /obj/item/flashlight, @@ -304,7 +304,7 @@ item_state = "fedmodern" blood_overlay_type = "coat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS allowed = list( /obj/item/tank/emergency/oxygen, /obj/item/flashlight, @@ -514,7 +514,7 @@ item_state = "tasvest" blood_overlay_type = "coat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS + body_parts_covered = CHEST|LEGS|ARMS armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0) //Event Costumes Below @@ -552,6 +552,10 @@ item_state = "chicahead_mob" //Anamatronic Suits + +/obj/item/clothing/suit/fluff + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/suit/fluff/freddy name = "Animatronic Suit" desc = "Votre toast, je peux vous le rendre." @@ -564,7 +568,7 @@ gas_transfer_coefficient = 0.01 permeability_coefficient = 0.02 - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + body_parts_covered = CHEST|LEGS|FEET|ARMS|HANDS allowed = list(/obj/item/flashlight,/obj/item/tank) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT @@ -896,7 +900,7 @@ //Kitsuhana Uniforms /obj/item/clothing/under/rank/khi - name = "Delete Me" + name = DEVELOPER_WARNING_NAME desc = "Why did you spawn this one? Dork." sensor_mode = 3 @@ -946,6 +950,9 @@ icon_state = "khi_uniform_civ" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) +/obj/item/clothing/under/rank/khi/fluff + name = DEVELOPER_WARNING_NAME + /obj/item/clothing/under/rank/khi/fluff/aronai //Aro fluff version name = "KHI meditech suit" desc = "Kitsuhana Heavy Industries uniform. This one has the colors of a resleeving or mnemonics engineer. It has 'Aronai' written inside the top." @@ -956,15 +963,15 @@ /obj/item/clothing/under/fluff/earthenbreath name = "Earth Swimsuit" desc = "The suit of Subject 688,509,403. Made of an enviromentally safe elastic. Dry-clean not required." - icon_state = "fluffearthenbreath" - item_state = "fluffearthenbreath_mob" + icon_state = "swim_earth" + item_state = "swim_earth" //jacobdragon:Earthen Breath /obj/item/clothing/head/fluff/hairflowerpin name = "Hair Flower Pin" desc = "It's a flower fashioned into a hair pin. It's very nice." - icon_state = "hairflowerpin" - item_state = "hairflowerpin_mob" + icon_state = "hairflower_pink" + item_state = "hairflower_pink" body_parts_covered = 0 //bwoincognito:Octavious Ward @@ -1124,7 +1131,7 @@ icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "chococoat_on" icon_state = "chococoat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS allowed = list (/obj/item/material/knife) //KiwiDaNinja: Chakat Taiga @@ -1140,6 +1147,7 @@ Departamental Swimsuits, for general use */ /obj/item/clothing/under/swimsuit/fluff/ + name = DEVELOPER_WARNING_NAME icon = 'icons/vore/custom_clothes_vr.dmi' icon_override = 'icons/vore/custom_clothes_vr.dmi' siemens_coefficient = 1 @@ -1251,7 +1259,7 @@ Departamental Swimsuits, for general use icon = 'icons/inventory/suit/item_vr.dmi' default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' icon_state = "trek_ds9_coat" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS permeability_coefficient = 0.50 allowed = list( /obj/item/flashlight, /obj/item/analyzer, @@ -1634,7 +1642,7 @@ Departamental Swimsuits, for general use item_state = "kilanodress_mob" species_restricted = null - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS //BeyondMyLife:Kilano Soryu /obj/item/clothing/gloves/fluff/kilano @@ -1694,7 +1702,7 @@ Departamental Swimsuits, for general use sprite_sheets = list( SPECIES_TESHARI = 'icons/vore/custom_clothes_tesh_vr.dmi' ) - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST //Aztectornado:Tron inspired Siren outfit /obj/item/clothing/under/fluff/siren @@ -1787,13 +1795,13 @@ Departamental Swimsuits, for general use item_state = "sweater_annie" slot_flags = SLOT_OCLOTHING | SLOT_TIE - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS + body_parts_covered = CHEST|ARMS w_class = ITEMSIZE_NORMAL slot = ACCESSORY_SLOT_OVER //General definition for bracer items. No icons. /obj/item/clothing/accessory/bracer - name = "bracer" + name = DEVELOPER_WARNING_NAME // "bracer" desc = "A bracer." icon_state = null item_state = null @@ -1911,7 +1919,7 @@ Departamental Swimsuits, for general use /obj/item/clothing/under/fluff/excess name = "XS-21E Labeled Latex Clothing" desc = "A latex navy blue tube-top and matching compression shorts, with a bright yellow stripe down the side. \"XS-21E\" is written on the thigh. \"Warning\" is written in yellow by the stripe on the top." - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST icon = 'icons/vore/custom_clothes_vr.dmi' icon_state = "latex_clothes" item_state = "latex_clothes_mob" @@ -2042,7 +2050,7 @@ Departamental Swimsuits, for general use flags = null armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) // It's not armor, it's a dorky frickin cape body_parts_covered = null // Cape ain't gonna cover a THING - cold_protection = UPPER_TORSO|LOWER_TORSO|ARMS // It will keep you toasty tho, it's more than big enough to help with that! Just wrap the thing around you when on the surface, idk + cold_protection = CHEST|ARMS // It will keep you toasty tho, it's more than big enough to help with that! Just wrap the thing around you when on the surface, idk icon = 'icons/vore/custom_clothes_vr.dmi' icon_override = 'icons/vore/custom_onmob_vr.dmi' icon_state = "nikkicape" @@ -2219,6 +2227,8 @@ Departamental Swimsuits, for general use add_attack_logs(user, target, "Teleported [target] with via \the [src]'s [translocator]!") else ..() +/obj/item/clothing/suit/storage/hooded/fluff + name = DEVELOPER_WARNING_NAME //Vitoras: Verie /obj/item/clothing/suit/storage/hooded/fluff/verie name = "distressingly cyan hoodie" @@ -2263,7 +2273,7 @@ Departamental Swimsuits, for general use icon_override = 'icons/vore/custom_onmob_vr.dmi' item_state = "veriesuit" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|FEET|ARMS|HANDS + body_parts_covered = CHEST|FEET|ARMS|HANDS //PastelPrinceDan: Kiyoshi Maki /obj/item/clothing/accessory/poncho/roles/cloak/fluff/cloakglowing @@ -2334,7 +2344,7 @@ Departamental Swimsuits, for general use /obj/item/clothing/head/hood/winter/fluff/mechanic name = "mechanic winter hood" desc = "A blue and yellow winter coat's hood." - icon = 'icons/vore/custom_clothes_vr.dmi' + icon = 'icons/inventory/head/item.dmi' icon_state = "mechahood" icon_override = 'icons/vore/custom_onmob_vr.dmi' @@ -2489,7 +2499,7 @@ Departamental Swimsuits, for general use icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "foxflightsuit_mob" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS //Shalax: Cerise Duelliste /obj/item/storage/belt/security/fluff/cerise @@ -2513,7 +2523,7 @@ Departamental Swimsuits, for general use icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "greek_dress" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS + body_parts_covered = CHEST|ARMS|LEGS //JadeManique: Freyr /obj/item/clothing/mask/fluff/freyr_mask @@ -2550,7 +2560,7 @@ Departamental Swimsuits, for general use icon_override = 'icons/vore/custom_onmob_vr.dmi' item_state = "perrinrobes_s" - body_parts_covered = UPPER_TORSO|LOWER_TORSO + body_parts_covered = CHEST //Fuackwit422: Zera Livanne /obj/item/clothing/suit/storage/toggle/labcoat/fluff/zera diff --git a/code/modules/vore/fluffstuff/custom_items_vr.dm b/code/modules/vore/fluffstuff/custom_items_vr.dm index 6b7a82c83a..0147be3eb5 100644 --- a/code/modules/vore/fluffstuff/custom_items_vr.dm +++ b/code/modules/vore/fluffstuff/custom_items_vr.dm @@ -452,7 +452,7 @@ icon = 'icons/mob/taursuits_wolf.dmi' icon_state = "serdy_armor" item_state = "serdy_armor" - body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS //It's a full body suit, minus hands and feet. Arms and legs should be protected, not just the torso. Retains normal security armor values still. + body_parts_covered = CHEST|LEGS|ARMS //It's a full body suit, minus hands and feet. Arms and legs should be protected, not just the torso. Retains normal security armor values still. /obj/item/clothing/suit/armor/vest/wolftaur/serdy/mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) if(istype(H) && istype(H.tail_style, /datum/sprite_accessory/tail/taur/wolf)) @@ -472,9 +472,7 @@ armor = list(melee = 40, bullet = 30, laser = 30, energy = 10, bomb = 10, bio = 0, rad = 0) icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "serdyhelm_mob" - cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_COLD_PROTECTION_TEMPERATURE - heat_protection = HEAD max_heat_protection_temperature = HELMET_MAX_HEAT_PROTECTION_TEMPERATURE siemens_coefficient = 0.7 w_class = ITEMSIZE_NORMAL @@ -779,6 +777,9 @@ desc = "A primarily blue ID with a holographic 'WAH' etched onto its back. The letters do not obscure anything important on the card. It is shiny and it feels very bumpy." title_strings = list("Amaya Rahl's Wah-identification card", "Amaya Rahl's Wah-ID card") +/obj/item/clothing/glasses/fluff + name = DEVELOPER_WARNING_NAME + //General use, Verk felt like sharing. /obj/item/clothing/glasses/fluff/science_proper name = "Aesthetic Science Goggles" diff --git a/code/modules/xenoarcheaology/artifacts/replicator_vr.dm b/code/modules/xenoarcheaology/artifacts/replicator_vr.dm index 278e5867b7..9c05f4b143 100644 --- a/code/modules/xenoarcheaology/artifacts/replicator_vr.dm +++ b/code/modules/xenoarcheaology/artifacts/replicator_vr.dm @@ -352,7 +352,6 @@ /obj/item/clothing/gloves/black, /obj/item/clothing/under/swimsuit/black, /obj/item/clothing/under/shorts/black, - /obj/item/clothing/under/wetsuit_skimpy, /obj/item/clothing/under/dress/maid, /obj/item/clothing/under/fluff/latexmaid, /obj/item/clothing/suit/oversize, diff --git a/code/modules/xenoarcheaology/effects/vampire.dm b/code/modules/xenoarcheaology/effects/vampire.dm index ea219510ed..81de444776 100644 --- a/code/modules/xenoarcheaology/effects/vampire.dm +++ b/code/modules/xenoarcheaology/effects/vampire.dm @@ -82,7 +82,7 @@ if(charges >= 10) //Listen, if you have INTENTIONALLY FED THE SPOOKY, SCARY ARTIFACT THAT IS DRAINING YOUR BLOOD, then go ahead and have your spooky reward. charges -= 10 - var/manifestation = pick(/obj/item/soulstone, /obj/item/melee/artifact_blade, /obj/item/book/tome, /obj/item/clothing/head/helmet/space/cult, /obj/item/clothing/suit/space/cult, /obj/structure/constructshell) + var/manifestation = pick(/obj/item/soulstone, /obj/item/melee/artifact_blade, /obj/item/book/tome, /obj/item/clothing/head/helmet/space/cult, /obj/item/clothing/suit/space/cult, /obj/structure/constructshell, /obj/item/clothing/shoes/cult) new manifestation(pick(RANGE_TURFS(1,T))) if(charges >= 3) diff --git a/code/modules/xenoarcheaology/finds/special.dm b/code/modules/xenoarcheaology/finds/special.dm index f2ae8dc1a4..c07da9ce34 100644 --- a/code/modules/xenoarcheaology/finds/special.dm +++ b/code/modules/xenoarcheaology/finds/special.dm @@ -96,7 +96,7 @@ //use up stored charges if(charges >= 10) charges -= 10 - var/new_object = pick(/obj/item/soulstone, /obj/item/melee/artifact_blade, /obj/item/book/tome, /obj/item/clothing/head/helmet/space/cult, /obj/item/clothing/suit/space/cult, /obj/structure/constructshell) + var/new_object = pick(/obj/item/soulstone, /obj/item/melee/artifact_blade, /obj/item/book/tome, /obj/item/clothing/head/helmet/space/cult, /obj/item/clothing/suit/space/cult, /obj/structure/constructshell, /obj/item/clothing/shoes/cult) new new_object(pick(RANGE_TURFS(1,src))) playsound(src, 'sound/effects/ghost.ogg', 50, 1, -3) diff --git a/code/modules/xenoarcheaology/tools/equipment.dm b/code/modules/xenoarcheaology/tools/equipment.dm index 901f41570e..8037311627 100644 --- a/code/modules/xenoarcheaology/tools/equipment.dm +++ b/code/modules/xenoarcheaology/tools/equipment.dm @@ -34,11 +34,10 @@ item_state = "cespace_helmet" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 100) -//VOREStation Add Start /obj/item/clothing/suit/space/anomaly/heat name = "Heat Adapted Excavation suit" desc = "A pressure resistant excavation suit partially capable of insulating against exotic alien energies and heat." - heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + heat_protection = CHEST|LEGS|FEET|ARMS|HANDS max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE+1000 min_pressure_protection = 0 * ONE_ATMOSPHERE max_pressure_protection = 5* ONE_ATMOSPHERE @@ -46,8 +45,7 @@ /obj/item/clothing/head/helmet/space/anomaly/heat name = "Heat Adapted Excavation hood" desc = "A pressure resistant excavation hood partially capable of insulating against exotic alien energies and heat." - heat_protection = HEAD|FACE|EYES + heat_protection = HEAD max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE+1000 min_pressure_protection = 0 * ONE_ATMOSPHERE max_pressure_protection = 5* ONE_ATMOSPHERE -//VOREStation Add End \ No newline at end of file diff --git a/code/unit_tests/clothing_tests.dm b/code/unit_tests/clothing_tests.dm new file mode 100644 index 0000000000..f905d9072c --- /dev/null +++ b/code/unit_tests/clothing_tests.dm @@ -0,0 +1,177 @@ +/datum/unit_test/all_clothing_shall_be_valid + name = "CLOTHING: All clothing shall be valid" + var/signal_failed = FALSE + +/datum/unit_test/all_clothing_shall_be_valid/start_test() + var/failed = 0 + var/obj/storage = new() + + var/list/scan = subtypesof(/obj/item/clothing) + scan -= typesof(/obj/item/clothing/head/hood) // These are part of clothing, need to be tested uniquely + // Remove material armors, as dev_warning cannot be used to set their name + scan -= /obj/item/clothing/suit/armor/material + scan -= /obj/item/clothing/head/helmet/material + scan -= /obj/item/clothing/ears/offear // This is used for equip logic, not ingame + scan -= /obj/item/clothing/mask/ai // Breaks unit test entirely TODO + + var/i = 0 + var/tenths = 1 + var/a_tenth = scan.len / 10 + for(var/path as anything in scan) + var/obj/item/clothing/C = new path(storage) + failed += test_clothing(C) + + if(i > tenths * a_tenth) + log_unit_test("Clothing - Progress [tenths * 10]% - [i]/[scan.len]") + log_unit_test("---------------------------------------------------") + tenths++ + + if(istype(C,/obj/item/clothing/suit/storage/hooded)) + var/obj/item/clothing/suit/storage/hooded/H = C + if(H.hood) // Testing hoods when they init + failed += test_clothing(H.hood,storage) + + i++ + qdel(C) + qdel(storage) + + if(failed) + fail("One or more /obj/item/clothing items had invalid flags or icons") + else + pass("All /obj/item/clothing are valid.") + return 1 + +/datum/unit_test/all_clothing_shall_be_valid/proc/test_clothing(var/obj/item/clothing/C,var/obj/storage) + var/failed = FALSE + + // Do not test base-types + if(C.name == DEVELOPER_WARNING_NAME) + return FALSE + + // ID + if(!C.name) + log_unit_test("[C.type]: Clothing - Missing name.") + failed = TRUE + + if(C.name == "") + log_unit_test("[C.type]: Clothing - Empty name.") + failed = TRUE + + // Icons + if(!("[C.icon_state]" in cached_icon_states(C.icon))) + if(C.icon == initial(C.icon) && C.icon_state == initial(C.icon_state)) + log_unit_test("[C.type]: Clothing - Icon_state \"[C.icon_state]\" is not present in [C.icon].") + else + log_unit_test("[C.type]: Clothing - Icon_state \"[C.icon_state]\" is not present in [C.icon]. This icon/state was changed by init. Initial icon \"[initial(C.icon)]\". initial icon_state \"[initial(C.icon_state)]\". Check code.") + failed = TRUE + + // Disabled, as currently not working in a presentable way, spams the CI hard, do not enable unless fixed + #ifdef UNIT_TEST + // Time for the most brutal part. Dressing up some mobs with set species, and checking they have art + // An entire signal just for unittests had to be made for this! + var/list/body_types = list(SPECIES_HUMAN,SPECIES_VOX,SPECIES_TESHARI) // Otherwise we would be here for centuries + // ************************************************************************************************************************** + body_types = list() // DISABLED FOR NOW, No single person can resolve how many sprites are missing. + // ************************************************************************************************************************** + if(body_types.len) + if(C.species_restricted && C.species_restricted.len) + if(C.species_restricted[1] == "exclude") + for(var/B in body_types) + if(B in C.species_restricted) + body_types -= B + else + var/list/new_list = list() + for(var/B in body_types) + if(B in C.species_restricted) + new_list += B + body_types = new_list + // Get actual species that can use this, based on the mess of restricted/excluded logic above + var/obj/mob_storage = new() + var/mob/living/carbon/human/H = new(mob_storage) + RegisterSignal(H, COMSIG_UNITTEST_DATA, PROC_REF(get_signal_data)) + for(var/B in body_types) + H.set_species(B) + // spawn the mob, signalize it, and then give it the item to see what it gets. + H.put_in_active_hand(C) + H.equip_to_appropriate_slot(C) + H.drop_from_inventory(C, storage) + UnregisterSignal(H, COMSIG_UNITTEST_DATA) + qdel(H) + qdel(mob_storage) + // We failed the mob check + if(signal_failed) + failed = TRUE + #endif + + // Temps + if(C.min_cold_protection_temperature < 0) + log_unit_test("[C.type]: Clothing - Cold protection was lower than 0.") + failed = TRUE + + if(C.max_heat_protection_temperature && C.min_cold_protection_temperature && C.max_heat_protection_temperature < C.min_cold_protection_temperature) + log_unit_test("[C.type]: Clothing - Maximum heat protection was greater than minimum cold protection.") + failed = TRUE + + //var/valid_range = HEAD|UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS + if(C.cold_protection) + if(islist(C.cold_protection)) + log_unit_test("[C.type]: Clothing - cold_protection was defined as a list, when it is a bitflag.") + failed = TRUE + else if(!isnum(C.cold_protection)) + log_unit_test("[C.type]: Clothing - cold_protection was defined as something other than a number, when it is a bitflag.") + failed = TRUE + else + if(C.cold_protection && C.cold_protection != FULL_BODY) + // Check flags that should be unused + if(C.cold_protection & FACE) + log_unit_test("[C.type]: Clothing - cold_protection uses FACE bitflag, this provides no protection, use HEAD.") + failed = TRUE + if(C.cold_protection & EYES) + log_unit_test("[C.type]: Clothing - cold_protection uses EYES bitflag, this provides no protection, use HEAD.") + failed = TRUE + + if(C.heat_protection) + if(islist(C.heat_protection)) + log_unit_test("[C.type]: Clothing - heat_protection was defined as a list, when it is a bitflag.") + failed = TRUE + else if(!isnum(C.heat_protection)) + log_unit_test("[C.type]: Clothing - heat_protection was defined as something other than a number, when it is a bitflag.") + failed = TRUE + else + if(C.heat_protection && C.heat_protection != FULL_BODY) + // Check flags that should be unused + if(C.heat_protection & FACE) + log_unit_test("[C.type]: Clothing - heat_protection uses FACE bitflag, this provides no protection, use HEAD.") + failed = TRUE + if(C.heat_protection & EYES) + log_unit_test("[C.type]: Clothing - heat_protection uses EYES bitflag, this provides no protection, use HEAD.") + failed = TRUE + return failed + +/datum/unit_test/all_clothing_shall_be_valid/get_signal_data(atom/source, list/data = list()) + switch(data[1]) + if("set_slot") + var/slot_name = data[2] + var/set_icon = data[3] + var/set_state = data[4] + //var/in_hands = data[5] + var/item_path = data[6] + var/species = data[7] + if(!species) + return + if(!set_icon) + return + if(!set_state) + return + + // Ignore storage + if(slot_name == slot_l_hand_str) + return + if(slot_name == slot_r_hand_str) + return + + // All that matters + if(!("[set_state]" in cached_icon_states(set_icon))) + log_unit_test("[item_path]: Clothing - Testing \"[species]\" state \"[set_state]\" for slot \"[slot_name]\", but it was not in dmi \"[set_icon]\"") + signal_failed = TRUE + return diff --git a/code/unit_tests/unit_test.dm b/code/unit_tests/unit_test.dm index 7d7dee1617..24aa226d18 100644 --- a/code/unit_tests/unit_test.dm +++ b/code/unit_tests/unit_test.dm @@ -106,4 +106,8 @@ var/total_unit_tests = 0 log_unit_test("[ASCII_RED]\[[name]\]: [message][ASCII_RESET]") /datum/unit_test/proc/log_debug(var/message) - log_unit_test("[ASCII_YELLOW]--- DEBUG --- \[[name]\]: [message][ASCII_RESET]") \ No newline at end of file + log_unit_test("[ASCII_YELLOW]--- DEBUG --- \[[name]\]: [message][ASCII_RESET]") + +// This signal should never be possible to call if the game is not compiled for unit tests +/datum/unit_test/proc/get_signal_data(atom/source, list/data = list()) + SIGNAL_HANDLER diff --git a/icons/inventory/belt/item.dmi b/icons/inventory/belt/item.dmi index 8e08d8ea0e..3437eb4a46 100644 Binary files a/icons/inventory/belt/item.dmi and b/icons/inventory/belt/item.dmi differ diff --git a/icons/inventory/ears/item.dmi b/icons/inventory/ears/item.dmi index 39b3dbf0bd..3b5857a693 100644 Binary files a/icons/inventory/ears/item.dmi and b/icons/inventory/ears/item.dmi differ diff --git a/icons/inventory/face/item_vr.dmi b/icons/inventory/face/item_vr.dmi index c3f4e9729f..c2e21c4d9e 100644 Binary files a/icons/inventory/face/item_vr.dmi and b/icons/inventory/face/item_vr.dmi differ diff --git a/icons/inventory/feet/item.dmi b/icons/inventory/feet/item.dmi index c11f0908da..2fbc442c8b 100644 Binary files a/icons/inventory/feet/item.dmi and b/icons/inventory/feet/item.dmi differ diff --git a/icons/inventory/hands/item.dmi b/icons/inventory/hands/item.dmi index 104a112bf1..7e5db4cadc 100644 Binary files a/icons/inventory/hands/item.dmi and b/icons/inventory/hands/item.dmi differ diff --git a/icons/inventory/head/item.dmi b/icons/inventory/head/item.dmi index 45f1e9807e..b56402e145 100644 Binary files a/icons/inventory/head/item.dmi and b/icons/inventory/head/item.dmi differ diff --git a/icons/inventory/suit/item.dmi b/icons/inventory/suit/item.dmi index a70d14644e..30a08949cd 100644 Binary files a/icons/inventory/suit/item.dmi and b/icons/inventory/suit/item.dmi differ diff --git a/icons/inventory/suit/item_teshari.dmi b/icons/inventory/suit/item_teshari.dmi index 6867d8e45b..cdefe68ca5 100644 Binary files a/icons/inventory/suit/item_teshari.dmi and b/icons/inventory/suit/item_teshari.dmi differ diff --git a/icons/inventory/suit/item_vr.dmi b/icons/inventory/suit/item_vr.dmi index 2c18e708a0..f99663dc3a 100644 Binary files a/icons/inventory/suit/item_vr.dmi and b/icons/inventory/suit/item_vr.dmi differ diff --git a/icons/inventory/suit/mob.dmi b/icons/inventory/suit/mob.dmi index 9df5af58d7..22ba2f4602 100644 Binary files a/icons/inventory/suit/mob.dmi and b/icons/inventory/suit/mob.dmi differ diff --git a/icons/inventory/uniform/item.dmi b/icons/inventory/uniform/item.dmi index 7c614c40d4..6fe8d7345b 100644 Binary files a/icons/inventory/uniform/item.dmi and b/icons/inventory/uniform/item.dmi differ diff --git a/icons/inventory/uniform/mob_vr.dmi b/icons/inventory/uniform/mob_vr.dmi index aad2c467f9..f8f8dea1e6 100644 Binary files a/icons/inventory/uniform/mob_vr.dmi and b/icons/inventory/uniform/mob_vr.dmi differ diff --git a/vorestation.dme b/vorestation.dme index d76100a96e..d1c2c8a16c 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4430,6 +4430,7 @@ #include "code\modules\xenobio\machinery\processor.dm" #include "code\modules\xgm\xgm_gas_data.dm" #include "code\modules\xgm\xgm_gas_mixture.dm" +#include "code\unit_tests\clothing_tests.dm" #include "code\unit_tests\cosmetic_tests.dm" #include "code\unit_tests\decl_tests.dm" #include "code\unit_tests\genetics_tests.dm"