ParadoxCloneRuleComponent.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using Content.Shared.Cloning;
  2. using Content.Shared.Whitelist;
  3. using Robust.Shared.Prototypes;
  4. namespace Content.Server.GameTicking.Rules.Components;
  5. /// <summary>
  6. /// Gamerule component for spawning a paradox clone antagonist.
  7. /// </summary>
  8. [RegisterComponent]
  9. public sealed partial class ParadoxCloneRuleComponent : Component
  10. {
  11. /// <summary>
  12. /// Cloning settings to be used.
  13. /// </summary>
  14. [DataField]
  15. public ProtoId<CloningSettingsPrototype> Settings = "BaseClone";
  16. /// <summary>
  17. /// Visual effect spawned when gibbing at round end.
  18. /// </summary>
  19. [DataField]
  20. public EntProtoId GibProto = "MobParadoxTimed";
  21. /// <summary>
  22. /// Mind entity of the original player.
  23. /// Gets assigned when cloning.
  24. /// </summary>
  25. [DataField]
  26. public EntityUid? Original;
  27. /// <summary>
  28. /// Whitelist for Objectives to be copied to the clone.
  29. /// </summary>
  30. [DataField]
  31. public EntityWhitelist? ObjectiveWhitelist;
  32. /// <summary>
  33. /// Blacklist for Objectives to be copied to the clone.
  34. /// </summary>
  35. [DataField]
  36. public EntityWhitelist? ObjectiveBlacklist;
  37. }