Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456]
 CCityBuilderCore.AttackableComponent.AttackebleData
 CCityBuilderCore.AttackWalker.AttackWalkerData
 CCityBuilderCore.AudioPool.AudioPoolEntry
 CCityBuilderCore.AudioPool.AudioPoolValue
 CCityBuilderCore.BlockingTileHelper class that combines a tile with a structure level
used in DefaultMap to express which tiles block the placement of certain building levels
for example a lava tile could block all building levels, mountain tiles could allow structures below ground
basically this can be used as an additional building requirement that applies to all buildings
 CCityBuilderCore.Building.BuildingAddonMetaData
 CCityBuilderCore.Building.BuildingComponentMetaData
 CCityBuilderCore.BuildingComponentPath< T >Convenient class combining a component and a path to get there
for example when a delivery walker is looking for a storage the receiverpathfinder decides on the receiver and returns a BuildingComponentPath<IItemReceiver>
 CCityBuilderCore.BuildingComponentPathQuery< T >Query that eventually produces a BuildingComponentPath<T>
for example in paths leading to item givers or receivers enables distribution of path calculations across frames
 CCityBuilderCore.BuildingComponentPathQuery< IItemGiver >
 CCityBuilderCore.BuildingComponentPathQuery< IItemReceiver >
 CCityBuilderCore.BuildingComponentReference< T >Reference to a building component that will keep working even when the building gets replaced
it can also be saved to keep building component referenes alive across save/load
should always be used when a reference to a building component is stored in some way
 CCityBuilderCore.BuildingComponentReference< CityBuilderCore.IAttackable >
 CCityBuilderCore.BuildingComponentReference< CityBuilderCore.IHousing >
 CCityBuilderCore.BuildingComponentReference< CityBuilderCore.IItemGiver >
 CCityBuilderCore.BuildingComponentReference< CityBuilderCore.IItemReceiver >
 CCityBuilderCore.BuildingComponentReference< CityBuilderManual.Custom.ICustomBuildingTrait >
 CCityBuilderCore.BuildingComponentReference< CityBuilderTown.TownHomeComponent >
 CCityBuilderCore.BuildingComponentReference< CityBuilderUrban.ShopComponent >
 CCityBuilderCore.BuildingComponentReference< IItemGiver >
 CCityBuilderCore.BuildingComponentReferenceData
 CCityBuilderCore.BuildingComponentWalker< ICustomBuildingComponent >
 CCityBuilderCore.BuildingComponentWalker< IGenerationComponent >
 CCityBuilderCore.BuildingComponentWalker< IHousing >
 CCityBuilderCore.BuildingComponentWalker< IItemRecipient >
 CCityBuilderCore.BuildingComponentWalker< IRiskRecipient >
 CCityBuilderCore.BuildingComponentWalker< IServiceRecipient >
 CCityBuilderCore.BuildingComponentWalker< ShopComponent >
 CCityBuilderCore.Building.BuildingData
 CCityBuilderCore.BuildingEvaluationHelper for scores that combines a building with a value
used to define how much value a building type carries in coverage or average building scores
 CCityBuilderCore.DefaultBuildingManager.BuildingMetaData
 CCityBuilderCore.BuildingReferenceReference to a building that is reset when a building gets replaced
never assign buildings directly when there is any chance they might be replaced
 CCityBuilderCore.BuildingRequirementClass that expresses what is needed for a building to be placed, used in the regular BuildingInfo
Mode, Points and Count specify which or how many points of the building are checked
the rest of the fields are the things that those points will be checked against
 CCityBuilderCore.BuildingRotationFacade for an integer from 0 to 3 describing the 4 possible directions for a building
