Editor/Walkway/ArchWalkwayAffector.cs
namespace Sunless.Architecture;

public sealed class ArchWalkwayAffector : IArchAffector {
	public ArchKind Kind => ArchKind.Walkway;

	public int Order => 10;

	public int Resolve( ArchPlan plan, ArchKit kit ) => ArchWalkwayConnection.Resolve( plan, kit );

	public bool Closes( object payload ) => payload is ArchRoom { Spans: true };

	public void Close( ArchPlan plan, object payload ) {
		if ( payload is ArchRoom link ) {
			ArchWalkwayConnection.Remove( plan, link );
		}
	}
}