ConnectionDefinition
public sealed class ConnectionDefinitionNamespace MapExpansions
A drivable and walkable link between the main world and an expansion. The route runs along the road surface’s centre line, from the main-world end to the expansion end. The framework builds the stretches, clears what stands in their way, joins the vehicle graphs and the NPC navigation at both ends, and keeps every collider the route depends on active.
Properties
Section titled “Properties”public string Name { get; set; }public List<RoutePoint> Route { get; }Type: RoutePoint
RoadWidth
Section titled “RoadWidth”public float RoadWidth { get; set; }Width of the drivable deck between the curbs.
WalkwayWidth
Section titled “WalkwayWidth”public float WalkwayWidth { get; set; }Width of each walkway beside the deck.
CurbHeight
Section titled “CurbHeight”public float CurbHeight { get; set; }WallHeight
Section titled “WallHeight”public float WallHeight { get; set; }Height of the straight tunnel wall above the walkway.
CrownHeight
Section titled “CrownHeight”public float CrownHeight { get; set; }Height of the vault’s crown above the road.
GuardHeight
Section titled “GuardHeight”public float GuardHeight { get; set; }Height of the guard walls on RouteStyle.Road stretches.
MedianHeight
Section titled “MedianHeight”public float MedianHeight { get; set; }Height of the barrier between the two directions where a route point gives it a width.
ShellThickness
Section titled “ShellThickness”public float ShellThickness { get; set; }Thickness of the rock shell around a tunnel, which closes holes cut into hills and rock.
PortalMargin
Section titled “PortalMargin”public float PortalMargin { get; set; }How far the facade around a tunnel mouth reaches beyond the shell, to the sides and above. The facade closes what the clearing cut out of the slope or a portal around the mouth. 0 builds none.
StartPortalMargin
Section titled “StartPortalMargin”public float? StartPortalMargin { get; set; }PortalMargin at the route’s first portal only, for a portal whose surroundings already close the slope, such as a rock mantle. Unset uses PortalMargin.
EndPortalMargin
Section titled “EndPortalMargin”public float? EndPortalMargin { get; set; }As StartPortalMargin, at the route’s last portal.
LightSpacing
Section titled “LightSpacing”public float LightSpacing { get; set; }Metres between two tunnel lights.
LightRange
Section titled “LightRange”public float LightRange { get; set; }LightIntensity
Section titled “LightIntensity”public float LightIntensity { get; set; }LightColor
Section titled “LightColor”public Color LightColor { get; set; }RoadMaterial
Section titled “RoadMaterial”public MaterialRef RoadMaterial { get; set; }Type: MaterialRef
WalkwayMaterial
Section titled “WalkwayMaterial”public MaterialRef WalkwayMaterial { get; set; }Type: MaterialRef
WallMaterial
Section titled “WallMaterial”public MaterialRef WallMaterial { get; set; }Type: MaterialRef
ShellMaterial
Section titled “ShellMaterial”public MaterialRef ShellMaterial { get; set; }Type: MaterialRef
VehicleJoin
Section titled “VehicleJoin”public PathPoint? VehicleJoin { get; set; }Type: PathPoint
Main-world point where the vanilla vehicle graph and the expansion’s graph overlap. The framework joins the two there across the road’s width.
public List<ObjectRule> Keep { get; }Type: ObjectRule
Objects that stay although they stand in the route’s way. Everything else that intersects the inside of a built stretch is switched off, or cut where it is too large to switch off as a whole.
ClearApproach
Section titled “ClearApproach”public List<ObjectRule> ClearApproach { get; }Type: ObjectRule
Objects of the existing world that reach over the road in front of the built range, such as a rock face over the lanes before a portal. Over the last ApproachLength metres of road at both ends they are cut across the road’s width, from its surface to the crown; the rest of them stays. Other objects there stay whole. The rules select by name, parent and area; their effect is not read.
ApproachLength
Section titled “ApproachLength”public float ApproachLength { get; set; }Metres of existing road before and after the built range that count as its approach: terrain above the road becomes a hole there, and ClearApproach objects are cut.
StartWingWalls
Section titled “StartWingWalls”public WingWalls StartWingWalls { get; set; }Type: WingWalls
Sides on which the tunnel’s walls run on in front of the portal at the start of the built range, over ApproachLength metres, as thick as the shell and as high as the portal frame. For a rock face beside the approach: it ends behind the wall instead of in a cut edge, and ClearApproach objects are cut up to the wall on that side.
EndWingWalls
Section titled “EndWingWalls”public WingWalls EndWingWalls { get; set; }Type: WingWalls
As StartWingWalls, at the portal at the end of the built range.
StartCover
Section titled “StartCover”public float StartCover { get; set; }Metres of tunnel behind the route’s first portal that lie under a rock mantle on upright sides. At its far end it is as wide and high as the facade, and it narrows to the portal’s frame. For a tunnel that leaves its hill before the portal: seen from the side, its last metres lie in rock instead of standing free. The mantle should end inside the hill. 0 builds none.
EndCover
Section titled “EndCover”public float EndCover { get; set; }As StartCover, behind the route’s last portal.
Methods
Section titled “Methods”Add(PathPoint, RouteStyle)
Section titled “Add(PathPoint, RouteStyle)”public ConnectionDefinition Add(PathPoint point, RouteStyle style)Types: PathPoint, RouteStyle
Add(PathPoint, RouteStyle, float, float)
Section titled “Add(PathPoint, RouteStyle, float, float)”public ConnectionDefinition Add( PathPoint point, RouteStyle style, float roadWidth, float medianWidth = 0f)Types: PathPoint, RouteStyle
Adds a point with its own road width and median, see RoutePoint.RoadWidth.