Class GeneratorEntity
Inheritance
GeneratorEntity
Assembly: cs.temp.dll.dll
Syntax
public class GeneratorEntity : BaseCollectorEntity, IGeneratorEntity, IBaseCollectorEntity, IEntity, IInjectable, IModifiable, IModifier
Constructors
GeneratorEntity(String)
Declaration
public GeneratorEntity(string id)
Parameters
Type |
Name |
Description |
String |
id |
|
Fields
_generatorBalanceData
Declaration
protected IGeneratorBalanceData _generatorBalanceData
Field Value
_generatorData
Declaration
protected IGeneratorData _generatorData
Field Value
_generatorEntityData
Declaration
protected IGeneratorEntityData _generatorEntityData
Field Value
_generatorEntitySavedData
Declaration
protected IGeneratorEntitySavedData _generatorEntitySavedData
Field Value
_generatorUnitTargetSequence
Declaration
protected IGeneratorUnitTargetSequence _generatorUnitTargetSequence
Field Value
Properties
CanBeApplied
Declaration
public virtual bool CanBeApplied { get; }
Property Value
CostToAutomate
Declaration
public virtual double CostToAutomate { get; }
Property Value
GeneratorBalanceData
Declaration
public virtual IGeneratorBalanceData GeneratorBalanceData { get; }
Property Value
GeneratorData
Declaration
public virtual IGeneratorData GeneratorData { get; }
Property Value
GeneratorEntityData
Declaration
public virtual IGeneratorEntityData GeneratorEntityData { get; }
Property Value
GeneratorEntitySavedData
Declaration
public virtual IGeneratorEntitySavedData GeneratorEntitySavedData { get; }
Property Value
GeneratorUnitTargetSequence
Declaration
public virtual IGeneratorUnitTargetSequence GeneratorUnitTargetSequence { get; }
Property Value
ModifierDataCollection
Declaration
public virtual IModifierDataCollection ModifierDataCollection { get; }
Property Value
ModifierDataIndex
Declaration
public virtual int ModifierDataIndex { get; }
Property Value
ModifierId
Declaration
public virtual string ModifierId { get; }
Property Value
PayoutAmountPerMillisecond
Declaration
public virtual double PayoutAmountPerMillisecond { get; }
Property Value
Methods
Automate()
Declaration
public virtual void Automate()
Buy()
Declaration
public override void Buy()
Overrides
CanAutomate()
Declaration
public virtual bool CanAutomate()
Returns
CanIncrementGeneratorUnit(Int32)
Declaration
public virtual bool CanIncrementGeneratorUnit(int value)
Parameters
Type |
Name |
Description |
Int32 |
value |
|
Returns
Cleanup(IEntityLoaderService)
Declaration
public override void Cleanup(IEntityLoaderService entityLoaderService)
Parameters
Overrides
Collect(Int64)
Declaration
public override void Collect(long count = 1L)
Parameters
Type |
Name |
Description |
Int64 |
count |
|
Overrides
GeneratorUnitChanged(Int32, Int32)
Declaration
protected virtual void GeneratorUnitChanged(int finalUnitTargetIndex, int startingUnitTargetIndex)
Parameters
Type |
Name |
Description |
Int32 |
finalUnitTargetIndex |
|
Int32 |
startingUnitTargetIndex |
|
GetAffordableUnitsToNextTarget(Boolean, IModifier[])
Declaration
public virtual int GetAffordableUnitsToNextTarget(bool applyModifiers, IModifier[] excludedModifiers = null)
Parameters
Returns
GetIncrementGeneratorUnitCost(Int32, Boolean, IModifier[])
Declaration
public virtual double GetIncrementGeneratorUnitCost(int unitsToIncrease, bool applyModifiers, IModifier[] excludedModifiers = null)
Parameters
Returns
GetMaxAffordableUnits(Boolean, Int32, IModifier[])
Declaration
public virtual int GetMaxAffordableUnits(bool applyModifiers, int maxCap = -1, IModifier[] excludedModifiers = null)
Parameters
Returns
GetModifiedPayout(ref Double, IModifier[])
Declaration
protected override void GetModifiedPayout(ref double payout, IModifier[] excludedModifiers)
Parameters
Overrides
GetModifiedSpeed(ref Double, IModifier[])
Declaration
protected override void GetModifiedSpeed(ref double speed, IModifier[] excludedModifiers)
Parameters
Overrides
GetSingleGeneratorUnitCost(Double, Int32, Double)
The formula is updated on September 5th, 2018
"This formula is designed to keep the Unit Cost close to the Base Cost for the first few units to slow down
the perceived initial ramp up of costs and allow the player to buy multiple units after they first build a
generator. The (rampingCoefficient-1) keeps the formula close to the baseProgressionCost and (baseProgressionCost+…)
is relevant, but the (rampingCoefficient^(Units-1)) will increase exponentially as the player buys units and
(baseProgressionCost+…) will no longer be relevant."
-Jim
Declaration
protected virtual double GetSingleGeneratorUnitCost(double baseGeneratorUnitCost, int currentGeneratorUnit, double rampingCoefficient)
Parameters
Type |
Name |
Description |
Double |
baseGeneratorUnitCost |
|
Int32 |
currentGeneratorUnit |
|
Double |
rampingCoefficient |
|
Returns
Type |
Description |
Double |
The cost of the specified generator unit.
|
Exceptions
GetSingleGeneratorUnitCost(Int32, Boolean, IModifier[])
Declaration
protected virtual double GetSingleGeneratorUnitCost(int currentGeneratorUnit, bool applyModifiers, IModifier[] excludedModifiers = null)
Parameters
Returns
GetUnmodifiedPayout()
Declaration
protected override double GetUnmodifiedPayout()
Returns
Overrides
HandleGeneratorUnitIncremented(IncrementGeneratorUnitStateAction)
Declaration
protected virtual void HandleGeneratorUnitIncremented(IncrementGeneratorUnitStateAction incrementGeneratorUnitStateAction)
Parameters
IncrementGeneratorUnit(Int32)
Declaration
public virtual void IncrementGeneratorUnit(int value)
Parameters
Type |
Name |
Description |
Int32 |
value |
|
InitGeneratorState()
Declaration
protected override void InitGeneratorState()
Overrides
Initialize()
Declaration
public override void Initialize()
Overrides
Inject(IResolver)
Declaration
public override void Inject(IResolver resolver)
Parameters
Type |
Name |
Description |
IResolver |
resolver |
|
Overrides
IsAutomated()
Declaration
public virtual bool IsAutomated()
Returns
MeetsAutomationCosts()
Declaration
protected virtual bool MeetsAutomationCosts()
Returns
MeetsAutomationUnlockRequirements()
Declaration
public virtual bool MeetsAutomationUnlockRequirements()
Returns
ModifierAffectsPay(IModifier)
Declaration
protected override bool ModifierAffectsPay(IModifier modifier)
Parameters
Returns
Overrides
ModifierAffectsSpeed(IModifier)
Declaration
protected override bool ModifierAffectsSpeed(IModifier modifier)
Parameters
Returns
Overrides
SendPayoutChangedAction(Double)
Declaration
protected override void SendPayoutChangedAction(double previousPayout)
Parameters
Type |
Name |
Description |
Double |
previousPayout |
|
Overrides
SendSpeedChangedAction(Int64)
Declaration
protected override void SendSpeedChangedAction(long previousSpeed)
Parameters
Type |
Name |
Description |
Int64 |
previousSpeed |
|
Overrides
SendStateChangedAction(IGeneratorState)
Declaration
protected override void SendStateChangedAction(IGeneratorState previousState)
Parameters
Overrides
Implements
IInjectable