ClassicCityBuilderKit 1.9.1
|
structure that removes terrain detail using a TerrainModifier
this structure is very special in that it does not have any concrete points
GetPoints will return nothing but HasPoint(Vector2Int) will always return true
since it is a decorator it will not block building but because of its special setup it will always be told to remove points when something is built
Public Member Functions | |
string | GetName () |
retrieves the name of the structure for display in the UI | |
IEnumerable< Vector2Int > | GetPoints () |
retrieves all the points the structure occupies | |
bool | HasPoint (Vector2Int point) |
checks if the structure occupies a certain point | |
void | Add (IEnumerable< Vector2Int > points) |
adds points to a structure, for example a tree to a tree structure collection this may not be possible for structures with fixed points like buildings typically called in a structures Start method | |
void | Remove (IEnumerable< Vector2Int > points) |
removes points from the structure, for some structures like buildings removing any point will remove the whole thing typically called in a structures OnDestroy method | |
Public Attributes | |
string | Name |
TerrainModifier | TerrainModifier |
int | Index = -1 |
StructureLevelMask | Level |
![]() | |
string | Key |
Properties | |
StructureReference | StructureReference [get, set] |
reference to the structure that keeps working even if the structure is replaced | |
![]() | |
![]() |
Events | |
Action< PointsChanged< IStructure > > | PointsChanged |
![]() | |
Action< PointsChanged< IStructure > > | PointsChanged |
has to be fired when a structures points changed so the manager can readjust paths only viable for structures that are stored in list form like underlying, collections and tiles other structures have to be reregistered | |
Additional Inherited Members | |
![]() | |
static void | ReplacePoints (IStructure a, IStructure b, Vector2Int point, bool keepRandomization=true, bool keepVariant=true) |
removes a point from one structure and adds it to another while trying to carry over its look both structures need to be StructureCollectionFloat, StructureTerrainTrees or StructureTerrainTreeVariants) | |
static void | ReplacePoints (IStructure a, IStructure b, IEnumerable< Vector2Int > points, bool keepRandomization=true, bool keepVariant=true) |
removes points from one structure and adds them to another while trying to carry over its look both structures need to be StructureCollectionFloat, StructureTerrainTrees or StructureTerrainTreeVariants) used in town so bushes keep their look(size, rotation, color) when berries grown on them would also carry the variant index for trees in town if there were any | |
|
inline |
adds points to a structure, for example a tree to a tree structure collection
this may not be possible for structures with fixed points like buildings
typically called in a structures Start method
points | the points that will be added to the structure |
Implements CityBuilderCore.IStructure.
string CityBuilderCore.StructureTerrainDetails.GetName | ( | ) |
retrieves the name of the structure for display in the UI
Implements CityBuilderCore.IStructure.
IEnumerable< Vector2Int > CityBuilderCore.StructureTerrainDetails.GetPoints | ( | ) |
retrieves all the points the structure occupies
Implements CityBuilderCore.IStructure.
bool CityBuilderCore.StructureTerrainDetails.HasPoint | ( | Vector2Int | point | ) |
checks if the structure occupies a certain point
point | a point on the map |
Implements CityBuilderCore.IStructure.
|
inline |
removes points from the structure, for some structures like buildings removing any point will remove the whole thing
typically called in a structures OnDestroy method
points | the points to remove |
Implements CityBuilderCore.IStructure.
|
getset |
reference to the structure that keeps working even if the structure is replaced
Implements CityBuilderCore.IStructure.