using Content.Shared.Maps; using Robust.Shared.Prototypes; namespace Content.Shared.Procedural.PostGeneration; /// /// Connects room entrances via corridor segments. /// public sealed partial class CorridorPostGen : IPostDunGen { /// /// How far we're allowed to generate a corridor before calling it. /// /// /// Given the heavy weightings this needs to be fairly large for larger dungeons. /// [DataField("pathLimit")] public int PathLimit = 2048; [DataField("method")] public CorridorPostGenMethod Method = CorridorPostGenMethod.MinimumSpanningTree; [DataField] public ProtoId Tile = "FloorSteel"; /// /// How wide to make the corridor. /// [DataField("width")] public int Width = 3; } public enum CorridorPostGenMethod : byte { Invalid, MinimumSpanningTree, }