used for transforming points in and out of building rotation(keeps building origin the same while rotating size and visuals)
 CCityBuilderCore.DefaultBuildingManager.BuildingsData
 CCityBuilderCore.BuildingValueBarsHelper for DefaultBuildingManager that manages building bars
 CCityBuilderCore.CollectionComponent.CollectionData
 CCityBuilderCore.ConnectionPointHelper used by ConnectionGrid to hold the value and passer of a point in the connection grid
 CCityBuilderCore.SaveHelper.ContinueData
 CCityBuilderCore.CoroutineTokenWrapper around coroutines that allows monitoring its activity and stopping it easily
 CCityBuilderManual.Custom.CustomBuildingComponent.CustomComponentData
 CCityBuilderManual.Custom.CustomDestinationWalker.CustomDestinationWalkerData
 CCityBuilderManual.Custom.CustomBuildingTrait.CustomTraitData
 CCityBuilderCore.CyclicWalkerSpawner< AttackWalker >
 CCityBuilderCore.CyclicWalkerSpawner< CollectionWalker >
 CCityBuilderCore.CyclicWalkerSpawner< CustomDestinationWalker >
 CCityBuilderCore.CyclicWalkerSpawner< CustomRoamingWalker >
 CCityBuilderCore.CyclicWalkerSpawner< DeliveryWalker >
 CCityBuilderCore.CyclicWalkerSpawner< EmigrationWalker >
 CCityBuilderCore.CyclicWalkerSpawner< EmploymentWalker >
 CCityBuilderCore.CyclicWalkerSpawner< HomelessWalker >
 CCityBuilderCore.CyclicWalkerSpawner< ImmigrationWalker >
 CCityBuilderCore.CyclicWalkerSpawner< ItemsRetrieverWalker >
 CCityBuilderCore.CyclicWalkerSpawner< PickupWalker >
 CCityBuilderCore.CyclicWalkerSpawner< PurchaseWalker >
 CCityBuilderCore.CyclicWalkerSpawner< RiskWalker >
 CCityBuilderCore.CyclicWalkerSpawner< RoamingWalker >
 CCityBuilderCore.CyclicWalkerSpawner< SaleWalker >
 CCityBuilderCore.CyclicWalkerSpawner< ServiceWalker >
 CCityBuilderCore.CyclicWalkerSpawner< StorageWalker >
 CCityBuilderCore.CyclicWalkerSpawner< TrainWalker >
 CCityBuilderCore.CyclicWalkerSpawner< VanWalker >
 CCityBuilderCore.CyclicWalkerSpawner< WanderingWalker >
 CCityBuilderCore.CyclicWalkerSpawner< WorkerWalker >
 CCityBuilderCore.CyclicWalkerSpawnerData
 CCityBuilderCore.CyclicWorkerProviderComponent.CyclicWorkerProviderData
 CCityBuilderCore.DefenderAreaComponent.DefenderAreaData
 CCityBuilderCore.DefenderComponent.DefenderData
 CCityBuilderDefense.DefenseStage
 CCityBuilderCore.DeliveryWalker.DeliveryWalkerData
 CCityBuilderCore.DiseaseAddon.DiseaseData
 CCityBuilderCore.DistributionComponent.DistributionData
 CCityBuilderCore.DistributionOrderHelper for DistributionComponent that combines an item with a ratio
 CUnityEditor.Editor
 CEditorWindow
 CCityBuilderCore.DefaultPopulationManager.EmploymentData
 CCityBuilderCore.DefaultPopulationManager.EmploymentGroupData
 CCityBuilderCore.EmploymentGroupPopulationContainer that distributes employees within an EmploymentGroup and CityBuilderCore.Population
 CCityBuilderCore.EmploymentPopulationContainer that distributes employees within a CityBuilderCore.Population
 CCityBuilderCore.EmploymentWalkerComponent.EmploymentWalkerData
 CCityBuilderCore.EvolutionComponent.EvolutionData
 CCityBuilderCore.EvolutionStage
 CCityBuilderCore.DefaultGameManager.ExtraSaveData
 CCityBuilderCore.FireAddon.FireData
 CCityBuilderCore.FireWalker.FireWalkerData
 CCityBuilderCore.GenerationComponent.GenerationData
 CCityBuilderCore.ObjectGenerator.GeneratorObject
 CCityBuilderCore.GridLinksHelper used to keep track of IGridLink so they can be quickly retrieved by their position
 CCityBuilderCore.GridPathfindingSettings
 CCityBuilderCore.HomelessWalker.HomelessWalkerData
 CCityBuilderCore.HousingComponent.HousingData
 CCityBuilderCore.HousingPlaceholderComponent.HousingPlaceholderData
 CCityBuilderCore.IAttackerInterface for any entity that attacks IAttackables and is fended of by DefenderComponents
 CCityBuilderCore.IAttackManagerManages attack system
 CCityBuilderCore.IBarManagerResponsible for adding adding and removing visuals for building and walker values
 CCityBuilderCore.IBuildingManagerComponent that tracks all the buildings in the game
 CCityBuilderCore.IBuildingTrait< IAttackable >
 CCityBuilderCore.IBuildingTrait< ICustomBuildingTrait >
 CCityBuilderCore.IBuildingTrait< IHousing >
 CCityBuilderCore.IBuildingTrait< IItemGiver >
 CCityBuilderCore.IBuildingTrait< IItemReceiver >
 CCityBuilderCore.IBuildingTrait< IStorageComponent >
 CCityBuilderCore.IBuildingTrait< IWorkerUser >
 CCityBuilderCore.IBuildingTrait< ShopComponent >
 CCityBuilderCore.IBuildingTrait< TownHomeComponent >
 CCityBuilderCore.IBuildingValueAny kind of value a building might have(risks, services, items, ...)
 CCityBuilderCore.IConnectionManagerHandles connections and their values
 CCityBuilderCore.IConnectionPasserAny object that lets a connection pass through its points
