using Content.Shared.Maps; // Upstream#33105 using Robust.Shared.Prototypes; namespace Content.Shared.Procedural.DungeonLayers; /// /// Generates veins inside of the specified dungeon. /// /// /// Generates on top of existing entities for sanity reasons moreso than performance. /// [Virtual] public partial class OreDunGen : IDunGenLayer { // Upstream#33105: OreDunGen replacement (Thank you, TheShuEd!) /// /// This vein can only be generated by replacing the specified entities. /// [DataField] public HashSet? EntityMask; /// /// This vein can only be generated on the specified tiles /// [DataField] public HashSet>? TileMask; // End Upstream#33105: OreDunGen replacement (Thank you, TheShuEd!) /// /// Entity to spawn. /// [DataField(required: true)] public EntProtoId Entity; /// /// Maximum amount of group spawns /// [DataField] public int Count = 10; /// /// Minimum entities to spawn in one group. /// [DataField] public int MinGroupSize = 1; /// /// Maximum entities to spawn in one group. /// [DataField] public int MaxGroupSize = 1; }