Table of Contents

Namespace S1MAPI.Building

Namespaces

S1MAPI.Building.Components
S1MAPI.Building.Config
S1MAPI.Building.Interior
S1MAPI.Building.Structural

Classes

BuildingBuilder

Fluent builder for constructing buildings with a clean, chainable API. Delegates to specialized builders (WallBuilder, FurnitureBuilder, etc.).

BuildingPartRegistry

Post-build registry that tracks building parts by category. Attached to the building root during construction by BuildingBuilder. Consumers use this to target specific parts (all exterior walls, just the north wall, the floor, trim, etc.) and get their renderers for material swaps.

BuildingUtilities

Utility functions for building construction and configuration

NavDoorwayInfo

Records the position and dimensions of a doorway for NavMesh source filtering and ramp/ground plane generation. Used for both exterior and interior doorways.

NavigationBuilder

Manages NPC navigation for building interiors.

Carves the building footprint from baked NavMesh using NavMeshObstacle, then provides custom A* pathfinding for interior navigation. A Harmony patch on NPCMovement.SetDestination automatically intercepts NPCs whose destinations fall inside the building — no manual SendNPCTo calls needed. NPCs seamlessly transition between exterior NavMesh and interior A* pathfinding.