gets notified when any of the values at those points change
 CCityBuilderManual.Custom.ICustomManager
 CCityBuilderCore.IDifficultyFactorSomething influencing difficulty, multiple factors are multiplied
 CIDragHandler
 CCityBuilderCore.IEfficiencyFactorPut this interface on any building part that needs to affect the buildings efficiency
 CCityBuilderCore.IEmploymentManagerManages the employment system
 CCityBuilderCore.IGameSaverInterface for the class that handles the games saving and loading
 CCityBuilderCore.IGameSettings
 CCityBuilderCore.IGameSpeed
 CCityBuilderCore.IGiverPathfinderCalculates the best path for getting a needed item
 CCityBuilderCore.IGlobalStorageGlobal storage for items
used for building costs
filled by buildings with ItemStorageMode.Global
 CCityBuilderCore.IGridHeightsOptional interface that adjusts the height of entities on the map
the DefaultMapHeight implementation does this by moving them up and down which makes sense for 3d games
2d games can ignore this entirely or perhaps add an implementation that scales entities a little bit
 CCityBuilderCore.IGridLinkLinks two points on the map or a road network
registered with a IGridLinker so it can be found and added to pathfinding
when a walker actually moves across it control is handed to the link
 CCityBuilderCore.IGridLinkerCommon interface for objects that handle grid links
made for convenience so road and map linking is interchangable
 CCityBuilderCore.IGridOverlayDisplays grid lines overlaying the map
 CCityBuilderCore.IGridPositionsTransforms between grid and world positions
 CCityBuilderCore.IGridRotationsRotates transforms, 3d implementations might rotate 360° while isometric games may only mirror
 CCityBuilderCore.IHealtherAny object that has health wich should be displayed
 CCityBuilderCore.IHighlightManagerHighlights tiles as valid, invalid or just as info
primarily used by building tools
 CCityBuilderCore.IItemContainerInterface for classes that hold and manage items, the most common implementation is ItemStorage
SplitItemContainer and MultiItemContainer were created so components with more than one storage can act the same as if they only had one
 CCityBuilderCore.IItemOwnerAny component that has items in an IItemContainer
 CCityBuilderCore.IItemsDispenserDispenses items to items retrievers
(eg map resources like trees that dispense wood, animals that dispense meat, ...)
 CCityBuilderCore.IItemsDispenserManagerKeeps track of all the IItemsDispenser and calculates the dispenser a retriever goes for
 CIJob
 CCityBuilderCore.IKeyedObject that can be uniquely identified by a string key
it can then be retrieved from IKeyedSet<T> by its key
 CCityBuilderCore.ILayerAffectorObject affecting the layer values, is registered with ILayerManager
 CCityBuilderCore.ILayerDependencyCan be put on structures or building parts to get notified when a layer it is on changes
for example housing or roads that evolve when the area is nice enough
 CCityBuilderCore.ILayerManagerHandles layer values, may have some built in way to establish base values
ILayerAffector that only affect some points and ILayerModifier that affect a layer globally are registered with it
combining base values, affectors and modifiers it can provide the layer value for every point on the map
the value can be manually requested or automatically delivered when structures or building parts are marked as ILayerDependency
 CCityBuilderCore.ILayerModifierGlobal modifier affecting an entire layer regardless of position, is registered with ILayerManager
for example a heat wave or simply the season may raise a heat layer that makes fires more likely
 CCityBuilderCore.IMainCameraInterface used to give acccess to various main camera related things through the dependency system
for example bars that display icons(BuildingItemsBar) have to align the icon with the main cam
 CCityBuilderCore.IMapBasic map functionality like map size and buildability
 CCityBuilderCore.IMissionManager
 CCityBuilderCore.ImmigrationWalker.ImmigrationWalkerData
 CCityBuilderCore.IMouseInputAccess to the current location of the players pointer
 CCityBuilderCore.INotificationManagerShows notification texts to players
 CCityBuilderCore.IObjectPool
 CCityBuilderCore.IObjectSet< T >
 CCityBuilderCore.IOverlayManagerOverlays the tilemap with coloured tiles that visualize Layer, Connection or Efficiency values
