Files
crystall-punk-14/Content.Shared/Decals/DecalPrototype.cs
Ed acc9886242 Merge remote-tracking branch 'upstream/stable' into ed-2025-03-03-upstream-stable-2
# Conflicts:
#	Content.Client/Options/UI/OptionsMenu.xaml
#	Content.IntegrationTests/Tests/PostMapInitTest.cs
2025-03-03 23:23:40 +03:00

47 lines
1.6 KiB
C#

using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Array;
using Robust.Shared.Utility;
namespace Content.Shared.Decals
{
[Prototype("decal")]
public sealed partial class DecalPrototype : IPrototype, IInheritingPrototype
{
[IdDataField] public string ID { get; private set; } = null!;
[DataField("sprite")] public SpriteSpecifier Sprite { get; private set; } = SpriteSpecifier.Invalid;
[DataField("tags")] public List<string> Tags = new();
[DataField("showMenu")] public bool ShowMenu = false; //CrystallEdge decal filter
/// <summary>
/// If the decal is rotated compared to our eye should we snap it to south.
/// </summary>
[DataField("snapCardinals")] public bool SnapCardinals = false;
/// <summary>
/// True if this decal is cleanable by default.
/// </summary>
[DataField]
public bool DefaultCleanable;
/// <summary>
/// True if this decal has custom colors applied by default
/// </summary>
[DataField]
public bool DefaultCustomColor;
/// <summary>
/// True if this decal snaps to a tile by default
/// </summary>
[DataField]
public bool DefaultSnap = true;
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer<DecalPrototype>))]
public string[]? Parents { get; private set; }
[NeverPushInheritance]
[AbstractDataField]
public bool Abstract { get; private set; }
}
}