ClearDoor(dungeon, grid, entrancePos);
var gridCoords = grid.GridTileToLocal(entrancePos);
// Need to offset the spawn to avoid spawning in the room.
- _entManager.SpawnEntity(gen.Door, gridCoords);
+
+ foreach (var ent in gen.Entities)
+ {
+ _entManager.SpawnEntity(ent, gridCoords);
+ }
+
count--;
// Clear out any biome tiles nearby to avoid blocking it
using Content.Shared.Maps;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
+using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
namespace Content.Shared.Procedural.PostGeneration;
[DataField("count")]
public int Count = 1;
- [DataField("door", customTypeSerializer:typeof(PrototypeIdSerializer<EntityPrototype>))]
- public string Door = "AirlockGlass";
+ [DataField("entities", customTypeSerializer: typeof(PrototypeIdListSerializer<EntityPrototype>))]
+ public List<string> Entities = new()
+ {
+ "AirlockGlass"
+ };
[DataField("tile", customTypeSerializer:typeof(PrototypeIdSerializer<ContentTileDefinition>))]
public string Tile = "FloorSteel";