mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-10 17:52:36 +00:00
## About The Pull Request MODsuits now calculate their slowdown by querying modules by sending a signal on themselves instead of having modules try and keep up with control unit's speed updates (which broke in a fabulous fashion after MODsuits were allowed to deploy by piece) Also added a separate trait to prevent objects from being speed potion-ed to combat stabilized red crossbreed issues, and removed a duplicate list helper (40 lines down in the same file lol) Closes #89979 Closes #90036 ## Changelog 🆑 fix: MODsuits should now be affected by stabilized red crossbreeds fix: MODsuit slowdowns should no longer behave weirdly with ash accretion/magboots/armor booster modules. refactor: Refactored MODsuit slowdown calculations to be query-based instead of modules directly modifying part speed values. /🆑
79 lines
2.4 KiB
Plaintext
79 lines
2.4 KiB
Plaintext
/obj/item/clothing/head/mod
|
|
name = "MOD helmet"
|
|
desc = "A helmet for a MODsuit."
|
|
icon = 'icons/obj/clothing/modsuit/mod_clothing.dmi'
|
|
icon_state = "standard-helmet"
|
|
base_icon_state = "helmet"
|
|
worn_icon = 'icons/mob/clothing/modsuit/mod_clothing.dmi'
|
|
armor_type = /datum/armor/none
|
|
body_parts_covered = HEAD
|
|
heat_protection = HEAD
|
|
cold_protection = HEAD
|
|
|
|
// Even without a hat stabilizer, hats can be worn - however, they'll fall off very easily
|
|
/obj/item/clothing/head/mod/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NO_SPEED_POTION, INNATE_TRAIT)
|
|
AddComponent(/datum/component/hat_stabilizer, loose_hat = TRUE)
|
|
|
|
/obj/item/clothing/suit/mod
|
|
name = "MOD chestplate"
|
|
desc = "A chestplate for a MODsuit."
|
|
icon = 'icons/obj/clothing/modsuit/mod_clothing.dmi'
|
|
icon_state = "standard-chestplate"
|
|
base_icon_state = "chestplate"
|
|
worn_icon = 'icons/mob/clothing/modsuit/mod_clothing.dmi'
|
|
blood_overlay_type = "armor"
|
|
allowed = list(
|
|
/obj/item/tank/internals,
|
|
/obj/item/flashlight,
|
|
/obj/item/tank/jetpack/oxygen/captain,
|
|
)
|
|
armor_type = /datum/armor/none
|
|
body_parts_covered = CHEST|GROIN
|
|
heat_protection = CHEST|GROIN
|
|
cold_protection = CHEST|GROIN
|
|
drop_sound = null
|
|
|
|
/obj/item/clothing/suit/mod/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NO_SPEED_POTION, INNATE_TRAIT)
|
|
|
|
/obj/item/clothing/gloves/mod
|
|
name = "MOD gauntlets"
|
|
desc = "A pair of gauntlets for a MODsuit."
|
|
icon = 'icons/obj/clothing/modsuit/mod_clothing.dmi'
|
|
icon_state = "standard-gauntlets"
|
|
base_icon_state = "gauntlets"
|
|
worn_icon = 'icons/mob/clothing/modsuit/mod_clothing.dmi'
|
|
armor_type = /datum/armor/none
|
|
body_parts_covered = HANDS|ARMS
|
|
heat_protection = HANDS|ARMS
|
|
cold_protection = HANDS|ARMS
|
|
equip_sound = null
|
|
pickup_sound = null
|
|
drop_sound = null
|
|
|
|
/obj/item/clothing/gloves/mod/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NO_SPEED_POTION, INNATE_TRAIT)
|
|
|
|
/obj/item/clothing/shoes/mod
|
|
name = "MOD boots"
|
|
desc = "A pair of boots for a MODsuit."
|
|
icon = 'icons/obj/clothing/modsuit/mod_clothing.dmi'
|
|
icon_state = "standard-boots"
|
|
base_icon_state = "boots"
|
|
worn_icon = 'icons/mob/clothing/modsuit/mod_clothing.dmi'
|
|
armor_type = /datum/armor/none
|
|
body_parts_covered = FEET|LEGS
|
|
heat_protection = FEET|LEGS
|
|
cold_protection = FEET|LEGS
|
|
item_flags = IGNORE_DIGITIGRADE
|
|
fastening_type = SHOES_SLIPON
|
|
equip_sound = null
|
|
|
|
/obj/item/clothing/shoes/mod/Initialize(mapload)
|
|
. = ..()
|
|
ADD_TRAIT(src, TRAIT_NO_SPEED_POTION, INNATE_TRAIT)
|