using Content.Shared.Item;
using Content.Shared.Whitelist;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization;
namespace Content.Shared.Xenoarchaeology.XenoArtifacts;
///
/// This is a prototype for...
///
[Prototype]
[DataDefinition]
public sealed partial class ArtifactEffectPrototype : IPrototype
{
///
[IdDataField]
public string ID { get; private set; } = default!;
///
/// Components that are added to the artifact when the specfic effect is active.
/// These are removed after the node is exited and the effect is changed.
///
[DataField("components", serverOnly: true)]
public ComponentRegistry Components = new();
///
/// Components that are permanently added to an entity when the effect's node is entered.
///
[DataField("permanentComponents")]
public ComponentRegistry PermanentComponents = new();
//TODO: make this a list so we can have multiple target depths
[DataField("targetDepth")]
public int TargetDepth = 0;
[DataField("effectHint")]
public string? EffectHint;
[DataField("whitelist")]
public EntityWhitelist? Whitelist;
[DataField("blacklist")]
public EntityWhitelist? Blacklist;
}