ClassicCityBuilderKit 1.8.8
|
building component that spawns walkers that collect items from IGenerationComponent
the collected items are either stored in global storage(set Storage to Global) or distributed using a DeliveryWalker
Classes | |
class | CollectionData |
Public Member Functions | |
override void | InitializeComponent () |
initialization is performed when the building is placed or loaded use to create references, register traits, ... | |
override void | OnReplacing (IBuilding replacement) |
called when a component gets replaced use to transfer resources, replace references | |
override void | TerminateComponent () |
termination is performed when the building is destroyed use to deregister traits, remove references from other systems | |
override string | GetDebugText () |
returns text that gets displayed for debugging in the scene editor | |
int | GetGiveQuantity (Item item) |
checks how much of an item is available to be given | |
void | ReserveQuantity (Item item, int quantity) |
reserves a quantity of items that may later be given dont reverse more than is available(GetGiveQuantity(Item)) | |
void | UnreserveQuantity (Item item, int quantity) |
releases a quantity that was reserved by ReserveQuantity(Item, int) before should be called before acutally moving items with Give(ItemStorage, Item, int) or if the process was interrupted | |
int | Give (ItemStorage storage, Item item, int quantity) |
requests that a quantity of items is put into the specified storage if the full amount is not available the remaining quantity is returned | |
override string | SaveData () |
serializes the objects state(usually to json) and returns it | |
override void | LoadData (string json) |
deserializes the serialized json data and loads the data as its new state | |
Public Member Functions inherited from CityBuilderCore.BuildingComponent | |
virtual void | SetupComponent () |
only called when the building is originally placed, before Initialize | |
virtual void | OnMoving () |
called when the building is about to be moved can be used to remove/deregister stuff from the old position | |
virtual void | OnMoved (Vector2Int oldPoint, BuildingRotation oldRotation) |
called after a building has been moved can be used to register things at the new position | |
virtual void | SuspendComponent () |
temporarily stops the component from working | |
virtual void | ResumeComponent () |
resumes work in the component after SuspendComponent has been called | |
virtual string | GetDescription () |
gets displayed in dialogs to show the component status to players | |
Public Attributes | |
ItemStorage | Storage |
CyclicCollectionWalkerSpawner | CollectionWalkers |
ManualDeliveryWalkerSpawner | DeliveryWalkers |
Properties | |
override string | Key [get] |
unique key used to identify the component in save/load | |
bool | HasDelivery [get] |
BuildingComponentReference< IItemGiver > | Reference [get, set] |
IItemContainer | ItemContainer [get] |
holds and manages the items for the owner | |
Properties inherited from CityBuilderCore.BuildingComponent | |
string | Key [get] |
unique key used to identify the component in save/load | |
IBuilding | Building [get, set] |
the building the component is attached to is set by the building in awake | |
Properties inherited from CityBuilderCore.IBuildingComponent | |
Properties inherited from CityBuilderCore.IBuildingTrait< IItemGiver > | |
BuildingComponentReference< T > | Reference [get, set] |
reference to the building trait, use when the building might be replaced and when the reference has to be saved | |
Properties inherited from CityBuilderCore.IItemOwner |
Additional Inherited Members | |
Protected Member Functions inherited from CityBuilderCore.BuildingComponent | |
T | getOther< T > () |
gets the first building component of the specified type on the same building | |
IEnumerable< T > | getOthers< T > () |
gets all building components of the specified type on the same building | |
BuildingComponentReference< T > | registerTrait< T > (T trait) |
registers the building component as a trait so it is globally accessible usually done in InitializeComponent | |
void | replaceTrait< T > (T trait, T replacement) |
replaces the reference a trait points to in the global manager done when a building is replaced(OnReplacing(IBuilding)) so the trait now points to the new component instead of the one that has been removed | |
void | deregisterTrait< T > (T trait) |
removes a previously registered trait usually when a building is removed which calls TerminateComponent | |
|
virtual |
returns text that gets displayed for debugging in the scene editor
Reimplemented from CityBuilderCore.BuildingComponent.
int CityBuilderCore.CollectionComponent.GetGiveQuantity | ( | Item | item | ) |
checks how much of an item is available to be given
item | the wanted item |
Implements CityBuilderCore.IItemGiver.
int CityBuilderCore.CollectionComponent.Give | ( | ItemStorage | storage, |
Item | item, | ||
int | quantity ) |
requests that a quantity of items is put into the specified storage
if the full amount is not available the remaining quantity is returned
storage | the storage the items will be added to |
item | the item to give |
quantity | the desired quantity |
Implements CityBuilderCore.IItemGiver.
|
inlinevirtual |
initialization is performed when the building is placed or loaded
use to create references, register traits, ...
Reimplemented from CityBuilderCore.BuildingComponent.
|
inlinevirtual |
deserializes the serialized json data and loads the data as its new state
json |
Reimplemented from CityBuilderCore.BuildingComponent.
|
inlinevirtual |
called when a component gets replaced
use to transfer resources, replace references
replacement |
Reimplemented from CityBuilderCore.BuildingComponent.
void CityBuilderCore.CollectionComponent.ReserveQuantity | ( | Item | item, |
int | quantity ) |
reserves a quantity of items that may later be given
dont reverse more than is available(GetGiveQuantity(Item))
item | wanted item |
quantity | quantity of the item |
Implements CityBuilderCore.IItemGiver.
|
inlinevirtual |
serializes the objects state(usually to json) and returns it
Reimplemented from CityBuilderCore.BuildingComponent.
|
inlinevirtual |
termination is performed when the building is destroyed
use to deregister traits, remove references from other systems
Reimplemented from CityBuilderCore.BuildingComponent.
void CityBuilderCore.CollectionComponent.UnreserveQuantity | ( | Item | item, |
int | quantity ) |
releases a quantity that was reserved by ReserveQuantity(Item, int) before
should be called before acutally moving items with Give(ItemStorage, Item, int) or if the process was interrupted
item | |
quantity |
Implements CityBuilderCore.IItemGiver.
|
get |
holds and manages the items for the owner
Implements CityBuilderCore.IItemOwner.
|
get |
unique key used to identify the component in save/load
Implements CityBuilderCore.IBuildingComponent.