Files
ss14-wl/Content.Server
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
..
2024-08-25 22:43:31 +10:00
2024-11-08 18:28:24 -06:00
2024-12-18 00:56:02 +01:00
2024-08-25 22:18:42 +10:00
2025-03-09 21:50:24 +01:00
2025-03-15 09:24:23 -07:00
2024-02-23 18:12:23 +11:00
2024-07-13 16:09:19 +10:00
2024-11-16 00:46:01 +01:00
2024-06-02 23:28:53 -04:00
2025-02-11 18:30:24 +01:00
2025-03-09 21:50:24 +01:00
2024-12-24 21:00:53 +13:00
2025-02-14 16:46:25 +01:00
2024-11-22 00:43:02 +01:00
2024-09-27 17:12:10 +10:00
2025-02-13 21:12:56 +01:00
2025-02-22 20:20:44 +11:00
2025-03-12 18:57:06 +01:00
2024-06-01 01:14:43 -07:00
2025-03-13 10:09:07 -07:00
2024-08-09 17:43:57 +10:00
2024-03-24 16:33:45 +11:00
2024-06-09 15:18:54 -04:00
2024-09-29 02:25:21 +02:00
2024-12-21 17:45:48 +11:00
2024-02-21 15:53:46 -05:00
2024-06-01 01:14:43 -07:00
2025-02-18 23:27:30 +11:00
2025-02-18 23:27:30 +11:00
2024-08-25 22:18:42 +10:00
2024-09-29 02:25:21 +02:00
2025-01-02 19:23:28 +01:00
2025-01-11 22:17:26 +01:00
2024-06-02 23:28:53 -04:00
2025-03-12 19:48:45 +01:00
2024-02-21 15:53:46 -05:00
2025-01-18 22:32:33 -07:00
2024-08-18 21:39:00 -06:00
2025-03-13 10:09:07 -07:00
2024-03-31 16:44:02 -04:00
2025-03-07 14:51:08 +01:00
2025-03-07 14:51:08 +01:00
2024-08-28 10:57:12 +10:00
2024-10-10 10:48:56 +02:00
2024-07-08 00:26:58 +10:00
2024-03-19 23:27:02 -04:00
2025-02-18 23:27:30 +11:00
2024-09-27 17:12:10 +10:00
2024-11-08 03:46:22 -08:00
2024-05-30 07:39:07 -04:00
2024-04-21 23:16:23 +10:00
2025-02-04 17:25:54 +01:00
2024-06-01 01:14:43 -07:00
2024-09-26 18:55:59 +02:00