eg desirable areas are green, undesirable areas are red
 CCityBuilderCore.IOverrideHeightInterface for entities that can have their height overridden(walkers)
typically this is set for obstacles that are not known to the map
for example in THREE to override the height of walkers when they walk over bridges
 CCityBuilderCore.IPathfinderPathfinders calculate a path between points using different methods
there is a sub-interface for every PathType, this is done so a particular pathfinder can be requested from Dependencies
 CIPointerClickHandler
 CIPointerDownHandler
 CIPointerEnterHandler
 CIPointerExitHandler
 CCityBuilderCore.IPopulationManagerManages the population and housing system
 CCityBuilderCore.IReceiverPathfinderCalculates the best path for depositing an item(eg items produced in production)
 CCityBuilderCore.ISaveDataInterface for all kinds of components that contain state that needs saving
 CCityBuilderCore.IScoreModifierModifier applied to the result of a score, is registered with IScoresCalculator
 CCityBuilderCore.IScoresCalculatorCentral repository that calculates and buffers score values
this is expecially important for performance heavy scores that should not be calculated multiple times every frame
 CISerializationCallbackReceiver
 CCityBuilderCore.ItemCategoryQuantityConvenience container that combines an ItemCategory with a quantity
 CCityBuilderCore.ItemCategoryRecipientReceives any item of a specified category and uses it up over time
items are used in the order that they have in the category
 CCityBuilderCore.ItemCategoryRequirementHelper used in EvolutionStage to set that a certain amount of an item category is needed to evolve
for example housing might need 3 types of food and 2 types of luxury items to evolve
 CCityBuilderTown.ItemConstructionComponent.ItemConstructionData
 CCityBuilderCore.ItemConsumerSimple container that can check for an item quantity and remove it from a storage
eg raw materials in production components
 CCityBuilderCore.ItemLevelConvenience container that combines an item with a quantity and a capacity
can be used to represent how filled something is with an item
 CCityBuilderCore.ItemLevel.ItemLevelData
 CCityBuilderCore.ItemProducerSimple container that can check if an item quantity fits and adds it to a storage
eg finished goods in production components
 CCityBuilderCore.ItemQuantityConvenience container that combines an item with a quantity
 CCityBuilderCore.ItemQuantity.ItemQuantityData
 CCityBuilderCore.ItemRecipientReceives a specific item and uses it up over time
 CCityBuilderCore.ItemCategoryRecipient.ItemsCategoryRecipientData
 CCityBuilderCore.ItemEfficiencyComponent.ItemsEfficiencyData
 CCityBuilderCore.ItemRecipient.ItemsRecipientData
 CCityBuilderCore.ItemsRetrieverComponent.ItemsRetrieverData
 CCityBuilderCore.ItemsRetrieverWalker.ItemsRetrieverWalkerData
 CCityBuilderCore.ItemStackSub container for item 'slots' for storages in ItemStorageMode.Stacked
a stacked storage can define a number of stacks
each stack can only contain one type of item
makes for some nicely visualized storages
 CCityBuilderCore.ItemStack.ItemStackData
 CCityBuilderCore.ItemStorage.ItemStorageData
 CCityBuilderCore.Tests.ItemStorageTesting
 CCityBuilderCore.IToolsManagerManages the tool activation and tool cost
 CCityBuilderCore.ITooltipManagerManages displaying tooltips in the UI
 CCityBuilderCore.ITooltipOwnerAny object that has a tooltip
 CCityBuilderCore.IViewsManagerManages the active View
 CCityBuilderCore.IWalkerManagerKeeps track of all the active walkers in the game
 CCityBuilderCore.IWalkerValueAny kind of value a walker might have(items, ...)
 CCityBuilderCore.IWorkplaceFinderFinds the optimal workplace for any given worker and provide it with a path to work and supply if necessary
 CCityBuilderCore.KeyedSet< BuildingAddon >
 CCityBuilderCore.KeyedSet< BuildingInfo >
 CCityBuilderCore.KeyedSet< Difficulty >
 CCityBuilderCore.KeyedSet< EmploymentGroup >
 CCityBuilderCore.KeyedSet< Item >
 CCityBuilderCore.KeyedSet< Mission >
 CCityBuilderCore.KeyedSet< Population >
 CCityBuilderCore.KeyedSet< Road >
 CCityBuilderCore.KeyedSet< TownJob >
 CCityBuilderCore.KeyedSet< TownTask >
 CCityBuilderCore.KeyedSet< WalkerAddon >
 CCityBuilderCore.LayerAffectorTileDefines a layer value and falloff for a tile on a tilemap
