GameMapPoolPrototype.cs 722 B

12345678910111213141516171819202122
  1. using JetBrains.Annotations;
  2. using Robust.Shared.Prototypes;
  3. using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set;
  4. namespace Content.Server.Maps;
  5. /// <summary>
  6. /// Prototype that holds a pool of maps that can be indexed based on the map pool CCVar.
  7. /// </summary>
  8. [Prototype, PublicAPI]
  9. public sealed partial class GameMapPoolPrototype : IPrototype
  10. {
  11. /// <inheritdoc/>
  12. [IdDataField]
  13. public string ID { get; private set; } = default!;
  14. /// <summary>
  15. /// Which maps are in this pool.
  16. /// </summary>
  17. [DataField("maps", customTypeSerializer:typeof(PrototypeIdHashSetSerializer<GameMapPrototype>), required: true)]
  18. public HashSet<string> Maps = new(0);
  19. }