Editor/Pillar/ArchPillarManifest.cs

Editor manifest class that describes the Pillar building part. It provides metadata for the pillar kind such as kind enum, UI slot, valid host types, label, icon glyph, subtool id, ordering rank, and which layer stage it belongs to.

using System;
using System.Collections.Generic;
using System.Linq;

namespace Sunless.Architecture;

public sealed class ArchPillarManifest : ArchKindManifest<ArchPillarPart>
{
	public override ArchKind Kind => ArchKind.Pillar;

	public override string Slot => "Pillars";

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

	public override string Label => "Pillars";

	public override string Glyph => ArchIcons.Get( "subtool_pillar", "view_column" );

	public override string Subtool => ArchSubtools.Pillar;

	public override int IndirectRank => 103;

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