is used by DefaultLayerManager to establish the base layer values
 CCityBuilderCore.LayerMapHeight.LayerHeight
 CCityBuilderCore.LayerKeyExplanation of the computed layer value at a point (Base+Affectors=Total)
can be obtained for any point on the map by calling ILayerManager.GetKey(Layer, UnityEngine.Vector2Int)
 CCityBuilderCore.LayerPositionHelper for LayerValues that holds the current value of a point and all the affectors that affect it
 CCityBuilderCore.LayerRequirementDefines a valid range for a layer value
used in BuildingRequirement to check if a building can be built on a point
used by EvolutionStage and RoadStage to check an evolution
 CCityBuilderCore.LayerValues
 CCityBuilderCore.LazyDependency< T >
 CCityBuilderCore.LazyDependency< CityBuilderCore.IBuildingManager >
 CCityBuilderCore.LazyDependency< CityBuilderCore.IGameSaver >
 CCityBuilderCore.LazyDependency< CityBuilderCore.IGridPositions >
 CCityBuilderCore.LazyDependency< CityBuilderCore.ILayerManager >
 CCityBuilderCore.LazyDependency< CityBuilderCore.IMap >
 CCityBuilderCore.LazyDependency< CityBuilderCore.IStructureManager >
 CCityBuilderCore.ManualWalkerSpawner< AttackWalker >
 CCityBuilderCore.ManualWalkerSpawner< CollectionWalker >
 CCityBuilderCore.ManualWalkerSpawner< CustomDestinationWalker >
 CCityBuilderCore.ManualWalkerSpawner< CustomRoamingWalker >
 CCityBuilderCore.ManualWalkerSpawner< DeliveryWalker >
 CCityBuilderCore.ManualWalkerSpawner< EmigrationWalker >
 CCityBuilderCore.ManualWalkerSpawner< EmploymentWalker >
 CCityBuilderCore.ManualWalkerSpawner< HomelessWalker >
 CCityBuilderCore.ManualWalkerSpawner< ImmigrationWalker >
 CCityBuilderCore.ManualWalkerSpawner< ItemsRetrieverWalker >
 CCityBuilderCore.ManualWalkerSpawner< PurchaseWalker >
 CCityBuilderCore.ManualWalkerSpawner< RiskWalker >
 CCityBuilderCore.ManualWalkerSpawner< RoamingWalker >
 CCityBuilderCore.ManualWalkerSpawner< SaleWalker >
 CCityBuilderCore.ManualWalkerSpawner< ServiceWalker >
 CCityBuilderCore.ManualWalkerSpawner< StorageWalker >
 CCityBuilderCore.ManualWalkerSpawner< TornadoWalker >
 CCityBuilderCore.ManualWalkerSpawner< TownWalker >
 CCityBuilderCore.ManualWalkerSpawner< TruckWalker >
 CCityBuilderCore.ManualWalkerSpawner< WanderingWalker >
 CCityBuilderCore.ManualWalkerSpawner< WorkerWalker >
 CCityBuilderCore.ManualWalkerSpawnerData
 CCityBuilderCore.Tests.MapBaseTesting
 CCityBuilderCore.MessageEventSerializable utility class that combines a message with an event
useful for defining actions for particular messages directly in the inspector
for example playing a sound or showing some particles when a weapon is swung
 CCityBuilderCore.Migration.MigrationData
 CCityBuilderCore.MissionParametersAll parameters needed to start a scene
additionally to the Mission which contains what to start this defines how it is started
 CMonoBehaviour
 CCityBuilderCore.MonumentSiteComponent.MonumentSiteData
 CCityBuilderCore.MonumentStageOne stage of the building process of a monument
 CCityBuilderCore.MonumentStepSingle step of building within a MonumentStage
 CCityBuilderCore.MonumentStep.MonumentStepData
 CCityBuilderCore.RoadManagerBaseMulti.MultiRoadsData
 CCityBuilderCore.MultiRoadManager.NetworkHelper that combines a road with the tilemap it is visualized on
 CCityBuilderCore.NotificationRequestRequest sent to the INotificationManager to request that a notification gets displayed
 CCityBuilderCore.ObjectSet< Score >
 CCityBuilderCore.ObjectSet< WalkerInfo >
 CCityBuilderCore.GridPathfindingBurst.FindPathJob.PathNode
 CCityBuilderCore.PathQueryQuery that eventually produces a WalkingPath
