diff --git a/code/__DEFINES/sound.dm b/code/__DEFINES/sound.dm index 46b85cb5d16..7df102efa3b 100644 --- a/code/__DEFINES/sound.dm +++ b/code/__DEFINES/sound.dm @@ -263,3 +263,4 @@ GLOBAL_LIST_INIT(announcer_keys, list( #define SFX_SNORE_MALE "snore_male" #define SFX_PLASTIC_BOTTLE_LIQUID_SLOSH "plastic_bottle_liquid_slosh" #define SFX_DEFAULT_LIQUID_SLOSH "default_liquid_slosh" +#define SFX_PLATE_ARMOR_RUSTLE "plate_armor_rustle" diff --git a/code/game/sound.dm b/code/game/sound.dm index b9de4dbc98c..fdd890b2e89 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -572,4 +572,12 @@ 'sound/items/handling/reagent_containers/plastic_bottle/plastic_bottle_liquid_slosh1.ogg', 'sound/items/handling/reagent_containers/plastic_bottle/plastic_bottle_liquid_slosh2.ogg', ) + if(SFX_PLATE_ARMOR_RUSTLE) + soundin = pick_weight(list( + 'sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle1.ogg' = 8, //longest sound is rarer. + 'sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle2.ogg' = 23, + 'sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle3.ogg' = 23, + 'sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle4.ogg' = 23, + 'sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle5.ogg' = 23, + )) return soundin diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index 321a59e89f7..d844e03c8cf 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -145,6 +145,10 @@ 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." @@ -552,7 +556,7 @@ /obj/item/tank/internals/plasmaman, ) /obj/item/clothing/suit/armor/riot/knight/init_rustle_component() - return + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) /obj/item/clothing/suit/armor/riot/knight/yellow icon_state = "knight_yellow" diff --git a/code/modules/jobs/job_types/chaplain/chaplain_costumes.dm b/code/modules/jobs/job_types/chaplain/chaplain_costumes.dm index 6af8c844555..9bd6436994d 100644 --- a/code/modules/jobs/job_types/chaplain/chaplain_costumes.dm +++ b/code/modules/jobs/job_types/chaplain/chaplain_costumes.dm @@ -151,6 +151,10 @@ inhand_icon_state = null slowdown = 0 +/obj/item/clothing/suit/chaplainsuit/armor/clock/Initialize(mapload) + . = ..() + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) + /obj/item/clothing/head/helmet/chaplain name = "crusader helmet" desc = "Deus Vult." @@ -179,6 +183,10 @@ inhand_icon_state = null slowdown = 0 +/obj/item/clothing/suit/chaplainsuit/armor/templar/Initialize(mapload) + . = ..() + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) + /obj/item/clothing/head/helmet/chaplain/cage name = "cage" desc = "A cage that restrains the will of the self, allowing one to see the profane world for what it is." @@ -199,6 +207,10 @@ icon_state = "knight_ancient" inhand_icon_state = null +/obj/item/clothing/suit/chaplainsuit/armor/ancient/Initialize(mapload) + . = ..() + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) + /obj/item/clothing/head/helmet/chaplain/witchunter_hat name = "witchunter hat" desc = "This hat saw much use back in the day." @@ -230,6 +242,11 @@ body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS armor_type = /datum/armor/armor_crusader +/obj/item/clothing/suit/chaplainsuit/armor/crusader/Initialize(mapload) + . = ..() + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) + + /datum/armor/armor_crusader melee = 50 bullet = 50 diff --git a/code/modules/mining/equipment/explorer_gear.dm b/code/modules/mining/equipment/explorer_gear.dm index af31d32719f..cc8cba654dd 100644 --- a/code/modules/mining/equipment/explorer_gear.dm +++ b/code/modules/mining/equipment/explorer_gear.dm @@ -293,6 +293,7 @@ /obj/item/clothing/suit/hooded/cloak/godslayer/Initialize(mapload) . = ..() allowed = GLOB.mining_suit_allowed + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) /obj/item/clothing/head/hooded/cloakhood/godslayer name = "godslayer helm" diff --git a/code/modules/mining/lavaland/tendril_loot.dm b/code/modules/mining/lavaland/tendril_loot.dm index 2b14dfcc93e..6446ebc3432 100644 --- a/code/modules/mining/lavaland/tendril_loot.dm +++ b/code/modules/mining/lavaland/tendril_loot.dm @@ -737,6 +737,7 @@ . = ..() ADD_TRAIT(src, TRAIT_NODROP, LOCKED_HELMET_TRAIT) AddComponent(/datum/component/armor_plate, maxamount = 1, upgrade_item = /obj/item/drake_remains, armor_mod = /datum/armor/drake_empowerment, upgrade_prefix = "empowered") + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) /obj/item/clothing/head/hooded/berserker/examine() . = ..() diff --git a/code/modules/research/xenobiology/crossbreeding/_clothing.dm b/code/modules/research/xenobiology/crossbreeding/_clothing.dm index 89baa18720d..caaafd05642 100644 --- a/code/modules/research/xenobiology/crossbreeding/_clothing.dm +++ b/code/modules/research/xenobiology/crossbreeding/_clothing.dm @@ -150,6 +150,10 @@ Slimecrossing Armor slowdown = 4 var/hit_reflect_chance = 40 +/obj/item/clothing/suit/armor/heavy/adamantine/Initialize(mapload) + . = ..() + AddComponent(/datum/component/item_equipped_movement_rustle, SFX_PLATE_ARMOR_RUSTLE, 8) + /obj/item/clothing/suit/armor/heavy/adamantine/IsReflect(def_zone) if((def_zone in list(BODY_ZONE_CHEST, BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) && prob(hit_reflect_chance)) return TRUE diff --git a/sound/items/handling/armor_rustle/plate_armor/attribution.txt b/sound/items/handling/armor_rustle/plate_armor/attribution.txt new file mode 100644 index 00000000000..681f995687f --- /dev/null +++ b/sound/items/handling/armor_rustle/plate_armor/attribution.txt @@ -0,0 +1,2 @@ +plate armor rustle: +armor.wav by juryduty -- https://freesound.org/s/180231/ -- License: Creative Commons 0 diff --git a/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle1.ogg b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle1.ogg new file mode 100644 index 00000000000..0d5d521ad5b Binary files /dev/null and b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle1.ogg differ diff --git a/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle2.ogg b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle2.ogg new file mode 100644 index 00000000000..dbbf25bbc36 Binary files /dev/null and b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle2.ogg differ diff --git a/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle3.ogg b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle3.ogg new file mode 100644 index 00000000000..074e1c61197 Binary files /dev/null and b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle3.ogg differ diff --git a/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle4.ogg b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle4.ogg new file mode 100644 index 00000000000..6a105b85ac5 Binary files /dev/null and b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle4.ogg differ diff --git a/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle5.ogg b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle5.ogg new file mode 100644 index 00000000000..b2069180364 Binary files /dev/null and b/sound/items/handling/armor_rustle/plate_armor/plate_armor_rustle5.ogg differ