Editor/Floor/ArchFlightBuilders.cs
namespace Sunless.Architecture;
public readonly record struct ArchFlightDrawing(
ArchMesh Canvas,
ArchStairPart Stair,
ArchRoom Room,
ArchBuilding Building,
ArchKit Kit,
ArchStyle Style,
List<ArchDoorRequest> Doors,
ArchPlan Plan );
public interface IArchFlightBuilder {
void Build( ArchFlightDrawing drawing );
}
public static class ArchFlightBuilders {
public static bool Build( ArchFlightDrawing drawing ) {
if ( ArchRoles.One<IArchFlightBuilder>() is not { } builder ) {
return false;
}
builder.Build( drawing );
return true;
}
}