Files
tbd-station-14/Content.Shared/Humanoid/Markings/MarkingCategories.cs

57 lines
2.2 KiB
C#

using Robust.Shared.Serialization;
namespace Content.Shared.Humanoid.Markings
{
[Serializable, NetSerializable]
public enum MarkingCategories : byte
{
Special,
Hair,
FacialHair,
Eyes, // imp
Head,
HeadTop,
HeadSide,
Snout,
SnoutCover,
Chest,
UndergarmentTop,
UndergarmentBottom,
Arms,
Legs,
Tail,
Overlay
}
public static class MarkingCategoriesConversion
{
public static MarkingCategories FromHumanoidVisualLayers(HumanoidVisualLayers layer)
{
return layer switch
{
HumanoidVisualLayers.Special => MarkingCategories.Special,
HumanoidVisualLayers.Hair => MarkingCategories.Hair,
HumanoidVisualLayers.FacialHair => MarkingCategories.FacialHair,
HumanoidVisualLayers.Eyes => MarkingCategories.Eyes,
HumanoidVisualLayers.Head => MarkingCategories.Head,
HumanoidVisualLayers.HeadTop => MarkingCategories.HeadTop,
HumanoidVisualLayers.HeadSide => MarkingCategories.HeadSide,
HumanoidVisualLayers.Snout => MarkingCategories.Snout,
HumanoidVisualLayers.Chest => MarkingCategories.Chest,
HumanoidVisualLayers.UndergarmentTop => MarkingCategories.UndergarmentTop,
HumanoidVisualLayers.UndergarmentBottom => MarkingCategories.UndergarmentBottom,
HumanoidVisualLayers.RArm => MarkingCategories.Arms,
HumanoidVisualLayers.LArm => MarkingCategories.Arms,
HumanoidVisualLayers.RHand => MarkingCategories.Arms,
HumanoidVisualLayers.LHand => MarkingCategories.Arms,
HumanoidVisualLayers.LLeg => MarkingCategories.Legs,
HumanoidVisualLayers.RLeg => MarkingCategories.Legs,
HumanoidVisualLayers.LFoot => MarkingCategories.Legs,
HumanoidVisualLayers.RFoot => MarkingCategories.Legs,
HumanoidVisualLayers.Tail => MarkingCategories.Tail,
_ => MarkingCategories.Overlay
};
}
}
}