Files
tbd-station-14/Content.Server/Procedural/RoomFillComponent.cs
Ed 47cb8a0b08 RoomSpawner mask (#33110)
* RoolFill can now spaw rooms with any size

* tile ignoring

* upgrade interior

* simplify

* Update DungeonSystem.Rooms.cs

* center rooms

* Update RoomFillComponent.cs

* Update RoomFillComponent.cs

* Update DungeonSystem.Rooms.cs

* Remove roomfillcoponent from integration test

* Update EntityTest.cs

* remove nullable size, replaced with minsize and maxsize

* clear existing logic refactor

* delete this one
2025-02-12 15:47:48 +03:00

42 lines
1.0 KiB
C#

using Content.Shared.Whitelist;
namespace Content.Server.Procedural;
/// <summary>
/// Marker that indicates the specified room prototype should occupy this space.
/// </summary>
[RegisterComponent]
public sealed partial class RoomFillComponent : Component
{
/// <summary>
/// Are we allowed to rotate room templates?
/// If the room is not a square this will only do 180 degree rotations.
/// </summary>
[DataField]
public bool Rotation = true;
/// <summary>
/// Min size of the possible selected room.
/// </summary>
[DataField]
public Vector2i MinSize = new (3, 3);
/// <summary>
/// Max size of the possible selected room.
/// </summary>
[DataField]
public Vector2i MaxSize = new (10, 10);
/// <summary>
/// Rooms allowed for the marker.
/// </summary>
[DataField]
public EntityWhitelist? RoomWhitelist;
/// <summary>
/// Should any existing entities / decals be bulldozed first.
/// </summary>
[DataField]
public bool ClearExisting = true;
}