using Content.Shared.Humanoid;
using Content.Shared.Humanoid.Prototypes;
using Content.Shared.Humanoid.Markings;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
using Robust.Shared.GameStates;
namespace Content.Shared._Shitmed.Body.Part;
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState(true)]
public sealed partial class BodyPartAppearanceComponent : Component
{
///
/// HumanoidVisualLayer type for this body part.
///
[DataField, AutoNetworkedField]
public HumanoidVisualLayers Type { get; set; }
///
/// Relevant markings for this body part that will be applied on attachment.
///
[DataField, AutoNetworkedField]
public Dictionary> Markings = new();
///
/// ID of this custom base layer. Must be a .
/// I don't actually know if these serializer props are necessary. I just lifted this from MS14 lol.
///
[DataField(customTypeSerializer: typeof(PrototypeIdSerializer)), AutoNetworkedField]
public string? ID { get; set; }
///
/// Color of this custom base layer. Null implies skin colour if the corresponding is set to match skin.
///
[DataField, AutoNetworkedField]
public Color? Color { get; set; }
///
/// Color of this custom base eye layer. Null implies eye colour if the corresponding is set to match skin.
///
[DataField, AutoNetworkedField]
public Color? EyeColor { get; set; }
}