double inconvenient = 0.0;
// the value at which this need starts to hurt
double critical = 0.0;
+ // factor of the intake that may stay in the body
+ double growth = 0.0;
virtual ~Need() noexcept;
void Tick(double dt) noexcept;
+ void Increase(double) noexcept;
+ void Decrease(double) noexcept;
bool IsSatisfied() const noexcept { return value < inconvenient; }
bool IsInconvenient() const noexcept { return value >= inconvenient && value < critical; }