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