Editor/Stair/ArchStairManifest.cs
using System;
using System.Collections.Generic;
using System.Linq;

namespace Sunless.Architecture;

public sealed class ArchStairManifest : ArchKindManifest<ArchStairPart> {
	public override ArchKind Kind => ArchKind.Stair;

	public override string Slot => "Stairs";

	public override IEnumerable<Type> Hosts => new[] { typeof( ArchRoom ), typeof( ArchPorchPart ) };

	public override string Label => "Stair";

	public override string Glyph => ArchIcons.Get( "subtool_stair", "stairs" );

	public override string Subtool => ArchSubtools.Stair;

	public override string HostOutput => "Resolved stair shape";

	// The climb, as rows: flight, platform, flight. A stair is a host exactly as a porch is.
	public override IEnumerable<ArchKind> Children => new[] { ArchKind.StairStep };

	public override int DirectRank => 10;

	public override ArchLayerStage Stage( object payload ) => ArchLayerStage.Void;
}