Loading...
Searching...
No Matches
CityBuilderCore.StructureDecorators Class Reference

Detailed Description

structure made up of different decorators, used for random map objects that will be removed when something is built in their place
the prefab that will be used for when the game is loaded is determined by the gameobjects name so this should at least start with the prefab name

https://citybuilder.softleitner.com/manual/structures

Inheritance diagram for CityBuilderCore.StructureDecorators:
CityBuilderCore.KeyedBehaviour CityBuilderCore.IStructure CityBuilderCore.IKeyed CityBuilderCore.IKeyed

Classes

class  StructureDecoratorData
 
class  StructureDecoratorsData
 

Public Member Functions

IEnumerable< Vector2Int > GetChildPoints (IGridPositions positions)
 
IEnumerable< Vector2Int > GetPoints ()
 retrieves all the points the structure occupies
 
bool HasPoint (Vector2Int position)
 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
 
void Clear ()
 
string GetName ()
 retrieves the name of the structure for display in the UI
 
StructureDecoratorsData SaveData ()
 
void LoadData (StructureDecoratorsData data)
 

Public Attributes

StructureLevelMask Level
 
GameObject[] Prefabs
 
- Public Attributes inherited from CityBuilderCore.KeyedBehaviour
string Key
 

Properties

StructureReference StructureReference [get, set]
 reference to the structure that keeps working even if the structure is replaced
 
- Properties inherited from CityBuilderCore.IKeyed
- Properties inherited from CityBuilderCore.IStructure

Events

Action< PointsChanged< IStructure > > PointsChanged
 
- Events inherited from CityBuilderCore.IStructure
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
 

Member Function Documentation

◆ Add()

void CityBuilderCore.StructureDecorators.Add ( IEnumerable< Vector2Int > points)
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

Parameters
pointsthe points that will be added to the structure

Implements CityBuilderCore.IStructure.

◆ GetName()

string CityBuilderCore.StructureDecorators.GetName ( )

retrieves the name of the structure for display in the UI

Returns
name of the structure for UI

Implements CityBuilderCore.IStructure.

◆ GetPoints()

IEnumerable< Vector2Int > CityBuilderCore.StructureDecorators.GetPoints ( )

retrieves all the points the structure occupies

Returns
the points the structure occupies

Implements CityBuilderCore.IStructure.

◆ HasPoint()

bool CityBuilderCore.StructureDecorators.HasPoint ( Vector2Int point)

checks if the structure occupies a certain point

Parameters
pointa point on the map
Returns
true if the structure occupies that point

Implements CityBuilderCore.IStructure.

◆ Remove()

void CityBuilderCore.StructureDecorators.Remove ( IEnumerable< Vector2Int > points)
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

Parameters
pointsthe points to remove

Implements CityBuilderCore.IStructure.

Property Documentation

◆ StructureReference

StructureReference CityBuilderCore.StructureDecorators.StructureReference
getset

reference to the structure that keeps working even if the structure is replaced

Implements CityBuilderCore.IStructure.