mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 05:00:55 +01:00
Refactors obscured (#92779)
## About The Pull Request Fixes #85028 Obscured flags and covered flags are tracked on carbons, updated as items are equipped and unequipped. It's that shrimple. Closes #92760 Just removes the species exception checks for not making sense Also refactors handcuffs / legcuffs removal. In all of these situations they were hardcoded when they could easily just use an inventory proc to work. ## Why It's Good For The Game Stops a million excessive calls to `check_obscured_slots` Makes obscured behavior more consistent Makes obscured behavior easier to use Cleans up human rendering (There was some cursed stuff before with render item -> updated obscured -> update body -> cause side effects) ## Changelog 🆑 Melbert del: Golems which somehow manage to grow wings and somehow manage to equip something that covers their jumpsuit can no longer fly. (Seriously, this will not affect anyone) refactor: Refactored clothing obscurity entirely. Items should be a loooot more consistent and what covers what, and should update a lot snappier. As always, report any oddities, like mysteriously disappearing articles of clothing, hair, or species parts refactored: Refactored handcuffs and legcuffs a bit, report any odd situations with cuffs like getting stuck restrained /🆑
This commit is contained in:
@@ -271,7 +271,7 @@
|
||||
part.alternate_worn_layer = part_datum.unsealed_layer
|
||||
update_speed()
|
||||
wearer.update_clothing(part.slot_flags | slot_flags)
|
||||
wearer.update_obscured_slots(part.visor_flags_inv)
|
||||
wearer.refresh_obscured()
|
||||
if((part.clothing_flags & (MASKINTERNALS|HEADINTERNALS)) && wearer.invalid_internals())
|
||||
wearer.cutoff_internals()
|
||||
SEND_SIGNAL(src, COMSIG_MOD_PART_SEALED, part_datum)
|
||||
|
||||
@@ -191,6 +191,7 @@
|
||||
set_wearer(user)
|
||||
else if(wearer)
|
||||
unset_wearer()
|
||||
return ..()
|
||||
|
||||
/obj/item/mod/control/dropped(mob/user)
|
||||
. = ..()
|
||||
|
||||
@@ -167,6 +167,7 @@
|
||||
part.worn_icon = used_skin[MOD_WORN_ICON_OVERRIDE] || 'icons/mob/clothing/modsuit/mod_clothing.dmi'
|
||||
part.icon_state = "[skin]-[part.base_icon_state][mod.get_part_datum(part).sealed ? "-sealed" : ""]"
|
||||
mod.wearer?.update_clothing(part.slot_flags)
|
||||
mod.wearer?.refresh_obscured()
|
||||
|
||||
/datum/armor/mod_theme
|
||||
melee = 10
|
||||
|
||||
Reference in New Issue
Block a user