Class WallBuilder
- Namespace
- S1MAPI.Building.Structural
- Assembly
- S1MAPI_Mono.dll
Builds walls with optional openings (doors, windows). Extracted from SemanticBuildingBuilder for SRP compliance.
public sealed class WallBuilder
- Inheritance
-
WallBuilder
- Inherited Members
Constructors
WallBuilder(Transform, Vector3, float, BuildingPalette)
Create a new wall builder.
public WallBuilder(Transform parent, Vector3 roomSize, float wallThickness, BuildingPalette palette)
Parameters
parentTransformParent transform for walls
roomSizeVector3Room dimensions (width, height, depth)
wallThicknessfloatWall thickness in meters
paletteBuildingPaletteMaterial and color palette
Methods
BuildWall(WallSide, WallOpening?)
Build a single wall with optional opening.
public GameObject BuildWall(WallSide side, WallOpening? opening = null)
Parameters
sideWallSideWhich side of the room
openingWallOpeningOpening configuration (or null for solid wall)
Returns
- GameObject
The wall GameObject(s)
BuildWalls(WallOpening?, WallOpening?, WallOpening?, WallOpening?)
Build all four walls with specified openings.
public GameObject BuildWalls(WallOpening? northOpening = null, WallOpening? southOpening = null, WallOpening? eastOpening = null, WallOpening? westOpening = null)
Parameters
northOpeningWallOpeningOpening for north wall (or null for solid)
southOpeningWallOpeningOpening for south wall (or null for solid)
eastOpeningWallOpeningOpening for east wall (or null for solid)
westOpeningWallOpeningOpening for west wall (or null for solid)
Returns
- GameObject
The walls container GameObject
BuildWalls(WallOpening?, WallOpening?, WallOpening?, WallOpening?, IReadOnlyDictionary<WallSide, WallAppearance>)
Build all four walls with specified openings and per-wall appearance overrides.
public GameObject BuildWalls(WallOpening? northOpening, WallOpening? southOpening, WallOpening? eastOpening, WallOpening? westOpening, IReadOnlyDictionary<WallSide, WallAppearance> wallOverrides)
Parameters
northOpeningWallOpeningOpening for north wall (or null for solid)
southOpeningWallOpeningOpening for south wall (or null for solid)
eastOpeningWallOpeningOpening for east wall (or null for solid)
westOpeningWallOpeningOpening for west wall (or null for solid)
wallOverridesIReadOnlyDictionary<WallSide, WallAppearance>Per-wall material/color overrides (null entries use palette defaults)
Returns
- GameObject
The walls container GameObject