mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 13:10:02 +01:00
## About The Pull Request Title. To be honest this started as just fixing up some errors I made with the bomber coats. Woulda fixed them sooner but telling someone on my own PR that 'I don't care' is apperently ragebaiting. But that's in the past. This is the future. And the future is red. I moved everything in the bubber redsec folder to the goofsec folder where the other reskins are handled. I ported Nova's red variants where I could. Removed overrides (like the ugly bulletproof helmet and the PDA colours) and the 'durr no skirt as hos/warden' thing. I also removed species & joblocks from the Akula outfits. Nothing else has a species lock and the sprites work perfectly fine on the default spaceman. ## Why It's Good For The Game Redsec is better, actually. ## Proof Of Testing I've tested it but I wasn't sure what exactly to screenshot with the sheer volume of shit I done. But I tested all I done. It all worked. ## Changelog 🆑 add: Most, if not all sec clothing now properly has a red variant via the alt click reskin system. add: Anyone can wear the Akula outfits now. del: Removed Bluesec PDA override and the ugly bulletproof helmet. del: HoS and Warden can wear skirts again. fix: Atmos Bomber no longer hides legs or slows you down. /🆑 --------- Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com>
877 lines
26 KiB
Plaintext
877 lines
26 KiB
Plaintext
/obj/item/clothing/suit/armor
|
|
name = "armor"
|
|
icon = 'icons/obj/clothing/suits/armor.dmi'
|
|
worn_icon = 'icons/mob/clothing/suits/armor.dmi'
|
|
abstract_type = /obj/item/clothing/suit/armor
|
|
allowed = null
|
|
body_parts_covered = CHEST
|
|
cold_protection = CHEST|GROIN
|
|
min_cold_protection_temperature = ARMOR_MIN_TEMP_PROTECT
|
|
heat_protection = CHEST|GROIN
|
|
max_heat_protection_temperature = ARMOR_MAX_TEMP_PROTECT
|
|
strip_delay = 6 SECONDS
|
|
equip_delay_other = 4 SECONDS
|
|
max_integrity = 250
|
|
resistance_flags = NONE
|
|
armor_type = /datum/armor/suit_armor
|
|
|
|
/datum/armor/suit_armor
|
|
melee = 35
|
|
bullet = 30
|
|
laser = 30
|
|
energy = 40
|
|
bomb = 25
|
|
fire = 50
|
|
acid = 50
|
|
wound = 10
|
|
|
|
/obj/item/clothing/suit/armor/Initialize(mapload)
|
|
. = ..()
|
|
if(!allowed)
|
|
allowed = GLOB.security_vest_allowed
|
|
|
|
/obj/item/clothing/suit/armor/apply_fantasy_bonuses(bonus)
|
|
. = ..()
|
|
slowdown = modify_fantasy_variable("slowdown", slowdown, -bonus * 0.1, 0)
|
|
if(ismob(loc))
|
|
var/mob/wearer = loc
|
|
wearer.update_equipment_speed_mods()
|
|
|
|
/obj/item/clothing/suit/armor/remove_fantasy_bonuses(bonus)
|
|
slowdown = reset_fantasy_variable("slowdown", slowdown)
|
|
if(ismob(loc))
|
|
var/mob/wearer = loc
|
|
wearer.update_equipment_speed_mods()
|
|
return ..()
|
|
|
|
/obj/item/clothing/suit/armor/vest
|
|
name = "armor vest"
|
|
desc = "A slim Type I armored vest that provides decent protection against most types of damage."
|
|
icon_state = "armoralt"
|
|
inhand_icon_state = "armor"
|
|
blood_overlay_type = "armor"
|
|
dog_fashion = /datum/dog_fashion/back/armorvest
|
|
|
|
/obj/item/clothing/suit/armor/vest/alt
|
|
desc = "A Type I armored vest that provides decent protection against most types of damage."
|
|
icon_state = "armor"
|
|
inhand_icon_state = "armor"
|
|
|
|
/obj/item/clothing/suit/armor/vest/alt/sec
|
|
icon_state = "armor_sec"
|
|
|
|
/obj/item/clothing/suit/armor/vest/press
|
|
name = "press armor vest"
|
|
desc = "A blue armor vest used to distinguish <i>non-combatant</i> \"PRESS\" members, like if anyone cares."
|
|
icon_state = "armor_press"
|
|
|
|
/obj/item/clothing/suit/armor/vest/press/worn_overlays(mutable_appearance/standing, isinhands, icon_file)
|
|
. = ..()
|
|
if(!isinhands)
|
|
. += emissive_appearance(icon_file, "[icon_state]-emissive", src, alpha = src.alpha, effect_type = EMISSIVE_SPECULAR)
|
|
|
|
/obj/item/clothing/suit/armor/vest/marine
|
|
name = "tactical armor vest"
|
|
desc = "A set of the finest mass produced, stamped plasteel armor plates, containing an environmental protection unit for all-condition door kicking."
|
|
icon_state = "marine_command"
|
|
inhand_icon_state = "armor"
|
|
clothing_flags = STOPSPRESSUREDAMAGE | THICKMATERIAL
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
armor_type = /datum/armor/vest_marine
|
|
cold_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS
|
|
min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT_OFF
|
|
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
resistance_flags = FIRE_PROOF | ACID_PROOF
|
|
|
|
/datum/armor/vest_marine
|
|
melee = 50
|
|
bullet = 50
|
|
laser = 30
|
|
energy = 25
|
|
bomb = 50
|
|
bio = 100
|
|
fire = 40
|
|
acid = 50
|
|
wound = 20
|
|
|
|
/datum/armor/pmc
|
|
melee = 40
|
|
bullet = 50
|
|
laser = 60
|
|
energy = 50
|
|
bomb = 50
|
|
bio = 100
|
|
acid = 50
|
|
wound = 20
|
|
|
|
/obj/item/clothing/suit/armor/vest/marine/security
|
|
name = "large tactical armor vest"
|
|
icon_state = "marine_security"
|
|
|
|
/obj/item/clothing/suit/armor/vest/marine/engineer
|
|
name = "tactical utility armor vest"
|
|
icon_state = "marine_engineer"
|
|
|
|
/obj/item/clothing/suit/armor/vest/marine/medic
|
|
name = "tactical medic's armor vest"
|
|
icon_state = "marine_medic"
|
|
body_parts_covered = CHEST|GROIN
|
|
|
|
/obj/item/clothing/suit/armor/vest/marine/pmc
|
|
desc = "A set of the finest mass produced, stamped plasteel armor plates, for an all-around door-kicking and ass-smashing. Its stellar survivability making up is for its lack of space worthiness"
|
|
min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT
|
|
max_heat_protection_temperature = HELMET_MAX_TEMP_PROTECT
|
|
clothing_flags = THICKMATERIAL
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
armor_type = /datum/armor/pmc
|
|
|
|
/obj/item/clothing/suit/armor/vest/old
|
|
name = "degrading armor vest"
|
|
desc = "Older generation Type 1 armored vest. Due to degradation over time the vest is far less maneuverable to move in."
|
|
icon_state = "armor"
|
|
inhand_icon_state = "armor"
|
|
slowdown = 1
|
|
|
|
/obj/item/clothing/suit/armor/vest/blueshirt
|
|
name = "large armor vest"
|
|
desc = "A large, yet comfortable piece of armor, protecting you from some threats."
|
|
icon_state = "blueshift"
|
|
inhand_icon_state = null
|
|
custom_premium_price = PAYCHECK_COMMAND
|
|
|
|
/obj/item/clothing/suit/armor/vest/cuirass
|
|
name = "cuirass"
|
|
desc = "A lighter plate armor used to still keep out those pesky arrows, while retaining the ability to move."
|
|
icon_state = "cuirass"
|
|
inhand_icon_state = "armor"
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/vest/cuirass/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8)
|
|
|
|
/obj/item/clothing/suit/armor/hos
|
|
name = "armored greatcoat"
|
|
desc = "A greatcoat enhanced with a special alloy for some extra protection and style for those with a commanding presence."
|
|
icon_state = "hos"
|
|
inhand_icon_state = "greatcoat"
|
|
body_parts_covered = CHEST|GROIN|ARMS|LEGS
|
|
armor_type = /datum/armor/armor_hos
|
|
cold_protection = CHEST|GROIN|LEGS|ARMS
|
|
heat_protection = CHEST|GROIN|LEGS|ARMS
|
|
strip_delay = 8 SECONDS
|
|
|
|
/datum/armor/armor_hos
|
|
melee = 30
|
|
bullet = 30
|
|
laser = 30
|
|
energy = 40
|
|
bomb = 25
|
|
fire = 70
|
|
acid = 90
|
|
wound = 10
|
|
|
|
/obj/item/clothing/suit/armor/hos/trenchcoat
|
|
name = "armored trenchcoat"
|
|
desc = "A trenchcoat enhanced with a special lightweight kevlar. The epitome of tactical plainclothes."
|
|
icon_state = "hostrench"
|
|
inhand_icon_state = "hostrench"
|
|
flags_inv = 0
|
|
strip_delay = 8 SECONDS
|
|
|
|
/obj/item/clothing/suit/armor/hos/trenchcoat/winter
|
|
name = "head of security's winter trenchcoat"
|
|
desc = "A trenchcoat enhanced with a special lightweight kevlar, padded with wool on the collar and inside. You feel strangely lonely wearing this coat."
|
|
icon_state = "hoswinter"
|
|
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
|
|
|
/obj/item/clothing/suit/armor/hos/hos_formal
|
|
name = "\improper Head of Security's parade jacket"
|
|
desc = "For when an armoured vest isn't fashionable enough."
|
|
icon_state = "hosformal"
|
|
inhand_icon_state = "hostrench"
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
|
|
/obj/item/clothing/suit/armor/hos/hos_formal/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/toggle_icon)
|
|
|
|
/obj/item/clothing/suit/armor/vest/warden
|
|
name = "warden's jacket"
|
|
desc = "A navy-blue armored jacket with blue shoulder designations and '/Warden/' stitched into one of the chest pockets."
|
|
icon_state = "warden_alt"
|
|
inhand_icon_state = "armor"
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
cold_protection = CHEST|GROIN|ARMS|HANDS
|
|
heat_protection = CHEST|GROIN|ARMS|HANDS
|
|
strip_delay = 7 SECONDS
|
|
resistance_flags = FLAMMABLE
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/vest/warden/alt
|
|
name = "warden's armored jacket"
|
|
desc = "A red jacket with silver rank pips and body armor strapped on top."
|
|
icon_state = "warden_jacket"
|
|
|
|
/obj/item/clothing/suit/armor/vest/secjacket
|
|
name = "security jacket"
|
|
desc = "A red jacket in red Security colors. It has hi-vis stripes all over it."
|
|
icon_state = "secjacket"
|
|
inhand_icon_state = "armor"
|
|
armor_type = /datum/armor/armor_secjacket
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
cold_protection = CHEST|GROIN|ARMS|HANDS
|
|
heat_protection = CHEST|GROIN|ARMS|HANDS
|
|
resistance_flags = FLAMMABLE
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/vest/secjacket/worn_overlays(mutable_appearance/standing, isinhands, icon_file)
|
|
. = ..()
|
|
if(!isinhands)
|
|
. += emissive_appearance(icon_file, "[icon_state]-emissive", src, alpha = src.alpha, effect_type = EMISSIVE_SPECULAR)
|
|
|
|
/datum/armor/armor_secjacket //Gotta compensate those extra covered limbs
|
|
melee = 25
|
|
bullet = 25
|
|
laser = 25
|
|
energy = 35
|
|
bomb = 20
|
|
fire = 30
|
|
acid = 30
|
|
wound = 5
|
|
|
|
/obj/item/clothing/suit/armor/vest/leather
|
|
name = "security overcoat"
|
|
desc = "Lightly armored leather overcoat meant as casual wear for high-ranking officers. Bears the crest of Nanotrasen Security."
|
|
icon_state = "leathercoat-sec"
|
|
inhand_icon_state = "hostrench"
|
|
body_parts_covered = CHEST|GROIN|ARMS|LEGS
|
|
cold_protection = CHEST|GROIN|LEGS|ARMS
|
|
heat_protection = CHEST|GROIN|LEGS|ARMS
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/vest/capcarapace
|
|
name = "captain's carapace"
|
|
desc = "A fireproof armored chestpiece reinforced with ceramic plates and plasteel pauldrons to provide additional protection whilst still offering maximum mobility and flexibility. Issued only to the station's finest, although it does chafe your nipples."
|
|
icon_state = "capcarapace"
|
|
inhand_icon_state = "armor"
|
|
body_parts_covered = CHEST|GROIN
|
|
armor_type = /datum/armor/vest_capcarapace
|
|
dog_fashion = null
|
|
resistance_flags = FIRE_PROOF
|
|
|
|
/datum/armor/vest_capcarapace
|
|
melee = 50
|
|
bullet = 40
|
|
laser = 50
|
|
energy = 50
|
|
bomb = 25
|
|
fire = 100
|
|
acid = 90
|
|
wound = 10
|
|
|
|
/obj/item/clothing/suit/armor/vest/capcarapace/syndicate
|
|
name = "syndicate captain's vest"
|
|
desc = "A sinister looking vest of advanced armor worn over a black and red fireproof jacket. The gold collar and shoulders denote that this belongs to a high ranking syndicate officer."
|
|
icon_state = "syndievest"
|
|
|
|
/obj/item/clothing/suit/armor/vest/capcarapace/captains_formal
|
|
name = "captain's parade coat"
|
|
desc = "For when an armoured vest isn't fashionable enough."
|
|
icon_state = "capformal"
|
|
inhand_icon_state = null
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
|
|
/obj/item/clothing/suit/armor/vest/capcarapace/captains_formal/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/toggle_icon)
|
|
|
|
/obj/item/clothing/suit/armor/riot
|
|
name = "riot suit"
|
|
desc = "A suit of semi-flexible polycarbonate body armor with heavy padding to protect against melee attacks. Helps the wearer resist shoving in close quarters."
|
|
icon_state = "riot"
|
|
inhand_icon_state = "swat_suit"
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
armor_type = /datum/armor/armor_riot
|
|
strip_delay = 8 SECONDS
|
|
equip_delay_other = 6 SECONDS
|
|
clothing_traits = list(TRAIT_BRAWLING_KNOCKDOWN_BLOCKED)
|
|
|
|
/obj/item/clothing/suit/armor/riot/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/adjust_fishing_difficulty, 5)
|
|
init_rustle_component()
|
|
|
|
/obj/item/clothing/suit/armor/riot/proc/init_rustle_component()
|
|
AddComponent(/datum/component/item_equipped_movement_rustle)
|
|
|
|
/datum/armor/armor_riot
|
|
melee = 50
|
|
bullet = 10
|
|
laser = 10
|
|
energy = 10
|
|
fire = 80
|
|
acid = 80
|
|
wound = 20
|
|
|
|
/obj/item/clothing/suit/armor/balloon_vest
|
|
name = "balloon vest"
|
|
desc = "A vest made entirely from balloons, resistant to any evil forces a mime could throw at you, including electricity and fire. Just a strike with something sharp, though..."
|
|
icon_state = "balloon-vest"
|
|
inhand_icon_state = "balloon_armor"
|
|
blood_overlay_type = "armor"
|
|
armor_type = /datum/armor/balloon_vest
|
|
siemens_coefficient = 0
|
|
strip_delay = 7 SECONDS
|
|
equip_delay_other = 5 SECONDS
|
|
|
|
/datum/armor/balloon_vest
|
|
melee = 10
|
|
laser = 10
|
|
energy = 10
|
|
fire = 60
|
|
acid = 50
|
|
|
|
/obj/item/clothing/suit/armor/balloon_vest/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE)
|
|
if(isitem(hitby))
|
|
var/obj/item/item_hit = hitby
|
|
if(item_hit.get_sharpness())
|
|
pop()
|
|
|
|
if(istype(hitby, /obj/projectile/bullet))
|
|
pop()
|
|
|
|
return ..()
|
|
|
|
/obj/item/clothing/suit/armor/balloon_vest/proc/pop()
|
|
playsound(src, 'sound/effects/cartoon_sfx/cartoon_pop.ogg', 50, vary = TRUE)
|
|
qdel(src)
|
|
|
|
|
|
/obj/item/clothing/suit/armor/bulletproof
|
|
name = "bulletproof armor"
|
|
desc = "A Type III heavy bulletproof vest that excels in protecting the wearer against traditional projectile weaponry and explosives to a minor extent."
|
|
icon_state = "bulletproof"
|
|
inhand_icon_state = "armor"
|
|
blood_overlay_type = "armor"
|
|
armor_type = /datum/armor/armor_bulletproof
|
|
strip_delay = 7 SECONDS
|
|
equip_delay_other = 5 SECONDS
|
|
|
|
/datum/armor/armor_bulletproof
|
|
melee = 15
|
|
bullet = 60
|
|
laser = 10
|
|
energy = 10
|
|
bomb = 40
|
|
fire = 50
|
|
acid = 50
|
|
wound = 20
|
|
|
|
/obj/item/clothing/suit/armor/laserproof
|
|
name = "reflector vest"
|
|
desc = "A vest that excels in protecting the wearer against energy projectiles, as well as occasionally reflecting them."
|
|
icon_state = "armor_reflec"
|
|
inhand_icon_state = "armor_reflec"
|
|
blood_overlay_type = "armor"
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
cold_protection = CHEST|GROIN|ARMS
|
|
heat_protection = CHEST|GROIN|ARMS
|
|
armor_type = /datum/armor/armor_laserproof
|
|
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
|
|
var/hit_reflect_chance = 50
|
|
|
|
/datum/armor/armor_laserproof
|
|
melee = 10
|
|
bullet = 10
|
|
laser = 60
|
|
energy = 60
|
|
fire = 100
|
|
acid = 100
|
|
|
|
/obj/item/clothing/suit/armor/laserproof/IsReflect(def_zone)
|
|
if(!(def_zone in list(BODY_ZONE_CHEST, BODY_ZONE_PRECISE_GROIN, BODY_ZONE_L_ARM, BODY_ZONE_R_ARM))) //If not shot where ablative is covering you, you don't get the reflection bonus!
|
|
return FALSE
|
|
if (prob(hit_reflect_chance))
|
|
return TRUE
|
|
|
|
/obj/item/clothing/suit/armor/vest/det_suit
|
|
name = "detective's flak vest"
|
|
desc = "An armored vest with a detective's badge on it."
|
|
icon_state = "detective-armor"
|
|
resistance_flags = FLAMMABLE
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/vest/det_suit/Initialize(mapload)
|
|
. = ..()
|
|
allowed = GLOB.detective_vest_allowed
|
|
|
|
/obj/item/clothing/suit/armor/swat
|
|
name = "MK.I SWAT Suit"
|
|
desc = "A tactical suit first developed in a joint effort by the defunct IS-ERI and Nanotrasen in 2321 for military operations. \
|
|
It has a minor slowdown, but offers decent protection and helps the wearer resist shoving in close quarters."
|
|
icon_state = "heavy"
|
|
inhand_icon_state = "swat_suit"
|
|
armor_type = /datum/armor/armor_swat
|
|
strip_delay = 12 SECONDS
|
|
resistance_flags = FIRE_PROOF | ACID_PROOF
|
|
clothing_flags = THICKMATERIAL
|
|
cold_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS
|
|
min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT_OFF
|
|
heat_protection = CHEST | GROIN | LEGS | FEET | ARMS | HANDS
|
|
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
|
|
slowdown = 0.7
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
clothing_traits = list(TRAIT_BRAWLING_KNOCKDOWN_BLOCKED)
|
|
|
|
/obj/item/clothing/suit/armor/swat/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/adjust_fishing_difficulty, 5)
|
|
init_rustle_component()
|
|
|
|
/obj/item/clothing/suit/armor/swat/proc/init_rustle_component()
|
|
AddComponent(/datum/component/item_equipped_movement_rustle)
|
|
|
|
|
|
//All of the armor below is mostly unused
|
|
|
|
/datum/armor/armor_swat
|
|
melee = 40
|
|
bullet = 30
|
|
laser = 30
|
|
energy = 40
|
|
bomb = 50
|
|
bio = 90
|
|
fire = 100
|
|
acid = 100
|
|
wound = 15
|
|
|
|
/obj/item/clothing/suit/armor/heavy
|
|
name = "heavy armor"
|
|
desc = "A heavily armored suit that protects against moderate damage."
|
|
icon_state = "heavy"
|
|
inhand_icon_state = "swat_suit"
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
clothing_flags = THICKMATERIAL
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
slowdown = 3
|
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
|
|
armor_type = /datum/armor/armor_heavy
|
|
|
|
/datum/armor/armor_heavy
|
|
melee = 80
|
|
bullet = 80
|
|
laser = 50
|
|
energy = 50
|
|
bomb = 100
|
|
bio = 100
|
|
fire = 90
|
|
acid = 90
|
|
|
|
/obj/item/clothing/suit/armor/tdome
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
|
|
clothing_flags = THICKMATERIAL
|
|
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
armor_type = /datum/armor/armor_tdome
|
|
|
|
/datum/armor/armor_tdome
|
|
melee = 80
|
|
bullet = 80
|
|
laser = 50
|
|
energy = 50
|
|
bomb = 100
|
|
bio = 100
|
|
fire = 90
|
|
acid = 90
|
|
|
|
/obj/item/clothing/suit/armor/tdome/red
|
|
name = "thunderdome suit"
|
|
desc = "Reddish armor."
|
|
icon_state = "tdred"
|
|
inhand_icon_state = "tdred"
|
|
|
|
/obj/item/clothing/suit/armor/tdome/green
|
|
name = "thunderdome suit"
|
|
desc = "Pukish armor." //classy.
|
|
icon_state = "tdgreen"
|
|
inhand_icon_state = "tdgreen"
|
|
|
|
/obj/item/clothing/suit/armor/tdome/holosuit
|
|
name = "thunderdome suit"
|
|
armor_type = /datum/armor/tdome_holosuit
|
|
cold_protection = null
|
|
heat_protection = null
|
|
|
|
/datum/armor/tdome_holosuit
|
|
melee = 10
|
|
bullet = 10
|
|
|
|
/obj/item/clothing/suit/armor/tdome/holosuit/red
|
|
desc = "Reddish armor."
|
|
icon_state = "tdred"
|
|
inhand_icon_state = "tdred"
|
|
|
|
/obj/item/clothing/suit/armor/tdome/holosuit/green
|
|
desc = "Pukish armor."
|
|
icon_state = "tdgreen"
|
|
inhand_icon_state = "tdgreen"
|
|
|
|
/obj/item/clothing/suit/armor/riot/knight
|
|
name = "plate armour"
|
|
desc = "A classic suit of plate armour, highly effective at stopping melee attacks."
|
|
icon_state = "knight_green"
|
|
inhand_icon_state = null
|
|
allowed = list(
|
|
/obj/item/banner,
|
|
/obj/item/claymore,
|
|
/obj/item/nullrod,
|
|
/obj/item/tank/internals/emergency_oxygen,
|
|
/obj/item/tank/internals/plasmaman,
|
|
)
|
|
/obj/item/clothing/suit/armor/riot/knight/init_rustle_component()
|
|
AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8)
|
|
|
|
/obj/item/clothing/suit/armor/riot/knight/yellow
|
|
icon_state = "knight_yellow"
|
|
inhand_icon_state = null
|
|
|
|
/obj/item/clothing/suit/armor/riot/knight/blue
|
|
icon_state = "knight_blue"
|
|
inhand_icon_state = null
|
|
|
|
/obj/item/clothing/suit/armor/riot/knight/red
|
|
icon_state = "knight_red"
|
|
inhand_icon_state = null
|
|
|
|
/obj/item/clothing/suit/armor/riot/knight/greyscale
|
|
name = "knight armour"
|
|
desc = "A classic suit of armour, able to be made from many different materials."
|
|
icon_state = "knight_greyscale"
|
|
inhand_icon_state = null
|
|
material_flags = MATERIAL_EFFECTS | MATERIAL_ADD_PREFIX | MATERIAL_COLOR | MATERIAL_AFFECT_STATISTICS//Can change color and add prefix
|
|
armor_type = /datum/armor/knight_greyscale
|
|
|
|
/datum/armor/knight_greyscale
|
|
melee = 35
|
|
bullet = 10
|
|
laser = 10
|
|
energy = 10
|
|
bomb = 10
|
|
bio = 10
|
|
fire = 40
|
|
acid = 40
|
|
|
|
/obj/item/clothing/suit/armor/vest/durathread
|
|
name = "durathread vest"
|
|
desc = "A vest made of durathread with strips of leather acting as trauma plates."
|
|
icon_state = "durathread"
|
|
inhand_icon_state = null
|
|
strip_delay = 6 SECONDS
|
|
equip_delay_other = 4 SECONDS
|
|
max_integrity = 200
|
|
resistance_flags = FLAMMABLE
|
|
armor_type = /datum/armor/vest_durathread
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/vest/durathread/Initialize(mapload)
|
|
. = ..()
|
|
allowed |= /obj/item/clothing/suit/apron::allowed
|
|
|
|
/datum/armor/vest_durathread
|
|
melee = 20
|
|
bullet = 10
|
|
laser = 30
|
|
energy = 40
|
|
bomb = 15
|
|
fire = 40
|
|
acid = 50
|
|
|
|
/obj/item/clothing/suit/armor/vest/russian
|
|
name = "russian vest"
|
|
desc = "A bulletproof vest with forest camo. Good thing there's plenty of forests to hide in around here, right?"
|
|
icon_state = "rus_armor"
|
|
inhand_icon_state = null
|
|
armor_type = /datum/armor/vest_russian
|
|
dog_fashion = null
|
|
|
|
/datum/armor/vest_russian
|
|
melee = 25
|
|
bullet = 30
|
|
energy = 10
|
|
bomb = 10
|
|
fire = 20
|
|
acid = 50
|
|
wound = 10
|
|
|
|
/obj/item/clothing/suit/armor/vest/russian_coat
|
|
name = "russian battle coat"
|
|
desc = "Used in extremely cold fronts, made out of real bears."
|
|
icon_state = "rus_coat"
|
|
inhand_icon_state = null
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
min_cold_protection_temperature = SPACE_SUIT_MIN_TEMP_PROTECT
|
|
armor_type = /datum/armor/vest_russian_coat
|
|
dog_fashion = null
|
|
|
|
/datum/armor/vest_russian_coat
|
|
melee = 25
|
|
bullet = 20
|
|
laser = 20
|
|
energy = 30
|
|
bomb = 20
|
|
bio = 50
|
|
fire = -10
|
|
acid = 50
|
|
wound = 10
|
|
|
|
/obj/item/clothing/suit/armor/elder_atmosian
|
|
name = "\improper Elder Atmosian Armor"
|
|
desc = "A superb armor made with the toughest and rarest materials available to man."
|
|
icon_state = "h2armor"
|
|
inhand_icon_state = null
|
|
material_flags = MATERIAL_EFFECTS | MATERIAL_COLOR | MATERIAL_AFFECT_STATISTICS //Can change color and add prefix
|
|
armor_type = /datum/armor/armor_elder_atmosian
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
|
|
/obj/item/clothing/suit/armor/elder_atmosian/Initialize(mapload)
|
|
. = ..()
|
|
allowed += list(
|
|
/obj/item/fireaxe/metal_h2_axe,
|
|
)
|
|
|
|
/datum/armor/armor_elder_atmosian
|
|
melee = 25
|
|
bullet = 20
|
|
laser = 30
|
|
energy = 30
|
|
bomb = 85
|
|
bio = 10
|
|
fire = 65
|
|
acid = 40
|
|
wound = 15
|
|
|
|
/obj/item/clothing/suit/armor/centcom_formal
|
|
name = "\improper CentCom formal coat"
|
|
desc = "A stylish coat given to CentCom Commanders. Perfect for sending ERTs to suicide missions with style!"
|
|
icon_state = "centcom_formal"
|
|
inhand_icon_state = "centcom"
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
armor_type = /datum/armor/armor_centcom_formal
|
|
|
|
/datum/armor/armor_centcom_formal
|
|
melee = 35
|
|
bullet = 40
|
|
laser = 40
|
|
energy = 50
|
|
bomb = 35
|
|
bio = 10
|
|
fire = 10
|
|
acid = 60
|
|
|
|
/obj/item/clothing/suit/armor/centcom_formal/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/toggle_icon)
|
|
|
|
/obj/item/clothing/suit/armor/vest/hop
|
|
name = "head of personnel's coat"
|
|
desc = "A stylish coat given to a Head of Personnel."
|
|
icon_state = "hop_coat"
|
|
inhand_icon_state = "b_suit"
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
dog_fashion = null
|
|
|
|
/obj/item/clothing/suit/armor/militia
|
|
name = "station defender's coat"
|
|
desc = "A well worn uniform used by militia across the frontier, its thick padding useful for cushioning blows."
|
|
icon_state = "militia"
|
|
inhand_icon_state = "b_suit"
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
cold_protection = CHEST|GROIN|ARMS
|
|
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
|
armor_type = /datum/armor/coat_militia
|
|
|
|
/datum/armor/coat_militia
|
|
melee = 40
|
|
bullet = 40
|
|
laser = 30
|
|
energy = 25
|
|
bomb = 50
|
|
fire = 40
|
|
acid = 50
|
|
wound = 30
|
|
|
|
/obj/item/clothing/suit/armor/vest/military
|
|
name = "Crude chestplate"
|
|
desc = "It may look rough, rusty and battered, but it's also made out of junk and uncomfortable to wear."
|
|
icon_state = "military"
|
|
inhand_icon_state = "armor"
|
|
dog_fashion = null
|
|
armor_type = /datum/armor/military
|
|
allowed = list(
|
|
/obj/item/banner,
|
|
/obj/item/claymore/shortsword,
|
|
/obj/item/nullrod,
|
|
/obj/item/spear,
|
|
/obj/item/gun/ballistic/bow
|
|
)
|
|
|
|
/obj/item/clothing/suit/armor/vest/military/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/adjust_fishing_difficulty, 5)
|
|
|
|
/datum/armor/military
|
|
melee = 45
|
|
bullet = 25
|
|
laser = 25
|
|
energy = 25
|
|
bomb = 25
|
|
fire = 10
|
|
acid = 50
|
|
wound = 20
|
|
|
|
/obj/item/clothing/suit/armor/riot/knight/warlord
|
|
name = "golden plate armor"
|
|
desc = "This bulky set of armor is coated with a shiny layer of gold. It seems to almost reflect all light sources."
|
|
icon_state = "warlord"
|
|
inhand_icon_state = null
|
|
armor_type = /datum/armor/armor_warlord
|
|
w_class = WEIGHT_CLASS_BULKY
|
|
clothing_flags = THICKMATERIAL
|
|
slowdown = 0.8
|
|
|
|
/datum/armor/armor_warlord
|
|
melee = 70
|
|
bullet = 60
|
|
laser = 70
|
|
energy = 70
|
|
bomb = 40
|
|
fire = 50
|
|
acid = 50
|
|
wound = 30
|
|
|
|
/obj/item/clothing/suit/armor/durability
|
|
abstract_type = /obj/item/clothing/suit/armor/durability
|
|
|
|
/obj/item/clothing/suit/armor/durability/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE)
|
|
take_damage(1, BRUTE, 0, 0)
|
|
|
|
/obj/item/clothing/suit/armor/durability/watermelon
|
|
name = "watermelon armor"
|
|
desc = "An armor, made from watermelons. Probably won't take too many hits, but at least it looks serious... As serious as worn watermelon can be."
|
|
icon_state = "watermelon"
|
|
inhand_icon_state = null
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
armor_type = /datum/armor/watermelon
|
|
strip_delay = 6 SECONDS
|
|
equip_delay_other = 4 SECONDS
|
|
clothing_traits = list(TRAIT_BRAWLING_KNOCKDOWN_BLOCKED)
|
|
max_integrity = 15
|
|
|
|
/obj/item/clothing/suit/armor/durability/watermelon/fire_resist
|
|
resistance_flags = FIRE_PROOF
|
|
armor_type = /datum/armor/watermelon_fr
|
|
|
|
/datum/armor/watermelon
|
|
melee = 15
|
|
bullet = 10
|
|
energy = 10
|
|
bomb = 10
|
|
fire = 0
|
|
acid = 25
|
|
wound = 5
|
|
|
|
/datum/armor/watermelon_fr
|
|
melee = 15
|
|
bullet = 10
|
|
energy = 10
|
|
bomb = 10
|
|
fire = 15
|
|
acid = 30
|
|
wound = 5
|
|
|
|
/obj/item/clothing/suit/armor/durability/holymelon
|
|
name = "holymelon armor"
|
|
desc = "An armor, made from holymelons. Inspires you to go on some sort of crusade... Perhaps spreading spinach to children?"
|
|
icon_state = "holymelon"
|
|
inhand_icon_state = null
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
armor_type = /datum/armor/watermelon
|
|
strip_delay = 6 SECONDS
|
|
equip_delay_other = 4 SECONDS
|
|
clothing_traits = list(TRAIT_BRAWLING_KNOCKDOWN_BLOCKED)
|
|
max_integrity = 15
|
|
|
|
/obj/item/clothing/suit/armor/durability/holymelon/fire_resist
|
|
resistance_flags = FIRE_PROOF
|
|
armor_type = /datum/armor/watermelon_fr
|
|
|
|
/obj/item/clothing/suit/armor/durability/holymelon/Initialize(mapload)
|
|
. = ..()
|
|
|
|
AddComponent(
|
|
/datum/component/anti_magic, \
|
|
antimagic_flags = MAGIC_RESISTANCE|MAGIC_RESISTANCE_HOLY, \
|
|
inventory_flags = ITEM_SLOT_OCLOTHING, \
|
|
charges = 1, \
|
|
block_magic = CALLBACK(src, PROC_REF(drain_antimagic)), \
|
|
expiration = CALLBACK(src, PROC_REF(decay)) \
|
|
)
|
|
|
|
/obj/item/clothing/suit/armor/durability/holymelon/proc/drain_antimagic(mob/user)
|
|
to_chat(user, span_warning("[src] looses a bit of its shimmer and glossiness..."))
|
|
|
|
/obj/item/clothing/suit/armor/durability/holymelon/proc/decay()
|
|
take_damage(8, BRUTE, 0, 0)
|
|
|
|
|
|
/obj/item/clothing/suit/armor/durability/barrelmelon
|
|
name = "barrelmelon armor"
|
|
desc = "An armor, made from barrelmelons. Reeks of ale, inspiring to courageous deeds. Or, perhaps, a bar brawl."
|
|
icon_state = "barrelmelon"
|
|
inhand_icon_state = null
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
armor_type = /datum/armor/barrelmelon
|
|
strip_delay = 6 SECONDS
|
|
equip_delay_other = 4 SECONDS
|
|
clothing_traits = list(TRAIT_BRAWLING_KNOCKDOWN_BLOCKED)
|
|
max_integrity = 10
|
|
|
|
/obj/item/clothing/suit/armor/durability/barrelmelon/fire_resist
|
|
resistance_flags = FIRE_PROOF
|
|
armor_type = /datum/armor/barrelmelon_fr
|
|
|
|
/datum/armor/barrelmelon
|
|
melee = 25
|
|
bullet = 20
|
|
energy = 15
|
|
bomb = 10
|
|
fire = 0
|
|
acid = 35
|
|
wound = 10
|
|
|
|
/datum/armor/barrelmelon_fr
|
|
melee = 25
|
|
bullet = 20
|
|
energy = 15
|
|
bomb = 10
|
|
fire = 20
|
|
acid = 40
|
|
wound = 10
|
|
|
|
/obj/item/clothing/suit/armor/dragoon
|
|
name = "drachen suit"
|
|
desc = "A chainmail suit with dragon scales attached to the skeleton, with ash-covered mythril plate reinforcement covering it."
|
|
icon_state = "dragoon"
|
|
inhand_icon_state = "dragoon"
|
|
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
|
|
resistance_flags = FIRE_PROOF | ACID_PROOF
|
|
allowed = list(/obj/item/spear/skybulge)
|