ClassicCityBuilderKit 1.8.8
|
component that influences the building efficiency base on its access to services
Classes | |
class | ServiceEfficiencyData |
Public Member Functions | |
bool | HasServiceValue (Service service) |
whether the recipient handles a particular serviec for example a bar visualization should not be created on a building that does not even have the service that is visualized | |
float | GetServiceValue (Service service) |
check how much service value is left in the recipient | |
void | ModifyService (Service service, float amount) |
changes a services value in the recipient services have to be increased regularly or access will be lost | |
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 | InitializeComponent () |
initialization is performed when the building is placed or loaded use to create references, register traits, ... | |
virtual void | OnReplacing (IBuilding replacement) |
called when a component gets replaced use to transfer resources, replace references | |
virtual void | TerminateComponent () |
termination is performed when the building is destroyed use to deregister traits, remove references from other systems | |
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 | GetDebugText () |
returns text that gets displayed for debugging in the scene editor | |
virtual string | GetDescription () |
gets displayed in dialogs to show the component status to players | |
Public Attributes | |
ServiceRecipient[] | Recipients |
Properties | |
override string | Key [get] |
unique key used to identify the component in save/load | |
bool | IsWorking [get] |
false disrupts the building | |
float | Factor [get] |
how efficiency is changed by this component(0-1), a buildings efficiency is calculated by multiplying all of its efficiency factors | |
ServiceRecipient[] | ServiceRecipients [get] |
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.IEfficiencyFactor |
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 | |
float CityBuilderCore.ServiceEfficiencyComponent.GetServiceValue | ( | Service | service | ) |
check how much service value is left in the recipient
service | the service for which we want the value |
Implements CityBuilderCore.IServiceRecipient.
bool CityBuilderCore.ServiceEfficiencyComponent.HasServiceValue | ( | Service | service | ) |
whether the recipient handles a particular serviec
for example a bar visualization should not be created on a building that does not even have the service that is visualized
service | the service to check |
Implements CityBuilderCore.IServiceRecipient.
|
inlinevirtual |
deserializes the serialized json data and loads the data as its new state
json |
Reimplemented from CityBuilderCore.BuildingComponent.
void CityBuilderCore.ServiceEfficiencyComponent.ModifyService | ( | Service | service, |
float | amount ) |
changes a services value in the recipient
services have to be increased regularly or access will be lost
service | the service that will have its value changed |
amount | positive to refill the service, negative to bring down closer to losing access |
Implements CityBuilderCore.IServiceRecipient.
|
inlinevirtual |
serializes the objects state(usually to json) and returns it
Reimplemented from CityBuilderCore.BuildingComponent.
|
get |
how efficiency is changed by this component(0-1), a buildings efficiency is calculated by multiplying all of its efficiency factors
Implements CityBuilderCore.IEfficiencyFactor.
|
get |
false disrupts the building
Implements CityBuilderCore.IEfficiencyFactor.
|
get |
unique key used to identify the component in save/load
Implements CityBuilderCore.IBuildingComponent.