Files
tbd-station-14/Content.Shared/Species/SpeciesPrototype.cs
2022-03-10 15:05:07 +11:00

55 lines
1.6 KiB
C#

using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.Manager.Attributes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
using Robust.Shared.ViewVariables;
namespace Content.Shared.Species;
[Prototype("species")]
public sealed class SpeciesPrototype : IPrototype
{
/// <summary>
/// Prototype ID of the species.
/// </summary>
[DataField("id", required: true)]
public string ID { get; } = default!;
/// <summary>
/// User visible name of the species.
/// </summary>
[DataField("name", required: true)]
public string Name { get; } = default!;
/// <summary>
/// Whether the species is available "at round start" (In the character editor)
/// </summary>
[DataField("roundStart", required: true)]
public bool RoundStart { get; } = false;
/// <summary>
/// Prototype used by the species as a body.
/// </summary>
[DataField("prototype", required: true, customTypeSerializer:typeof(PrototypeIdSerializer<EntityPrototype>))]
public string Prototype { get; } = default!;
/// <summary>
/// Prototype used by the species for the dress-up doll in various menus.
/// </summary>
[DataField("dollPrototype", required: true, customTypeSerializer:typeof(PrototypeIdSerializer<EntityPrototype>))]
public string DollPrototype { get; } = default!;
/// <summary>
/// Method of skin coloration used by the species.
/// </summary>
[DataField("skinColoration", required: true)]
public SpeciesSkinColor SkinColoration { get; }
}
public enum SpeciesSkinColor
{
HumanToned,
Hues,
}