enables distribution of path calculations across frames
 CCityBuilderUrban.PickupWalker.PickupWalkerData
 CCityBuilderCore.PointsChanged< T >
 CCityBuilderCore.PooledWalkerSeatHelper class for PooledWalkerSpawner<T> that holds the cooldown for each individual walker
 CCityBuilderCore.PooledWalkerSeat.PooledWalkerSeatData
 CCityBuilderCore.PooledWalkerSpawner< AttackWalker >
 CCityBuilderCore.PooledWalkerSpawner< CollectionWalker >
 CCityBuilderCore.PooledWalkerSpawner< CustomDestinationWalker >
 CCityBuilderCore.PooledWalkerSpawner< CustomRoamingWalker >
 CCityBuilderCore.PooledWalkerSpawner< DeliveryWalker >
 CCityBuilderCore.PooledWalkerSpawner< EmigrationWalker >
 CCityBuilderCore.PooledWalkerSpawner< EmploymentWalker >
 CCityBuilderCore.PooledWalkerSpawner< HomelessWalker >
 CCityBuilderCore.PooledWalkerSpawner< ImmigrationWalker >
 CCityBuilderCore.PooledWalkerSpawner< ItemsRetrieverWalker >
 CCityBuilderCore.PooledWalkerSpawner< PurchaseWalker >
 CCityBuilderCore.PooledWalkerSpawner< RiskWalker >
 CCityBuilderCore.PooledWalkerSpawner< RoamingWalker >
 CCityBuilderCore.PooledWalkerSpawner< SaleWalker >
 CCityBuilderCore.PooledWalkerSpawner< ServiceWalker >
 CCityBuilderCore.PooledWalkerSpawner< StorageWalker >
 CCityBuilderCore.PooledWalkerSpawner< WanderingWalker >
 CCityBuilderCore.PooledWalkerSpawner< WorkerWalker >
 CCityBuilderCore.PooledWalkerSpawnerData
 CCityBuilderCore.PooledWorkerProviderComponent.PooledWorkerProviderData
 CCityBuilderCore.DefaultPopulationManager.PopulationData
 CCityBuilderCore.PopulationEmploymentHelper that EmploymentComponent uses to define which populations and employment groups it used and how many
 CCityBuilderCore.PopulationHousingHelper for HousingComponent that specifies the capacity of a certain population the housing can hold
used during runtime to store the currently present and reserved quantities
 CCityBuilderCore.PopulationHousing.PopulationHousingData
 CCityBuilderCore.Tests.PositionTesting
 CCityBuilderCore.ProcessState.ProcessData
 CCityBuilderCore.ProcessStateHelper class for Walker that holds the current status of a running process
a process is a series of WalkerActions that is usually started from within the walker
ProcessState takes care of tracking the currently active action as well as advancing to the next one or canceling the process
Walker.StartProcess(WalkerAction[], string) starts a new process, when a walker is loaded use Walker.continueProcess
a process can be canceled by Walker.CancelProcess which may not end the process immediately but rather when the walker is in an ok state next
 CCityBuilderCore.ProductionComponent.ProductionData
 CCityBuilderCore.ProgressThresholdHelper for ProgressThresholdVisualizer that combines a threshold value with the gameobject that threshold will activate
 CPropertyAttribute
 CPropertyDrawer
 CCityBuilderCore.PurchaseWalker.PurchaseWalkerData
 CCityBuilderUrban.HouseComponent.RailwayData
 CCityBuilderUrban.RailwayComponent.RailwayData
 CCityBuilderCore.ReloadingItemsDispenser.ReloadingData
 CCityBuilderCore.RiskerComponent.RiskerData
 CCityBuilderCore.RiskRecipientHolds the value for a risk and increases it over time
 CCityBuilderCore.RiskRecipient.RiskRecipientData
 CCityBuilderCore.RiskWalkerComponent.RiskWalkerData
 CCityBuilderCore.ServiceWalkerComponent.RiskWalkerData
 CCityBuilderCore.WalkerComponent.RiskWalkerData
 CCityBuilderCore.RoadNetwork.RoadData
 CCityBuilderCore.RoadRequirementRequirement that specifies a point and some parameters a road at that point has to match
both Road and Stage if any kind of road is ok
currently only used as a requirement for buildings(BuildingInfo.RoadRequirements)
for example in the stages and bridges in THREE
 CCityBuilderCore.RoadNetwork.RoadsData
 CCityBuilderCore.RoadStageHelper class for Road which combines a layer requirement with road visuals
