GetUnion()
: GoRogue.MapGeneration.MapArea
diff --git a/docs/hierarchy.html b/docs/hierarchy.html
index 67cf8b41..c6b6deff 100644
--- a/docs/hierarchy.html
+++ b/docs/hierarchy.html
@@ -118,84 +118,82 @@
CGoRogue.MultiSpatialMap< T > | See SpatialMap documentation – similar in principle. However, this implementation allows multiple items to exist at one point in the SpatialMap, in exchange for the loss of the convenience functions like GetItem vs GetItems, as well as potential performance differences (although unless the number of objects at any given location is large, the performance is asymptotically the same). |
►CGoRogue.AdvancedSpatialMap< T > | Advanced version of SpatialMap that allows for use of a custom IEqualityComparer for hashing and comparison of type T. May be useful for cases where one does not want to implement IHasID, or if you need to use a value type in a SpatialMap. For simple cases, it is recommended to use SpatialMap instead. |
CGoRogue.SpatialMap< T > | Designed as an more efficient data structure for recording objects on a map. The simple version: if you're about to use a List to store a bunch of objects in your map, consider using this or MultiSpatialMap instead! |
- ►CIEqualityComparer | |
- CGoRogue.IDComparer< T > | Class intended for comparing/hashing objects that implement IHasID. Type T must be a reference type. |
- ►CIEquatable | |
- CGoRogue.Rectangle | Represents a rectangle in terms of grid squares. Provides numerous functions pertaining to area. |
- ►CIGenerator | |
- CGoRogue.Random.KnownSeriesGenerator | "Random number generator" that takes in a series of values, and simply returns them sequentially when RNG functions are called. |
- CGoRogue.Random.MaxRandom | A "random" number generator that always returns the maxValue parameter given. Again this may be useful in testing, testing the upper range or repeatedly returning a value. Also used in DiceExpressions for certain max roll functions. |
- CGoRogue.Random.MinRandom | A "random" number generator that always returns the minValue parameter given, or 0 on the Next overload that only takes maxValue. Again, may be useful for testing. Also used in DiceExpression for certain minimum roll functions. |
- ►CGoRogue.IHasID | Interface for a class that has an ID, typically used for hashing purposes. The ID should be unique or close to unique over all instances of the class (for efficiency). Typical implementation could be simply random-genning the ID, or for completely unique IDs can involve using an IDGenerator, potentially as follows: |
+ ►CIEquatable | |
+ CGoRogue.Rectangle | Represents a rectangle in terms of grid squares. Provides numerous functions pertaining to area. |
+ ►CIGenerator | |
+ CGoRogue.Random.KnownSeriesGenerator | "Random number generator" that takes in a series of values, and simply returns them sequentially when RNG functions are called. |
+ CGoRogue.Random.MaxRandom | A "random" number generator that always returns the maxValue parameter given. Again this may be useful in testing, testing the upper range or repeatedly returning a value. Also used in DiceExpressions for certain max roll functions. |
+ CGoRogue.Random.MinRandom | A "random" number generator that always returns the minValue parameter given, or 0 on the Next overload that only takes maxValue. Again, may be useful for testing. Also used in DiceExpression for certain minimum roll functions. |
+ ►CGoRogue.IHasID | Interface for a class that has an ID, typically used for hashing purposes. The ID should be unique or close to unique over all instances of the class (for efficiency). Typical implementation could be simply random-genning the ID, or for completely unique IDs can involve using an IDGenerator, potentially as follows: |
+ CGoRogue.GameFramework.GameObject< BaseSubclass > | Base class for any object that has a grid position and can be added to a Map. BaseSubclass must be the type that is deriving from this types, eg. class MyDerivingGameObject : GameObject<MyDerivingGameObject> |
+ ►CGoRogue.IHasLayer | Interface to be implemented by objects that will be used in LayeredSpatialMap/Map classes. |
CGoRogue.GameFramework.GameObject< BaseSubclass > | Base class for any object that has a grid position and can be added to a Map. BaseSubclass must be the type that is deriving from this types, eg. class MyDerivingGameObject : GameObject<MyDerivingGameObject> |
- ►CGoRogue.IHasLayer | Interface to be implemented by objects that will be used in LayeredSpatialMap/Map classes. |
- CGoRogue.GameFramework.GameObject< BaseSubclass > | Base class for any object that has a grid position and can be added to a Map. BaseSubclass must be the type that is deriving from this types, eg. class MyDerivingGameObject : GameObject<MyDerivingGameObject> |
- ►CGoRogue.MapViews.IMapView< T > | Interface designed to act as a standardized input/output for algorithms. |
- ►CGoRogue.MapViews.ISettableMapView< T > | Interface designed to act as a standardized input/output for algorithms that need to make modifications to data. |
- CGoRogue.MapViews.ArrayMap< T > | Default implementation of the ISettableMapView interface, exposing the interface using an actual 2D array to store data. |
- CGoRogue.MapViews.LambdaSettableMapView< T > | Class designed to make implementing simple ISettableMapViews more convenient, by providing the "get" and "set" functionality via lambda functions. For a version that implements IMapView as opposed to ISettableMapView, see LambdaMapView. |
- CGoRogue.MapViews.SettableViewport< T > | Similar to Viewport, but implements ISettableMapView and thus implements set functionality via relative coordinates. |
- CGoRogue.MapViews.LambdaMapView< T > | Class designed to make implementing simple IMapViews more convenient, by providing the "get" functionality via a lambda function. For a version that implements ISettableMapView as opposed to IMapView, see LambdaSettableMapView. |
- ►CGoRogue.MapViews.Viewport< T > | Since some algorithms that use MapViews can be expensive to run entirely on large maps (such as GoalMaps), Viewport is a class that effectively creates and maintains a "viewport" of the map. Its indexers perform relative to absolute coordinate translations, and return the proper value of type T from the underlying map.. |
- CGoRogue.MapViews.SettableViewport< T > | Similar to Viewport, but implements ISettableMapView and thus implements set functionality via relative coordinates. |
- CGoRogue.MapViews.IMapView< BaseObject > | |
- CGoRogue.MapViews.IMapView< bool > | |
- ►CGoRogue.MapViews.IMapView< double > | |
- CGoRogue.FOV | Class responsible for caculating basic FOV (see SenseMap for more advanced lighting). Effectively a simplified, slightly faster interface compared to SenseMap, that supports only a single source and only shadowcasting. This is more conducive to the typical use case for FOV. It can calculate the FOV with a finite or infinite max radius, and can use a variety of radius types, as specified in Radius class (all the same ones that SenseMap supports). It also supports both 360 degree FOV and a "field of view" (cone) FOV. One may access this class like a 2D array of doubles (FOV values), wherein the values will range from 0.0 to 1.0, where 1.0 means the corresponding map grid coordinate is at maximum visibility, and 0.0 means the cooresponding coordinate is outside of FOV entirely (not visible). Values fall off linearly with respect to radius as distance from the center increases. |
- ►CGoRogue.IReadOnlyFOV | Read-only interface of the FOV class. |
- CGoRogue.FOV | Class responsible for caculating basic FOV (see SenseMap for more advanced lighting). Effectively a simplified, slightly faster interface compared to SenseMap, that supports only a single source and only shadowcasting. This is more conducive to the typical use case for FOV. It can calculate the FOV with a finite or infinite max radius, and can use a variety of radius types, as specified in Radius class (all the same ones that SenseMap supports). It also supports both 360 degree FOV and a "field of view" (cone) FOV. One may access this class like a 2D array of doubles (FOV values), wherein the values will range from 0.0 to 1.0, where 1.0 means the corresponding map grid coordinate is at maximum visibility, and 0.0 means the cooresponding coordinate is outside of FOV entirely (not visible). Values fall off linearly with respect to radius as distance from the center increases. |
- CGoRogue.SenseMapping.IReadOnlySenseMap | Read-only interface of a SenseMap. |
- CGoRogue.SenseMapping.SenseMap | Class responsible for calculating a map for senses (sound, light, etc). Anything that has a resistance map, where 1.0 is completely impenetrable, and 0.0 is no resistance at all, can use this system. Typically used for FOV, however can also be used for sound maps, etc. Supports a few different types of spreading mechanics, including every one in the SourceType enum. Included in these is FOV/FOV-style shadowcasting. This will be much faster than ripple variations. Once one calls Calculate, one can use Coords, or x and y values, to access this class like an array. The double one gets back will be the "sensory value". This is a number between 1.0 and 0.0, where 1.0 is maximum intensity (max brightness in the case of the sources being light, for example), and 0.0 is no intensity at all. |
- ►CGoRogue.MapViews.IMapView< double?> | |
- CGoRogue.Pathing.FleeMap | Implements the concept of a "safety map", also known as "flee map", as described in the roguebasin article http://www.roguebasin.com/index.php?title=The_Incredible_Power_of_Dijkstra_Maps. |
- CGoRogue.Pathing.GoalMap | Implementation of a goal map system, also known as Dijkstra maps ( http://www.roguebasin.com/index.php?title=The_Incredible_Power_of_Dijkstra_Maps ) |
- CGoRogue.Pathing.WeightedGoalMap | Implementation of the second half of the goal map system described in http://www.roguebasin.com/index.php?title=The_Incredible_Power_of_Dijkstra_Maps , the ability to combine multiple goal maps with different weights. |
- ►CIMapView< IEnumerable< BaseObject >> | |
- CGoRogue.GameFramework.Map< BaseObject > | Base class for a map that consists of one or more objects of type BaseObject. It implements basic functionality to manage these objects, as well as commonly needed functinonality like tile exploration, FOV, and pathfinding. BaseObject must be a type that derives from GameObject<BaseObject>. |
- ►CGoRogue.MapViews.IMapView< T2 > | |
- ►CGoRogue.MapViews.TranslationMap< T1, T2 > | Map view class capable of taking complex data and providing a simpler view of it. For a version that provides "set" functionality, see SettableTranslationMap. |
- CGoRogue.MapViews.LambdaTranslationMap< T1, T2 > | A simple TranslationMap implementation that allows you to provide a lambda for the translation function. For a version offering "set" functionality, see SettableLambdaTranslationMap. |
- CGoRogue.MapViews.IMapViewExtensions | Extensions for the IMapView class that effectively act as methods with default implementations for them. |
- ►CGoRogue.DiceNotation.IParser | Interface for a class that parses a string representing a dice expression into a IDiceExpression instance. |
- CGoRogue.DiceNotation.Parser | Default class for parsing a string representing a dice expression into an IDiceExpression instance. |
- ►CGoRogue.IReadOnlyDisjointSet | Basic read-only representation of a Disjoint set data structure. Assumes it is holding integers between 0 and size - 1. |
- CGoRogue.DisjointSet | Basic representation of a Disjoint set data structure. Assumes it is holding integers between 0 and size - 1. |
- CGoRogue.IReadOnlyLayeredSpatialMap< BaseObject > | |
- ►CGoRogue.MapGeneration.IReadOnlyMapArea | Read-only interface for an arbitrarily-shaped area of the map. |
- CGoRogue.MapGeneration.MapArea | Represents an arbitrarily-shaped area of a map. Stores and provides access to a list of each unique position considered connected. |
- ►CGoRogue.IReadOnlyRadiusAreaProvider | Read-only interface of a RadiusAreaProvider. |
- CGoRogue.RadiusAreaProvider | Class capable of getting all unique positions inside of a given radius and (optional) bounds. |
- CGoRogue.MapViews.ISettableMapView< BaseObject > | |
- ►CGoRogue.MapViews.ISettableMapView< T2 > | |
- ►CGoRogue.MapViews.SettableTranslationMap< T1, T2 > | Settable map view class capable of taking complex data and providing a simpler view of it. For a version that provides only "get" functionality, see TranslationMap. |
- CGoRogue.MapViews.LambdaSettableTranslationMap< T1, T2 > | A simple TranslationMap implementation that allows you to provide lambdas for the translation functions. For a version offering only "get" functionality, see LambdaTranslationMap. |
- CGoRogue.ISpatialTuple< T > | Interface specifying return type for item-location pairs in a spatial map implementation. |
- ►CGoRogue.DiceNotation.Terms.ITerm | Interface for an evaluatable term of a dice expression. |
- CGoRogue.DiceNotation.Terms.AddTerm | Term representing the addition operator – adds two terms together. |
- CGoRogue.DiceNotation.Terms.ConstantTerm | Base term – represents a numerical constant. |
- CGoRogue.DiceNotation.Terms.DiceTerm | Represents a dice term, eg 1d4 or 2d6. |
- CGoRogue.DiceNotation.Terms.DivideTerm | Term representing the division operator – divides the first term by the second. |
- CGoRogue.DiceNotation.Terms.KeepTerm | Term represnting the keep operator – keeping only the n highest dice from a dice term. |
- CGoRogue.DiceNotation.Terms.MultiplyTerm | Term representing the division operator – multiplies Term1 and Term2. |
- CGoRogue.DiceNotation.Terms.SubtractTerm | Term representing the subtraction operator – subtracts the second term from the first. |
- ►CGoRogue.MapGeneration.Connectors.ITunnelCreator | Interface for implementing an algorithm for creating a tunnel between two positions on a walkability map. |
- CGoRogue.MapGeneration.Connectors.DirectLineTunnelCreator | Implements a tunnel creation algorithm that sets as walkable a direct line between the two points. In the case that MAHNATTAN distance is being used, the line is calculated via the Coord.CardinalPositionOnLine function. Otherwise, the line is calculated using Coord.PositionsOnLine (brensham's). |
- CGoRogue.MapGeneration.Connectors.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). |
- CGoRogue.LayeredSpatialMap< BaseObject > | |
- CGoRogue.LayerMasker | Allows convenient interpretation and creation of layer masks (bit-masks) mask layers represented by integers [0-NumberOfLayers - 1]. |
- CGoRogue.Lines | Provides implementations of various (line-drawing) algorithms for generating points closest to a line between two points on a grid. |
- CGoRogue.MapGeneration.MapAreaFinder | Class designed to calculate and produce a list of MapAreas representing each unique connected area of the map. |
- CGoRogue.MathHelpers | Static class consisting of mathematical "helper" functions and constants – things like angle unit conversions, and other helpful functions. |
- CGoRogue.MapGeneration.Generators.MazeGenerator | Generates a maze, and adds it to the given map. |
- CGoRogue.MapGeneration.Connectors.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 MapAreas. |
- CGoRogue.Pathing.Path | Encapsulates a path as returned by pathfinding algorithms like AStar. |
- CGoRogue.MapGeneration.QuickGenerators | Collection of algorithms that put map generation pieces together, in ways that allow you to quickly and easily generate a given type of map in a single function call. The implementation of these functions may also be used as the basis for implementing more customized generation processes. |
- CGoRogue.Radius | Class representing different radius types. Similar in architecture to Coord in architecture – it cannot be instantiated. Instead it simply has pre-allocated static variables for each type of radius, that should be used whenever a variable of type Radius is required. |
- CGoRogue.MapGeneration.Connectors.RoomDoorConnector | Opens up room walls to connect tunnels that are placed near rooms. |
- CGoRogue.MapGeneration.Generators.RoomsGenerator | Carves out non-overlapping rooms in a map. Rooms generated will not overlap with themselves, or any existing open areas on the given map. Rooms will not be connected – for automatic connection of rooms generated by this generator, see GoRogue.MapGeneration.QuickGenerator.GenerateDungeonMazeMap(). |
- CGoRogue.SenseMapping.SenseSource | Represents a source location to be used in a SenseMap. One would typically create these and call SenseMap.AddSenseSource with them, and perhaps retain a reference for the sake of moving it around or toggling it on-off. The player might have one of these that follows it around if SenseMap is being used as a lighting map, for instance. Note that changing values such as Position and Radius after the source is created is possible, however changes will not be reflected in any SenseSources using this source until their next Calculate call. |
- CGoRogue.Random.SingletonRandom | Static class that contains 1 variable, which is a DefaultRNG instance. Used as the default rng by other features (dice, etc) wherever needed, and can also be used if you need a random number generator for your own code. |
- CGoRogue.Utility | Static class full of miscellaneous helper methods. |
+ ►CGoRogue.MapViews.IMapView< T > | Interface designed to act as a standardized input/output for algorithms. |
+ ►CGoRogue.MapViews.ISettableMapView< T > | Interface designed to act as a standardized input/output for algorithms that need to make modifications to data. |
+ CGoRogue.MapViews.ArrayMap< T > | Default implementation of the ISettableMapView interface, exposing the interface using an actual 2D array to store data. |
+ CGoRogue.MapViews.LambdaSettableMapView< T > | Class designed to make implementing simple ISettableMapViews more convenient, by providing the "get" and "set" functionality via lambda functions. For a version that implements IMapView as opposed to ISettableMapView, see LambdaMapView. |
+ CGoRogue.MapViews.SettableViewport< T > | Similar to Viewport, but implements ISettableMapView and thus implements set functionality via relative coordinates. |
+ CGoRogue.MapViews.LambdaMapView< T > | Class designed to make implementing simple IMapViews more convenient, by providing the "get" functionality via a lambda function. For a version that implements ISettableMapView as opposed to IMapView, see LambdaSettableMapView. |
+ ►CGoRogue.MapViews.Viewport< T > | Since some algorithms that use MapViews can be expensive to run entirely on large maps (such as GoalMaps), Viewport is a class that effectively creates and maintains a "viewport" of the map. Its indexers perform relative to absolute coordinate translations, and return the proper value of type T from the underlying map.. |
+ CGoRogue.MapViews.SettableViewport< T > | Similar to Viewport, but implements ISettableMapView and thus implements set functionality via relative coordinates. |
+ CGoRogue.MapViews.IMapView< BaseObject > | |
+ CGoRogue.MapViews.IMapView< bool > | |
+ ►CGoRogue.MapViews.IMapView< double > | |
+ CGoRogue.FOV | Class responsible for caculating basic FOV (see SenseMap for more advanced lighting). Effectively a simplified, slightly faster interface compared to SenseMap, that supports only a single source and only shadowcasting. This is more conducive to the typical use case for FOV. It can calculate the FOV with a finite or infinite max radius, and can use a variety of radius types, as specified in Radius class (all the same ones that SenseMap supports). It also supports both 360 degree FOV and a "field of view" (cone) FOV. One may access this class like a 2D array of doubles (FOV values), wherein the values will range from 0.0 to 1.0, where 1.0 means the corresponding map grid coordinate is at maximum visibility, and 0.0 means the cooresponding coordinate is outside of FOV entirely (not visible). Values fall off linearly with respect to radius as distance from the center increases. |
+ ►CGoRogue.IReadOnlyFOV | Read-only interface of the FOV class. |
+ CGoRogue.FOV | Class responsible for caculating basic FOV (see SenseMap for more advanced lighting). Effectively a simplified, slightly faster interface compared to SenseMap, that supports only a single source and only shadowcasting. This is more conducive to the typical use case for FOV. It can calculate the FOV with a finite or infinite max radius, and can use a variety of radius types, as specified in Radius class (all the same ones that SenseMap supports). It also supports both 360 degree FOV and a "field of view" (cone) FOV. One may access this class like a 2D array of doubles (FOV values), wherein the values will range from 0.0 to 1.0, where 1.0 means the corresponding map grid coordinate is at maximum visibility, and 0.0 means the cooresponding coordinate is outside of FOV entirely (not visible). Values fall off linearly with respect to radius as distance from the center increases. |
+ CGoRogue.SenseMapping.IReadOnlySenseMap | Read-only interface of a SenseMap. |
+ CGoRogue.SenseMapping.SenseMap | Class responsible for calculating a map for senses (sound, light, etc). Anything that has a resistance map, where 1.0 is completely impenetrable, and 0.0 is no resistance at all, can use this system. Typically used for FOV, however can also be used for sound maps, etc. Supports a few different types of spreading mechanics, including every one in the SourceType enum. Included in these is FOV/FOV-style shadowcasting. This will be much faster than ripple variations. Once one calls Calculate, one can use Coords, or x and y values, to access this class like an array. The double one gets back will be the "sensory value". This is a number between 1.0 and 0.0, where 1.0 is maximum intensity (max brightness in the case of the sources being light, for example), and 0.0 is no intensity at all. |
+ ►CGoRogue.MapViews.IMapView< double?> | |
+ CGoRogue.Pathing.FleeMap | Implements the concept of a "safety map", also known as "flee map", as described in the roguebasin article http://www.roguebasin.com/index.php?title=The_Incredible_Power_of_Dijkstra_Maps. |
+ CGoRogue.Pathing.GoalMap | Implementation of a goal map system, also known as Dijkstra maps ( http://www.roguebasin.com/index.php?title=The_Incredible_Power_of_Dijkstra_Maps ) |
+ CGoRogue.Pathing.WeightedGoalMap | Implementation of the second half of the goal map system described in http://www.roguebasin.com/index.php?title=The_Incredible_Power_of_Dijkstra_Maps , the ability to combine multiple goal maps with different weights. |
+ ►CIMapView< IEnumerable< BaseObject >> | |
+ CGoRogue.GameFramework.Map< BaseObject > | Base class for a map that consists of one or more objects of type BaseObject. It implements basic functionality to manage these objects, as well as commonly needed functinonality like tile exploration, FOV, and pathfinding. BaseObject must be a type that derives from GameObject<BaseObject>. |
+ ►CGoRogue.MapViews.IMapView< T2 > | |
+ ►CGoRogue.MapViews.TranslationMap< T1, T2 > | Map view class capable of taking complex data and providing a simpler view of it. For a version that provides "set" functionality, see SettableTranslationMap. |
+ CGoRogue.MapViews.LambdaTranslationMap< T1, T2 > | A simple TranslationMap implementation that allows you to provide a lambda for the translation function. For a version offering "set" functionality, see SettableLambdaTranslationMap. |
+ CGoRogue.MapViews.IMapViewExtensions | Extensions for the IMapView class that effectively act as methods with default implementations for them. |
+ ►CGoRogue.DiceNotation.IParser | Interface for a class that parses a string representing a dice expression into a IDiceExpression instance. |
+ CGoRogue.DiceNotation.Parser | Default class for parsing a string representing a dice expression into an IDiceExpression instance. |
+ ►CGoRogue.IReadOnlyDisjointSet | Basic read-only representation of a Disjoint set data structure. Assumes it is holding integers between 0 and size - 1. |
+ CGoRogue.DisjointSet | Basic representation of a Disjoint set data structure. Assumes it is holding integers between 0 and size - 1. |
+ CGoRogue.IReadOnlyLayeredSpatialMap< BaseObject > | |
+ ►CGoRogue.MapGeneration.IReadOnlyMapArea | Read-only interface for an arbitrarily-shaped area of the map. |
+ CGoRogue.MapGeneration.MapArea | Represents an arbitrarily-shaped area of a map. Stores and provides access to a list of each unique position considered connected. |
+ ►CGoRogue.IReadOnlyRadiusAreaProvider | Read-only interface of a RadiusAreaProvider. |
+ CGoRogue.RadiusAreaProvider | Class capable of getting all unique positions inside of a given radius and (optional) bounds. |
+ CGoRogue.MapViews.ISettableMapView< BaseObject > | |
+ ►CGoRogue.MapViews.ISettableMapView< T2 > | |
+ ►CGoRogue.MapViews.SettableTranslationMap< T1, T2 > | Settable map view class capable of taking complex data and providing a simpler view of it. For a version that provides only "get" functionality, see TranslationMap. |
+ CGoRogue.MapViews.LambdaSettableTranslationMap< T1, T2 > | A simple TranslationMap implementation that allows you to provide lambdas for the translation functions. For a version offering only "get" functionality, see LambdaTranslationMap. |
+ CGoRogue.ISpatialTuple< T > | Interface specifying return type for item-location pairs in a spatial map implementation. |
+ ►CGoRogue.DiceNotation.Terms.ITerm | Interface for an evaluatable term of a dice expression. |
+ CGoRogue.DiceNotation.Terms.AddTerm | Term representing the addition operator – adds two terms together. |
+ CGoRogue.DiceNotation.Terms.ConstantTerm | Base term – represents a numerical constant. |
+ CGoRogue.DiceNotation.Terms.DiceTerm | Represents a dice term, eg 1d4 or 2d6. |
+ CGoRogue.DiceNotation.Terms.DivideTerm | Term representing the division operator – divides the first term by the second. |
+ CGoRogue.DiceNotation.Terms.KeepTerm | Term represnting the keep operator – keeping only the n highest dice from a dice term. |
+ CGoRogue.DiceNotation.Terms.MultiplyTerm | Term representing the division operator – multiplies Term1 and Term2. |
+ CGoRogue.DiceNotation.Terms.SubtractTerm | Term representing the subtraction operator – subtracts the second term from the first. |
+ ►CGoRogue.MapGeneration.Connectors.ITunnelCreator | Interface for implementing an algorithm for creating a tunnel between two positions on a walkability map. |
+ CGoRogue.MapGeneration.Connectors.DirectLineTunnelCreator | Implements a tunnel creation algorithm that sets as walkable a direct line between the two points. In the case that MAHNATTAN distance is being used, the line is calculated via the Coord.CardinalPositionOnLine function. Otherwise, the line is calculated using Coord.PositionsOnLine (brensham's). |
+ CGoRogue.MapGeneration.Connectors.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). |
+ CGoRogue.LayeredSpatialMap< BaseObject > | |
+ CGoRogue.LayerMasker | Allows convenient interpretation and creation of layer masks (bit-masks) mask layers represented by integers [0-NumberOfLayers - 1]. |
+ CGoRogue.Lines | Provides implementations of various (line-drawing) algorithms for generating points closest to a line between two points on a grid. |
+ CGoRogue.MapGeneration.MapAreaFinder | Class designed to calculate and produce a list of MapAreas representing each unique connected area of the map. |
+ CGoRogue.MathHelpers | Static class consisting of mathematical "helper" functions and constants – things like angle unit conversions, and other helpful functions. |
+ CGoRogue.MapGeneration.Generators.MazeGenerator | Generates a maze, and adds it to the given map. |
+ CGoRogue.MapGeneration.Connectors.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 MapAreas. |
+ CGoRogue.Pathing.Path | Encapsulates a path as returned by pathfinding algorithms like AStar. |
+ CGoRogue.MapGeneration.QuickGenerators | Collection of algorithms that put map generation pieces together, in ways that allow you to quickly and easily generate a given type of map in a single function call. The implementation of these functions may also be used as the basis for implementing more customized generation processes. |
+ CGoRogue.Radius | Class representing different radius types. Similar in architecture to Coord in architecture – it cannot be instantiated. Instead it simply has pre-allocated static variables for each type of radius, that should be used whenever a variable of type Radius is required. |
+ CGoRogue.MapGeneration.Connectors.RoomDoorConnector | Opens up room walls to connect tunnels that are placed near rooms. |
+ CGoRogue.MapGeneration.Generators.RoomsGenerator | Carves out non-overlapping rooms in a map. Rooms generated will not overlap with themselves, or any existing open areas on the given map. Rooms will not be connected – for automatic connection of rooms generated by this generator, see GoRogue.MapGeneration.QuickGenerator.GenerateDungeonMazeMap(). |
+ CGoRogue.SenseMapping.SenseSource | Represents a source location to be used in a SenseMap. One would typically create these and call SenseMap.AddSenseSource with them, and perhaps retain a reference for the sake of moving it around or toggling it on-off. The player might have one of these that follows it around if SenseMap is being used as a lighting map, for instance. Note that changing values such as Position and Radius after the source is created is possible, however changes will not be reflected in any SenseSources using this source until their next Calculate call. |
+ CGoRogue.Random.SingletonRandom | Static class that contains 1 variable, which is a DefaultRNG instance. Used as the default rng by other features (dice, etc) wherever needed, and can also be used if you need a random number generator for your own code. |
+ CGoRogue.Utility | Static class full of miscellaneous helper methods. |