mirror of
https://github.com/space-syndicate/space-station-14.git
synced 2026-10-24 09:11:18 +03:00
* initial visual nubody * oops overlay * im so pheeming rn * conversion... * tests * comeback of the underwear * oops eyes * blabbl * zeds * yaml linted * search and visible count constraints * reordering * preserve previously selected markings colors * fix test * some ui niceties * ordering * make DB changes backwards-compatible/downgrade-friendly * fix things again * fix migration * vulpkanin markings limit increase * wrapping * code cleanup and more code cleanup and more code cleanup and more code cleanup and * fix slop ports * better sampling API * make filter work + use the method i made for its intended purpose * fix test fails real quick * magic mirror cleanup, remove TODO * don't 0-init the organ profile data * remove deltastates --------- Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
35 lines
1.3 KiB
C#
35 lines
1.3 KiB
C#
using Content.Shared.Inventory;
|
|
using Robust.Shared.GameStates;
|
|
|
|
namespace Content.Shared.Humanoid;
|
|
|
|
[NetworkedComponent, RegisterComponent, AutoGenerateComponentState(true)]
|
|
[Access(typeof(SharedHideableHumanoidLayersSystem))]
|
|
public sealed partial class HideableHumanoidLayersComponent : Component
|
|
{
|
|
/// <summary>
|
|
/// A map of the visual layers currently hidden to the equipment
|
|
/// slots that are currently hiding them. This will affect the base
|
|
/// sprite on this humanoid layer, and any markings that sit above it.
|
|
/// </summary>
|
|
[DataField, AutoNetworkedField]
|
|
public Dictionary<HumanoidVisualLayers, SlotFlags> HiddenLayers = new();
|
|
|
|
/// <summary>
|
|
/// Which layers of this humanoid that should be hidden on equipping a corresponding item..
|
|
/// </summary>
|
|
[DataField]
|
|
public HashSet<HumanoidVisualLayers> HideLayersOnEquip = [HumanoidVisualLayers.Hair];
|
|
|
|
/// <summary>
|
|
/// Client only - which layers were last hidden
|
|
/// </summary>
|
|
[ViewVariables]
|
|
public HashSet<HumanoidVisualLayers> LastHiddenLayers = new();
|
|
}
|
|
|
|
/// <summary>
|
|
/// Raised on an entity when one of its humanoid layers changes its visibility
|
|
/// </summary>
|
|
[ByRefEvent]
|
|
public readonly record struct HumanoidLayerVisibilityChangedEvent(HumanoidVisualLayers Layer, bool Visible);
|