Delta-v/Content.Shared/Humanoid
paige404 2e7f01b99e
Fix broken layer hiding on clothes with multiple equipment slots (#34080)
* Fix broken layer hiding on clothes with multiple equipment slots

* Refactor ToggleVisualLayers, HideLayerClothingComponent, and ClothingComponent to allow more
precise layer hide behavior and more CPU efficient layer toggling.

* Adjust HumanoidAppearaceSystem to track which slots are hiding a given layer (e.g. gas mask and welding mask)
Add documentation
Change gas masks to use the new HideLayerClothingComponent structure as an example of its usage

* Fix the delayed snout bug

* Misc cleanup

* Make `bool permanent` implicit from SlotFlags

any non-permanent visibility toggle with `SlotFlags.None` isn't supported with how its set up. And similarly, the slot flags argument does nothing if permanent = true. So IMO it makes more sense to infer it from a nullable arg.

* Split into separate system

Too much pasta

* Remove (hopefully unnecessary) refresh

* Fisk mask networking

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* Keep old behaviour, use clearer names?

I'm just guessing at what this was meant to do

* english

* Separate slot name & flag

* dirty = true

* fix comment

* Improved SetLayerVisibility with dirtying logic suggested by @ElectroJr

* Only set mask toggled if DisableOnFold is true

* FoldableClothingSystem fixes

* fix bandana state

* Better comment

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2025-03-21 00:30:47 +11:00
..
Markings Cleanup: Remove redundant prototype name specifications (#35793) 2025-03-19 19:30:31 +01:00
Prototypes Cleanup: Remove redundant prototype name specifications (#35793) 2025-03-19 19:30:31 +01:00
HairStyles.cs Lint more const string prototypes (#18922) 2023-08-13 20:26:59 -04:00
HumanoidAppearanceComponent.cs Fix broken layer hiding on clothes with multiple equipment slots (#34080) 2025-03-21 00:30:47 +11:00
HumanoidCharacterAppearance.cs Lobby refactor + species loadouts support (#27576) 2024-05-12 09:18:21 +10:00
HumanoidProfileExport.cs Lobby refactor + species loadouts support (#27576) 2024-05-12 09:18:21 +10:00
HumanoidVisualLayers.cs Add undergarments & "Censor Nudity" toggle to options (#33185) 2025-03-05 10:14:01 +01:00
HumanoidVisualLayersExtension.cs Makes humanoid appearance component networked. (#13009) 2023-01-24 11:38:19 +11:00
ICharacterAppearance.cs Humanoid appearance refactor (#10882) 2022-09-22 17:19:00 -05:00
NamingSystem.cs Remove unneeded Loc.GetString (#35739) 2025-03-09 11:06:11 +01:00
Sex.cs Audible emotes (#12708) 2023-01-25 08:29:41 -08:00
SharedHumanoidAppearanceSystem.cs Fix broken layer hiding on clothes with multiple equipment slots (#34080) 2025-03-21 00:30:47 +11:00
SharedHumanoidMarkingModifierSystem.cs Update trivial components to use auto comp states (#20539) 2023-09-28 16:20:29 -07:00
SkinColor.cs Vox sprite rework (#26985) 2024-04-27 16:04:51 +10:00