55 lines
1.6 KiB
C#
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,
|
|
}
|