using Content.Shared.Cloning;
using Content.Shared.Whitelist;
using Robust.Shared.Prototypes;
namespace Content.Server.GameTicking.Rules.Components;
///
/// Gamerule component for spawning a paradox clone antagonist.
///
[RegisterComponent]
public sealed partial class ParadoxCloneRuleComponent : Component
{
///
/// Cloning settings to be used.
///
[DataField]
public ProtoId Settings = "ParadoxCloningSettings";
///
/// Visual effect spawned when gibbing at round end.
///
[DataField]
public EntProtoId GibProto = "MobParadoxTimed";
///
/// Entity of the original player.
/// Gets randomly chosen from all alive players if not specified.
///
[DataField]
public EntityUid? OriginalBody;
///
/// Mind entity of the original player.
/// Gets assigned when cloning.
///
[DataField]
public EntityUid? OriginalMind;
///
/// Whitelist for Objectives to be copied to the clone.
///
[DataField]
public EntityWhitelist? ObjectiveWhitelist;
///
/// Blacklist for Objectives to be copied to the clone.
///
[DataField]
public EntityWhitelist? ObjectiveBlacklist;
}