Commit Graph

11 Commits

Author SHA1 Message Date
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
Tayrtahn
50631f430d Add clothing equipped/unequipped events (#27155)
* Added ClothingGotEquipped/ClothingGotUnequipped events

* Better version

* Implemented in a few places

* More implementations

* Add ClothingDidEquipped/ClothingDidUnequipped events
2024-04-21 11:00:50 -04:00
themias
b503fe5864 Add face bandanas (#24597)
* add face bandanas

* oops

* make face bandanas butcherable, also one bite

* oops

* Add mouth IdentityBlocker to bandanas

* refactor to use foldablecomponent

* remove some leftover bits

* remove HamsterWearable until face sprite updated

* oops

* review changes

* remove a few unneeded bits
2024-02-04 11:52:44 +11:00
DrSmugleaf
af3a1e5900 Fix masks not toggling voice mask component (#22506) 2023-12-14 20:39:11 -05:00
DrSmugleaf
ad6dc94c60 Move MaskComponent to shared and add toggle events (#22395)
* Move MaskComponent to shared and add toggle events

* Datafield and network IsToggled

* Add missing dirty
2023-12-12 19:02:35 -07:00
DrSmugleaf
c71f97e3a2 Refactor actions to be entities with components (#19900) 2023-09-08 18:16:05 -07:00
Leon Friedrich
f99533a7bf Remove server and shared sprite component (#15917) 2023-04-30 16:09:52 +10:00
Leon Friedrich
593f890b73 Fix drone hat offset (#6978) 2022-03-04 16:02:53 +11:00
Leon Friedrich
c4c238bda9 Add multi-layer in-hand and clothing support (#6740) 2022-03-02 10:29:42 +11:00
metalgearsloth
f9e32fb0c1 Revert "Add support for multi-layer in-hand and clothing sprites" (#6521) 2022-02-07 14:59:22 +11:00
Leon Friedrich
470e4f8bdc Add support for multi-layer in-hand and clothing sprites (#6252) 2022-02-07 14:37:57 +11:00