Namespace GoRogue.MapGeneration.Connectors
Classes
CenterBoundsConnectionPointSelector
Selects the center points of the bounding boxes of each map area. On concave map areas, because the center point of the bounding box is not actually guaranteed to be among the MapArea's walkable tiles, connecting these two points is not guaranteed to actually connect the entirety of the two areas.
ClosestConnectionPointSelector
Point selector that selects the two points from the MapArea instances that are closest to each other, according to the given distance calculation.
ClosestMapAreaConnector
Implements a connection algorithm that connects all unique map areas in the given map by connecting each area with the one closest to it, based on closeness of the area's center points.
DeadEndTrimmer
Implements an algorithm that will prune small dead-end locations (locations surrounded by 3 walls), from a map/list of map areas.
DirectLineTunnelCreator
Implements a tunnel creation algorithm that sets as walkable a direct line between the two points. In the case that MANHATTAN is being used, the line is calculated via the ORTHO algorithm. Otherwise, the line is calculated using BRESENHAM.
HorizontalVerticalTunnelCreator
Implements a tunnel creation algorithm that creates a tunnel that performs all needed vertical movement before horizontal movement, or vice versa (depending on rng).
OrderedMapAreaConnector
Same as ClosestMapAreaConnector, but connects random rooms instead of determining the closest one, or connects rooms in the order specified if you give it a list of areas.
RandomConnectionPointSelector
Implements a the selection algorithm that simply selects random points from the given areas' positions lists, using the RNG specified, or the default rng if null is given.
RoomDoorConnector
Opens up room walls to connect tunnels that are placed near rooms.
Interfaces
IAreaConnectionPointSelector
Interface for implementing an algorithm for selecting the positions to connect in order to connect two given map areas.
ITunnelCreator
Interface for implementing an algorithm for creating a tunnel between two positions on a walkability map.