using Robust.Shared.Prototypes; namespace Content.Shared.Procedural; [Virtual, DataDefinition] public partial class DungeonConfig { /// /// /// [DataField] public DungeonData Data = DungeonData.Empty; /// /// The secret sauce, procedural generation layers that get run. /// [DataField] public List Layers = new(); /// /// Should we reserve the tiles generated by this config so no other dungeons can spawn on it within the same job? /// [DataField] public bool ReserveTiles; /// /// Minimum times to run the config. /// [DataField] public int MinCount = 1; /// /// Maximum times to run the config. /// [DataField] public int MaxCount = 1; /// /// Minimum amount we can offset the dungeon by. /// [DataField] public int MinOffset; /// /// Maximum amount we can offset the dungeon by. /// [DataField] public int MaxOffset; } [Prototype] public sealed class DungeonConfigPrototype : DungeonConfig, IPrototype { [IdDataField] public string ID { get; private set; } = default!; }