Namespace GoRogue.MapGeneration
Namespaces
GoRogue.MapGeneration.ConnectionPointSelectors
GoRogue.MapGeneration.ContextComponents
GoRogue.MapGeneration.Steps
GoRogue.MapGeneration.TunnelCreators
Classes
DefaultAlgorithms
A collection of functions that return pre-defined series of generation steps that generate particular types of maps. For more customizable map generation, see documentation for the individual steps in GoRogue.MapGeneration.Steps and use AddStep to add them to a generator.
GenerationContext
A context object used for map generation. Map generation steps will require and retrieve components that have been added to this context when they need to retrieve data about the map generated by previous steps.
GenerationStep
Base class for implementing custom map generation steps.
Generator
Map generator that applies a series of GenerationStep instances to a GenerationContext to generate a map.
InvalidConfigurationException
Raised by generation steps in OnPerform(GenerationContext) when a parameter has been misconfigured.
MapAreaFinder
Class designed to calculate and produce a list of Areas representing each unique connected area of the map.
MapGenerationFailedException
Exception thrown when maximum retries for map generation is reached.
MissingContextComponentException
Raised by GenerationStep when required components are not present when PerformStep(GenerationContext) is called.
MultiArea
A class implementing the IReadOnlyMultiArea interface, that derives its area from multiple "sub-areas".
PolygonArea
An area with an arbitrary number of sides and corners
RectangleEdgePositionsList
An arbitrary list of any number of positions on the perimeter of a rectangle. Commonly used to represent a list of doors or edges of rooms by some map generation steps.
RegenerateMapException
Raised by map generation steps if they detect that an invalid state (that can occasionally happen) is detected, and the map should be regenerated. Automatically used by the ConfigAndGenerateSafe(Action<Generator>, int) and ConfigAndGetStageEnumeratorSafe(Action<Generator>, int) functions.
Region
A region of the map with four sides of arbitrary shape and size
RegionAreaChangedEventArgs
Event fired when a region's Area is changed.
Interfaces
IReadOnlyMultiArea
A interface adding onto IReadOnlyArea, intended to represent an area consisting of multiple other areas. Exposes a SubAreas field which lists the constituent areas.