clothing
Vars | |
allowed | List of items that can be equipped in the suit storage slot while we're worn. |
---|---|
clothing_traits | Trait modification, lazylist of traits to add/take away, on equipment/drop in the correct slot |
damage_by_parts | How much clothing damage has been dealt to each of the limbs of the clothing, assuming it covers more than one limb |
flash_protect | What level of bright light protection item has. |
limb_integrity | How much integrity is in a specific limb before that limb is disabled (for use in /obj/item/clothing/proc/take_damage_zone, and only if we cover multiple zones.) Set to 0 to disable shredding. |
moth_snack | A lazily initiated "food" version of the clothing for moths. |
repairable_by | What items can be consumed to repair this clothing (must by an /obj/item/stack) |
stubborn_stains | Prevents the article of clothing from gaining the mood boost from washing. Used for the tacticool turtleneck. |
visor_toggle_down_sound | Sound this item makes when its visor is flipped down |
visor_toggle_up_sound | Sound this item makes when its visor is flipped up |
visor_vars_to_toggle | What to toggle when toggled with adjust_visor() |
zones_disabled | How many zones (body parts, not precise) we have disabled so far, for naming purposes |
Procs | |
adjust_visor | Proc that adjusts the clothing item, used by things like breathing masks, welding helmets, welding goggles etc. |
armor_to_protection_class | Rounds armor_value down to the nearest 10, divides it by 10 and then converts it to Roman numerals. |
attach_clothing_traits | Inserts a trait (or multiple traits) into the clothing traits list |
bristle | If we're a clothing with at least 1 shredded/disabled zone, give the wearer a periodic heads up letting them know their clothes are damaged |
create_moth_snack | Creates a food object in null space which we can eat and imagine we're eating this pair of shoes |
detach_clothing_traits | Removes a trait (or multiple traits) from the clothing traits list |
disable_zone | disable_zone() is used to disable a given bodypart's protection on our clothing item, mainly from /obj/item/clothing/proc/take_damage_zone |
repair | Set the clothing's integrity back to 100%, remove all damage to bodyparts, and generally fix it up |
take_damage_zone | take_damage_zone() is used for dealing damage to specific bodyparts on a worn piece of clothing, meant to be called from /obj/item/bodypart/proc/check_woundings_mods |
Var Details
allowed
List of items that can be equipped in the suit storage slot while we're worn.
clothing_traits
Trait modification, lazylist of traits to add/take away, on equipment/drop in the correct slot
damage_by_parts
How much clothing damage has been dealt to each of the limbs of the clothing, assuming it covers more than one limb
flash_protect
What level of bright light protection item has.
limb_integrity
How much integrity is in a specific limb before that limb is disabled (for use in /obj/item/clothing/proc/take_damage_zone, and only if we cover multiple zones.) Set to 0 to disable shredding.
moth_snack
A lazily initiated "food" version of the clothing for moths.
repairable_by
What items can be consumed to repair this clothing (must by an /obj/item/stack)
stubborn_stains
Prevents the article of clothing from gaining the mood boost from washing. Used for the tacticool turtleneck.
visor_toggle_down_sound
Sound this item makes when its visor is flipped down
visor_toggle_up_sound
Sound this item makes when its visor is flipped up
visor_vars_to_toggle
What to toggle when toggled with adjust_visor()
zones_disabled
How many zones (body parts, not precise) we have disabled so far, for naming purposes
Proc Details
adjust_visor
Proc that adjusts the clothing item, used by things like breathing masks, welding helmets, welding goggles etc.
armor_to_protection_class
Rounds armor_value down to the nearest 10, divides it by 10 and then converts it to Roman numerals.
Arguments:
- armor_value - Number we're converting
attach_clothing_traits
Inserts a trait (or multiple traits) into the clothing traits list
If worn, then we will also give the wearer the trait as if equipped
This is so you can add clothing traits without worrying about needing to equip or unequip them to gain effects
bristle
If we're a clothing with at least 1 shredded/disabled zone, give the wearer a periodic heads up letting them know their clothes are damaged
create_moth_snack
Creates a food object in null space which we can eat and imagine we're eating this pair of shoes
detach_clothing_traits
Removes a trait (or multiple traits) from the clothing traits list
If worn, then we will also remove the trait from the wearer as if unequipped
This is so you can add clothing traits without worrying about needing to equip or unequip them to gain effects
disable_zone
disable_zone() is used to disable a given bodypart's protection on our clothing item, mainly from /obj/item/clothing/proc/take_damage_zone
This proc disables all protection on the specified bodypart for this piece of clothing: it'll be as if it doesn't cover it at all anymore (because it won't!) If every possible bodypart has been disabled on the clothing, we put it out of commission entirely and mark it as shredded, whereby it will have to be repaired in order to equip it again. Also note we only consider it damaged if there's more than one bodypart disabled.
Arguments:
- def_zone: The bodypart zone we're disabling
- damage_type: Only really relevant for the verb for describing the breaking, and maybe atom_destruction()
repair
Set the clothing's integrity back to 100%, remove all damage to bodyparts, and generally fix it up
take_damage_zone
take_damage_zone() is used for dealing damage to specific bodyparts on a worn piece of clothing, meant to be called from /obj/item/bodypart/proc/check_woundings_mods
This proc only matters when a bodypart that this clothing is covering is harmed by a direct attack (being on fire or in space need not apply), and only if this clothing covers more than one bodypart to begin with. No point in tracking damage by zone for a hat, and I'm not cruel enough to let you fully break them in a few shots. Also if limb_integrity is 0, then this clothing doesn't have bodypart damage enabled so skip it.
Arguments:
- def_zone: The bodypart zone in question
- damage_amount: Incoming damage
- damage_type: BRUTE or BURN
- armour_penetration: If the attack had armour_penetration