GhostRolePrototype.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using Robust.Shared.Prototypes;
  2. namespace Content.Shared.Ghost.Roles;
  3. /// <summary>
  4. /// For selectable ghostrole prototypes in ghostrole spawners.
  5. /// </summary>
  6. [Prototype]
  7. public sealed partial class GhostRolePrototype : IPrototype
  8. {
  9. [ViewVariables]
  10. [IdDataField]
  11. public string ID { get; private set; } = default!;
  12. /// <summary>
  13. /// The name of the ghostrole.
  14. /// </summary>
  15. [DataField(required: true)]
  16. public string Name { get; set; } = default!;
  17. /// <summary>
  18. /// The description of the ghostrole.
  19. /// </summary>
  20. [DataField(required: true)]
  21. public string Description { get; set; } = default!;
  22. /// <summary>
  23. /// The entity prototype of the ghostrole
  24. /// </summary>
  25. [DataField(required: true)]
  26. public EntProtoId EntityPrototype;
  27. /// <summary>
  28. /// The entity prototype's sprite to use to represent the ghost role
  29. /// Use this if you don't want to use the entity itself
  30. /// </summary>
  31. [DataField]
  32. public EntProtoId? IconPrototype = null;
  33. /// <summary>
  34. /// Rules of the ghostrole
  35. /// </summary>
  36. [DataField(required: true)]
  37. public string Rules = default!;
  38. }