this is useful for roads that may change appearance whensome layer requirement is met(THREE demo)
if no such behaviour is needed just add a single stage and leave the requirement empty
 CCityBuilderCore.RoamingState.RoamingData
 CCityBuilderCore.RoamingStateHelper class for Walker that hold the current status of its roaming
roaming is a special kind of randomly walking around which memorizes and avoids the points it has already been to
 CCityBuilderCore.RoamingWalker.RoamingWalkerData
 CRoamingWalkerData
 CCityBuilderCore.Tests.RotationTesting
 CCityBuilderUrban.UrbanManager.RunningCost
 CCityBuilderCore.DefaultGameManager.SaveData
 CCityBuilderCore.DefaultGameManager.SaveDataMeta
 CScriptableObject
 CCityBuilderCore.ServiceCategoryRecipientReceives any service of a specified category and uses it up over time
basically just automatically manages a ServiceRecipient for every active service
values are kept seperately, evolutions check how many different services of the category are currently available
 CCityBuilderCore.ServiceCategoryRecipient.ServiceCategoryRecipientData
 CCityBuilderCore.ServiceCategoryRequirementRequirement used in EvolutionStage to specify that a building needs access to a certain number of services in a category to evolve
for example a building may need access to 3 different temples and 2 type of entertainment to evolve
 CCityBuilderCore.ServiceEfficiencyComponent.ServiceEfficiencyData
 CCityBuilderCore.ServiceRecipientHolds the value for a service and decreases it over time
 CCityBuilderCore.ServiceRecipient.ServiceRecipientData
 CCityBuilderCore.Editor.SetupModel
 CCityBuilderUrban.ShopComponent.ShopData
 CCityBuilderCore.AttackSlowAddon.SlowData
 CCityBuilderCore.StateManager.StateEntry
 CCityBuilderCore.StateManager.StateOverride
 CCityBuilderCore.StorageComponent.StorageData
 CCityBuilderCore.StorageOrder
 CCityBuilderCore.StorageOrder.StorageOrderData
 CCityBuilderCore.StorageWalker.StorageWalkerData
 CCityBuilderCore.StorageWalkerComponent.StorageWalkerData
 CCityBuilderCore.StructureCollection.StructureCollectionData
 CCityBuilderCore.StructureDecorators.StructureDecoratorData
 CCityBuilderCore.StructureDecorators.StructureDecoratorsData
 CCityBuilderCore.StructureLevelManagerHelper used by DefaultStructureManager to store the structure references for one structure level
 CCityBuilderCore.StructureLevelMaskThese flags define which levels a structure occupies, 0 for all levels
a structure can occupy multiple levels, for example 5 would occupy level 1 and 3
structures can only exist on the same point if they occupy different levels
 CCityBuilderCore.StructurePathManagerManages one variant of structure pathing(there is only more than one if there are StructurePathOptions)
used by StructurePaths which manages the structure pathing for DefaultStructureManager
 CCityBuilderCore.StructurePathOption
 CCityBuilderCore.StructureReferenceHolds a reference to a structure which may be replaced(for example buildings being replaced when they evolve)
therefore if a structure is replaced by some other equivalent structure references that other entities have on it dont break
 CCityBuilderCore.DefaultStructureManager.StructuresData
 CCityBuilderCore.TilemapSpawner.StructureSpawnerData
 CCityBuilderCore.TilemapSpawner.StructureSpawnerInstanceData
 CCityBuilderCore.StructureTiles.StructureTilesData
 CCityBuilderCore.RoadBlockerComponent.TaggedBlockerData
 CCityBuilderCore.TerrainMap.TaggedLimit
 CCityBuilderCore.DefaultMap.TaggedTiles
 CCityBuilderCore.TaskList.TaskListData
 CCityBuilderCore.TerrainModifier.TerrainModifierData
 CCityBuilderCore.TerrainModifier.TerrainModifierTree
 CCityBuilderCore.Tests.TestingBase
 CCityBuilderCore.ThresholdScore.ThresholdItem
 CTileBase
 CCityBuilderCore.ObjectGenerator.TilemapTile
 CCityBuilderCore.TimingConditionUsed to describe a timeframe in game time using a timing unit
for example a condition with Unit:Day and Number:3 will be active on the 3rd day every month
can be combined in TimingHappeningOccurence to define when a happening is active
 CCityBuilderCore.TimingHappeningOccurenceHelper used to specify when a happening occurs
condition of the same unit are ORed, conditions of different units are ANDed
eg Day:2|Day:3|Month:4 will occur on the 2nd and 3rd day of every 4th month
 CCityBuilderCore.TimingHappeningStateHelper class that keeps track of the state of happenings and correctly calls their lifetime methods
 CCityBuilderCore.Tests.TimingTesting
 CCityBuilderTown.TownHomeComponent.TomeHomeData
 CCityBuilderTown.TownBuildTask.TownBuildTaskData
 CCityBuilderTown.TownDistributionTask.TownBuildTaskData
 CCityBuilderTown.TownConstructionComponent.TownConstructionData
 CCityBuilderTown.TownFarmingComponent.TownFarmingData
 CCityBuilderTown.TownGatheringComponent.TownFarmingData
 CCityBuilderTown.TownFieldTask.TownFieldData
 CCityBuilderTown.TownForestingComponent.TownForestingData
 CCityBuilderTown.TownHarvestTask.TownHarvestTaskData
 CCityBuilderTown.TownIdentityHolds the "personality" of a TownWalker, randomly generated when a walker spawns
 CCityBuilderTown.TownManager.TownManagerData
 CCityBuilderTown.TownMarketComponent.TownMarketData
 CCityBuilderTown.TownTaskDataClass used when persisting tasks
tasks that have state of their own can override TownTask.saveExtras and TownTask.loadExtras(string)
 CCityBuilderTown.TownWorkComponent.TownWorkData
 CCityBuilderUrban.TrainWalker.TrainWalkerData
 CCityBuilderCore.StateManager.TransitionEntry
 CUnityEvent
 CCityBuilderCore.VariantProductionComponent.Variant
 CCityBuilderCore.VariantProductionComponent.VariantProductionData
 CCityBuilderCore.ViewBuildingBar< Item >
 CCityBuilderCore.ViewBuildingBar< ItemCategory >
 CCityBuilderCore.ViewBuildingBar< ItemSet >
 CCityBuilderCore.ViewBuildingBar< Layer >
 CCityBuilderCore.ViewBuildingBar< Risk >
 CCityBuilderCore.ViewBuildingBar< Service >
 CCityBuilderCore.ViewBuildingBar< ServiceCategory >
 CCityBuilderCore.ViewWalkerBar< Item >
 CCityBuilderCore.ViewWalkerBar< ItemCategory >
 CCityBuilderCore.ViewWalkerBar< ItemSet >
 CCityBuilderCore.ViewWalkerBar< Risk >
 CCityBuilderCore.ViewWalkerBar< RiskCategory >
 CCityBuilderCore.ViewWalkerBar< Service >
 CCityBuilderCore.ViewWalkerBar< ServiceCategory >
 CVisualElement
 CCityBuilderCore.WaitingState.WaitingData
 CCityBuilderCore.WaitingStateHelper class for Walker that hold the current status when it is just waiting for a set time
 CCityBuilderCore.WalkerActionEncapsulated action a walker can perform, started as part of a ProcessState in Walker.StartProcess(WalkerAction[], string)
this enables easier higher level walker control, the walker no longer has to directly hold all the state of the different actions it can perform
instead it can just start a process that does multiple things in series(walk somewhere>pick up item>walk back>deposit item)
these are directly serialized, if they contain state that is not directly serializable use ISerializationCallbackReceiver
 CCityBuilderCore.Walker.WalkerAddonMetaData
 CCityBuilderCore.Walker.WalkerData
 CCityBuilderCore.WalkerSpawner< T >Base class for spawning and keeping track of walkers
 CCityBuilderCore.WalkerValueBarsHelper for DefaultBuildingManager that manages building bars
 CCityBuilderCore.WalkingAgentState.WalkingAgentData
 CCityBuilderCore.WalkingAgentStateHelper class for Walker that hold the current status when the walker is using a navmesh agent to reach a target
 CCityBuilderCore.WalkingState.WalkingData
 CCityBuilderCore.WalkingPathCollection of map points or world positions that can be followed by a walker
 CCityBuilderCore.WalkingPath.WalkingPathData
 CCityBuilderCore.WalkingStateHelper class for Walker that hold the current status when the walker is following a WalkingPath
 CCityBuilderCore.Wanderer.WandererData
 CCityBuilderCore.WanderingWalker.WanderingWalkerData
 CCityBuilderCore.WinCondition
 CCityBuilderCore.WorkerPathReference and path to a workers workplace
may include a path to an itemGiver to get supplies needed for the work
 CCityBuilderCore.WorkerPath.WorkerPathData
 CCityBuilderCore.WorkerPathQueryQuery that eventually produces a WorkerPath
enables distribution of calculations across frames
 CCityBuilderCore.WorkerWalker.WorkerWalkerData
 CCityBuilderTown.TownWalker.WorkerWalkerData